Performance Analysis
High-level overview of measuring and tuning system performance: open and closed loop testing, queueing theory, Little’s Law, thread pools, sliding windows.
High-level overview of measuring and tuning system performance: open and closed loop testing, queueing theory, Little’s Law, thread pools, sliding windows.
Covers file system layers: device driver communication with disk controller, buffer cache management, block read/write operations, and logging for crash consistency.
Describes sleep/wakeup mechanism for process synchronization in xv6: channels, spinlocks, examples with pipes and wait/exit, missed wakeup prevention.
Explains spinlock implementation using xchg instruction, interrupt disabling, ptable.lock across context switching, and critical section protection.
Details process memory management in xv6: page table construction, fork memory copying, sbrk heap expansion, and exec system call memory setup.