CSCI 460


Operating Systems

3 Cr. (Hrs.:3 Lec.)

I/O management, memory management, processor management, device management, and performance measurement/evaluation are examined. Other operating systems, theoretical and current, are discussed. Prerequisite: CSCI 255 and CSCI 332 (2nd)

Course generally offered spring (2nd) semester.

Expectations:

E1. The student should understand commonly used data structures such as queues, stacks, and trees. (CSCI 332)

E2. The student should have a high-level understanding of how a processor works. (CSCI 361)

E3. The student should be able to quickly learn to write programs in the C programming language. (CSCI 332)

Course Outcomes:

R1. Students understand how the operating system depends on and interacts with the hardware (privilege levels, interrupts, memory protection, etc) and that it acts as an extended machine and a resource manage. (CAC-h; EAC-i)

R2. Students understand the major trends in the history and development of operating systems. (CAC-h; EAC-i)

R3. Students know how operating systems create, schedule, and manage processes. (CAC-i; EAC-k)

R4. Students know how operating systems provide mechanisms for sharing resources between processes and inter process communication: race conditions, critical sections, mutual exclusion, semaphores, monitors, message passing. (CAC-i, CAC-j; EAC-k)

R5. Students know how operating systems manage input and output devices. (CAC-i, EAC-k)

R6. Students know how operating systems manage memory, with an emphasis on virtual memory and paging. (CAC-i; EAC-k)

R7. Students know how operating systems manage file systems. (CAC-i; EAC-k)

R8. Students have written computer programs that make use of the services offered by an operating system and made minor changes to an actual operating system. (CAC-a, c, i; EAC-a, k, SEC-1)

R9. Students have researched a current topic in operating systems, written a paper based on their research, and presented the paper to the rest of the class. (CAC-f, i; EAC-g, k)