[CSCI 335] Threads and Operating Systems
Overviews the basic techniques for threaded programs where multiple tasks share the computer resources as well as surveys the principles of modern operating systems. Topics covered include data races, deadlock, atomicity/mutual exclusion with implementation, communication between threads including shared memory and message passing, operating system design, hardware influences, concurrency mechanisms, threads and processes, process states and diagrams, scheduling, context states and interrupts, memory management, file systems, and examples from major contemporary operating systems. Actual threaded programming will be done.
Threads and Operating Systems
Prerequisite: Computer Science 204.
Offered in odd years, fall semester.