CMPS 3600 Operating Systems (4)
A study of the introductory concepts in
operating systems: historical development of batch, multi-programmed, and
interactive systems; virtual memory, process, and thread
management; interrupt and trap handlers, abstraction layer, message
passing;
kernel tasks and kernel design issues; signals and
interprocess communication; synchronization, concurrency, and
deadlock problems.
Prerequisite: CMPS 2020.
Programming skill in a high level language and knowledge
of data structures and algorithms.
4 semester units. 3 units lecture, 1 unit lab.
Required for CS and CE.
Operating Systems: Internals and Design Principles 6/E
by William Stallings,
ISBN: 9-78-013230998-1
The ANSI C Programming Language by Kernighan and Ritchie
The Linux Programming Interface
by Michael Kerrisk (available on Safari/CSUB Library)
Donna Meyers
This course covers the following ACM/IEEE Body of Knowledge student learning
outcomes:
CS-OS: Operating Systems
CE-CSE: Computer Systems Engineering
The course maps to the following performance indicators for
Computer Science (CAC/ABET) and Computer Engineering (EAC/ABET):
- (CAC PIb1): Identify key components and algorithms necessary for a solution.
- Final project
- (CAC PIb2): Produce a solution within specifications.
- Final project
- (CAC PIc4): Implement the designed solution for a given problem.
- Final project
- (EAC PIc1): Follow systematic and logical design procedures and define
specifications to meet project requirements.
- Final project
- (CAC PId4, EAC PId4): Meet deadlines and achieve project goals.
- Final Project
- (CAC PIi3, ECE PIk2): Utilize problem solving skills and
techniques to complete the task
- Final Project
Week 1 |
computer system overview |
Week 2 |
historical development |
Week 3 |
process description & control |
Week 4 |
security issues |
Week 5 |
principles of threaded programs |
Week 6 |
SMP & microkernels |
Week 7 |
principles of concurrency |
Week 8 |
semaphores |
Week 9 |
principles of deadlock & starvation |
Week 10 |
linux kernel concurrency |
|
Week 11 |
memory management |
Week 12 |
virtual memory |
Week 13 |
uni-processor scheduling algorithms |
Week 14 |
real-time scheduling |
Week 15 |
I/O scheduling |
CAC Computing/EACEngineering Topics |
Advanced |
3 Credit Hours |
A 93%
A- 90%
B+ 87%
Lab & HW Assignments ...... 20% B 83%
B- 80%
In-Class Exam I ........... 25% C+ 75%
C 70%
In-Class Exam II ......... 25% C- 60%
D+ 55%
Final Project ............. 30% D 50%
D- 40%
F below 40%
Donna Meyers on January, 2014.
Approved by CEE/CS Department on January, 2014.
Effective Wtr 2014