Trivia Questions
Networking
- What is the difference between TCP and UDP?
- What happens in between you pressing Enter in the address bar and the page loading?
- O in Linux?
- What is Kernel Bypass?
- What is a NIC?
- write
- What is the difference between a port and a socket?
- What is BGP? How does a packet get sent across the internet?
- What is EDNS Client Subnet
- What is a Mac Address?
- What is TCP Fast Open?
- How does HTTPS work?
- How does Diffie Hellman Encryption work?
- What is Network Bonding?
- What are some queueing disciplines? What are they used for?
Operating Systems
- What does a child process do when terminated?
- How does caching work on your computer?
- How does a shell work?
- How does
fork()
work? - How can you make memory allocation faster?
- How does virtual memory work?
- How do you design an LRU cache to use less memory?
- What is false sharing? What are its penalties?
- How can you make a system call faster?
- How would you design a lock-free data structure in a language without a garbage collector? With a garbage collector? How would you implement a linked list, an array, and a hashmap lock-free?
- What is branch prediction? What are some ways to speed up code that is inherently branchy?
- What is NUMA? What does it do?
- How does a named pipe work?
- What is the role of FPGA’s in High Performance Computing?
- What does LTO do? Why is it important to use?
- What does -ffast-math do? Why is it useful?
- What is SIMD?
- How does a compiler compile your code? What is the difference between static and dynamic linking? How do symbols get resolved in each?
- What is the difference between multicast and TCP? How would you send packets from one client to subscribers?
- How would you make a load balancer? How would you keep a server from being overloaded and fair?
- What is a named pipe? What is it used for?
- How does the Python GIL work?
- What is the difference between a process and a thread?
- What is the linux directory hierarchy?
- How does a computer boot?
- How would you debug X?
- How does scheduling work in linux?
- What are ACLs and what problem do they solve?
- How do Cgroups work in Linux?
- SATA vs SCSI vs PCIe
- How can you run multiple processes on one computer?
- You have 4GB physical, but you allocate an 8Gb buffer. Is this possible? If so, how? How is the memory actually read as we traverse the memory?
- What are some common threading models?
- What are some ways to do IPC?
- What is madvise?
- What is mmap?
- What is processor pinning?
- What is the TLB?
- What are some ways to lock memory?
- How fast is memory?
- What is the MOESI protocol?