EECS 3540 - Operating Systems and Systems Programming Course Syllabus
Credits/Contact Hours
3 credit hours & three 50-minute lecture contact hours per week.
Textbook
Operating Systems Concepts, 10th ed., by Abraham Silberschatz, Peter Galvin, and Greg Gagne. John Wiley & Sons, 2018.
ISBN-13: 978-1119456339 / ISBN-10: 1119456339
Course Information
Examines the external and internal characteristics of computer operating systems and
related software. Details of at least one operating system and comparison with other
operating systems. An introduction to systems-level programming.
Prerequisites: EECS 2110 and EECS 2510
Required course for CSE
Specific Goals - Student Learning Objectives (SLOs)
The students will be able to
- Describe the basic components of an operating system and their role in
implementations for general purpose, real-time, and embedded
applications. - Describe how multitasking is implemented in single processor systems,
and how application programming differs between a multicore system
and uniprocessor one. - Discuss mutual exclusion principles and their use in concurrent
programming, including semaphore construction & resource allocation. - Comprehend the various memory management systems.
- Understand the concept of a file, and how to access, organize, and
protect files. - Discuss the features and strengths of various contemporary operating
systems. - Understand the measures used to enhance security in operating systems
Topics
- Introduction to Operatering-Systems
- Operating-System Structures
- Process Management
- Processes
- Threads & Concurrency
- CPU Scheduling
- Process Synchronization
- Synchronization Tools
- Synchronization Examples
- Deadlocks
- Part Four: Memory Management
- Main Memory
- Virtual Memory
- Storage Management
- Mass-Storage Structure
- I/O Systems
- File System
- File system Interface
- File-System Implementation
- File System Internals
- Part Seven: Security and Protection
- Security
- Protection