Operating Systems & Systems Programming Topics
Covers operating system fundamentals and systems programming topics, including process management, memory management, file system interfaces, inter-process communication, low-level kernel interactions, and system call interfaces (e.g., fork, exec, opendir, stat) across Unix/Linux and other OS environments.
State Machines & Protocol Implementation
Modeling behavior and communication with explicit state: finite state machines, event-driven transitions, and implementing wire or hardware protocols with framing, timeouts, and error handling. Covers structuring long-lived logic as a state machine to keep firmware and systems code correct and testable.
Systems Performance Analysis & Tuning
Finding and fixing performance problems at the OS and low level: profiling CPU, memory, I/O, and lock contention, reading utilization and saturation signals, and using tools like perf, strace, and tracepoints. Covers cache behavior, false sharing, syscall overhead, and the methodology of isolating a bottleneck before optimizing.