Current Catalog Description
Process and thread programming models, management, and scheduling. Resource sharing and deadlocks. Memory management, including virtual memory and page replacement strategies. I/O issues in the operating system. File system implementation. Multiprocessing. Computer security as it impacts the operating system. Prerequisites: ECE 201 or (CSE 201 or CSE 202) and CSE 109.
Instructor: Ahmed Hassan (Fall 2022)
Textbook
Thomas Anderson & Michael Dahlin, "Operating Systems: Principles and Practice", 2nd Ed., Recursive Books, 2014, ISBN 978-0985673529
References
None
COURSE OUTCOMES
Students will have:
- An understanding of basic operating system concepts
- An appreciation computer resource management issues
- An understanding of how an operating system solves computer resource competition issues
- An understanding of processes as programs in execution and units of allocation
- An understanding of threads as units of execution
- An understanding of remote procedure calls
- An understanding of multiprocessing
Prerequisites by Topic
- Systems programming in C and/or C++
- Data types
- Data Structures
- Computer architecture
- Instruction sets
- Memory and virtual memory
- I/O subsystems
Major Topics Covered in the Course
- System calls
- Processes
- Threads
- Interprocess communication
- Process scheduling
- Deadlocks
- Memory management
- Paging and segmentation
- I/O software and device drivers
- File systems
- Multiprocessor operating systems
- Operating system security
Assessment Plan for the Course:
The students are given 10 homework assignments, including C shell programming, two tests of one hour and fifteen minutes each, and a three hour final examination. Each test has seven questions, and the final examination typically has 15-16 questions. The assignments are rigorously tracked, and mean scores are computed for each one.
How Data in the Course are Used to Assess Program Outcomes: (unless adequately covered already in the assessment discussion under Criterion 4)
I always include the above data from the assessment plan in my self-assessment of the course. This report is also reviewed by the Curriculum Committee of the CSE Department.