Journal Entry Week 8- CST334
CST334 sharpened how I think about systems by forcing me to ground every idea in code and measurement. Processes became tangible once I wrote small C programs that used fork, exec, and wait, then traced their behavior with ps and strace. Scheduling turned into a study of measurable tradeoffs rather than a list of names. I compared turnaround and response time, saw how a time slice changes interactivity in Round Robin, and learned that SJF or STCF only help when service times are predictable. Concurrency was the section that demanded the most discipline. I practiced stating invariants, identifying the true critical section, and then using mutexes, condition variables, and semaphores to preserve safety and progress. Drawing simple timelines exposed data races and order bugs that were easy to miss when reading code top to bottom. The storage and I O unit added concrete cost models. I separated seek, rotation, and transfer time, and understood why algorithms like SSTF or SCAN can help...