|
Sep 07, 2024
|
|
|
|
MS 300 - Principles of Operating Systems3 lecture hours 0 lab hours 3 credits Course Description This is an introductory course that covers the principles of operating systems from the user’s point of view. The four major components (scheduling, memory management, I/O management and file systems) are examined in detail along with how various hardware components of a computer system work together. (prereq: One course in computer programming) Course Learning Outcomes Upon successful completion of this course, the student will be able to: • understand operating system history and motivation
• understand hardware components controlled by an operating system
• understand software elements that comprise an operating system
• understand multiprocessing and synchronization problems and their solutions
• understand the classic problems and solutions common to all operating systems
• understand the solutions to the producer/consumer, readers/writers, and dining philosophers problems
• Conduct research and report on one area of interest in operating systems Prerequisites by Topic • Knowledge, understanding and familiarity with computer programming languages
• Knowledge of an object-oriented programming language Course Topics • Introduction to operating systems and history (3 classes)
• Introduction to computer architecture and software components (3 classes)
• The “process model” for workflow in an operating system (3 classes)
• Threads and process management (1 class)
• Process sychronization and semaphores (3 classes)
• Monitors and contition variables (2 classes)
• Producer/consumer problem (2 classes)
• Readers/writers problem (1 class)
• Dining philosophers problem (1 class)
• Memory management (paging systems) (2 classes)
• File systems management (2 classes)
• Stuent term paper presentations (6 classes)
• Tests, examinations and reviews (2 classes) Coordinator Jeffrey Blessing
Add to Portfolio (opens a new window)
|
|