Course ID: | CSCI 4730/6730. 4 hours. |
Course Title: | Operating Systems |
Course Description: | Coverage of the key concepts in modern operating systems. Specific topics include process management, synchronization mechanisms, scheduling strategies, deadlock detection/avoidance, memory management, file systems, protection and security, and distributed systems. Concepts will be reinforced through programming projects using a realistic operating system. |
Oasis Title: | Operating Systems |
Prerequisite: | (CSCI 4720 or CSCI 4720E or CSEE 4280) and CSCI 2720 |
Semester Course Offered: | Offered fall semester every year. |
Grading System: | A-F (Traditional) |
|
Course Objectives: | At the completion of this course, students should be able to do the following:
1. Describe and explain the processes, threads, and concepts of inter-process communication and synchronization.
2. Describe the context switch and components of process scheduling: process control blocks, the interrupts, the ready
queue, and CPU scheduling algorithms.
3. Design, implement and analyze concurrent programs using semaphores or monitors, with the awareness of race
conditions, deadlock, and starvation.
4. Describe and apply memory management concepts: virtual and physical address spaces, paging, segmentation, page
sharing and protection, page replacement algorithms, and translation lookaside buffer.
5. Define, restate, discuss, and explain mass storage, disk scheduling, and file systems. |
Topical Outline: | Operating System Structure (5 hours)
Processes (6 hours)
Threads (4 hours)
Scheduling (5 hours)
Synchronization (6 hours)
Deadlock (4 hours)
Memory (6 hours)
File System (6 hours)
Advanced Concepts, such as Protection and Security, Concurrency, I/O Subsystem, Mass Storage, Time Management in Distributed Systems (6 hours) |