Course Information | ||||
---|---|---|---|---|
Course Section | Lecture Hours | Location | ||
CMP 426 & CMP 697 - C401 | Tu & Th 2:00 pm – 3:40 pm | GI 333 |
Contact Information | ||||
---|---|---|---|---|
Instructor: | Steven Fulakeza | Email: | steven.fulakeza(at)lehman.cuny.edu | |
Phone: | NA | Office Location: | GI 232 | |
Office Hours: | Tu & Th 3:50 pm to 5:50 pm | |||
Instructor Availability: | I respond to students' emails regularly, but please note that I do not typically check email or Slack messages during late hours on weekdays. Additionally, I do not monitor these platforms on weekends, as I reserve and dedicate this time to family, rest, and religious observances. Any messages received during these times will be addressed when I am back online. |
CMP 426 Course Description: 4 hours, 4 credits
Operating systems and their role in various types of computer systems; the principles of multiprogramming; algorithms for resource allocation; multiple-computer systems. PREREQ: CMP 334 and CMP 338.
CMP 697 Course Description: 4 hours, 4 credits
A study of the functions and implementation of operating systems for various sizes and types of computers. Processor, storage, and device management. Paging algorithms, thrashing. File systems, concurrency, deadlocking, semaphores, and synchronization.
Course Objectives:
At the end of the course, students should be able to:
Textbook:
A. Silberschatz, P. Galvin, and G. Gagne, Operating System Concepts, 10 th Edition, Wiley, 2018.
Zybook code: CUNYCMP426-697FulakezaSpring2025
Textbook Web Site:
Grade Policy:
Your grades will be computed based on the following:
CMP 426:
Activity | Percentages |
---|---|
Participation Activities from the textBook and Quizzes | 10% |
Homework Assignments | 30% |
Midterm Exam | 30% |
Final Exam | 30% |
CMP 697:
Activity | Percentages |
---|---|
Participation Activities from the textBook and Quizzes | 10% |
Homework Assignments and Blackboard Quizzes | 30% |
Midterm Exam | 25% |
Final Exam | 25% |
Research Paper and Presentation (for graduate students only) | 10% |
Exam Schedule:
Midterm Exam 04/03/2025
Final Exam: 05/22/2024 2:00 pm to 4:00 pm.
There are no make-up or alternate exams. A Make-up exam might be given only when a student's absence is unavoidable. In such a case, the student must file a formal written request with substantial evidence. If you cannot take any of the exams during the schedule period because you have prior engagements, please take the course next semester when your schedule is open.
The last date to withdraw from a course with a W is April 1st by 11:59PM.
Grading Scale CMP 426:
Letter Grade | Ranges% |
---|---|
A | 93 - 100 |
A- | 90 - <93 |
B+ | 87 - <90 |
B | 83 - <87 |
B- | 80 - <83 |
C+ | 77 - <80 |
C | 73 - <77 |
C- | 70 - <73 |
D+ | 67 - <70 |
D | 63 - <67 |
D- | 60 - <63 |
F | <60 |
Grading Scale CMP 697:
Letter Grade | Ranges% |
---|---|
A | 93 - 100 |
A- | 90 - <93 |
B+ | 87 - <90 |
B | 83 - <87 |
B- | 80 - <83 |
C+ | 77 - <80 |
C | 73 - <77 |
C- | 70 - <73 |
F | <73 |
Homework Assignments and Submission
Several homework assignments are given during lectures. Students need to work on the homework for preparing exams but may not need to submit the homework assignments to the instructor. Some selected homework problems will be assigned as formal assignments to be submitted for grading.
Students must work in their own assignments unless I state otherwise. No late assignments will be accepted.
Homework assignments will include the following areas and more:
Graduate Students Research Paper:
For Graduate Students Only (CMP 697): Research Paper (12 - 15 pages double space in 12 fonts) in various contemporary research areas such as:
Some details about research paper writing and presentation will be discussed during office hours. Research Paper Proposal Due: May 9, 2025 by 11:59 pm via email (1 page of extended abstract with at least 5 academic research papers as references)
Research Paper Due Date: May 15, 2025, by 11:59 pm via email
Research Paper Presentation Date: May 15, 2025 at the beginning of class
Survey Research Paper Structure
Honor Code
Students are encouraged to study together. However, you must do your own work for all your homework assignments, projects and exams. You should never copy code or antwork from the internet or another student. You are responsible for knowing and following Lehman's academic integrity code (available from the Undergraduate Bulletin, Graduate Bulletin, or the Office of Academic Standards and Evaluations). All incidents of cheating will be reported to the Vice President of Student Affairs.
Expectations
Students are expected to learn both the material covered in class and the material in the textbook and other assigned reading. Completing homework is an essential part of the learning experience. Students should review topics from prior courses as needed using old notes and books.
Blackboard & Communication
I will be communicating with you on a regular basis throughout the semester using the email address listed on Blackboard for this course. You are required to make sure that the email address on Blackboard is your current Lehman email address and you must check it on a regular basis. There will be no acceptable excuse for missing an email announcement.
Accommodating Disabilities:
Lehman College is committed to providing access to all programs and curricula to all students. Students with disabilities who may need classroom accommodations are encouraged to register with the Office of Student Disability Services. For more info, please contact the Office of Student Disability Services, Shuster Hall, Room 238.
Phone number: 718-960-8441
Email: disability.services@lehman.cuny.edu
Webpage: http://www.lehman.edu/student-disability-services
Topics and Slides:
Overview
Process Management
Process Synchronization
Memory Management
Storage Management
Tentative Schedule:
Week | Day | Date | Topic | Reading Materials |
---|---|---|---|---|
1 | 1 | 01/28/2025 | Introduction, Syllabus, Chapter 1 | Syllabus & Chapter 1 |
1 | 2 | 01/30/2025 | Chapter 1 | Chapter 1 |
2 | 3 | 02/04/2025 | Chapter 2 - OS Structures: OS Services, User and OS Interface, Shell, Kernel, System calls | Chapter 2 |
2 | 4 | 02/06/2025 | Chapter 2 - OS Structures: System calls, System Services, Linkers and Loaders | Chapter 2 |
3 | 5 | 02/11/2025 | Chapter 2 - OS Structures: Operating-System Design and Implementation, Operating-System Structure | Chapter 2 |
3 | 6 | 02/13/2025 | Chapter 3 - Processes: Process concept, Process state, process control block, Process scheduling, Operations on Processes | Chapter 3 |
4 | X | 02/18/2025 | Classes follow a Monday schedule | |
4 | 7 | 02/20/2025 | Chapter 3 - Processes: Write a program to create and execute a process using the fork() system call | Chapter 3 |
5 | 8 | 02/25/2025 | Chapter 3 - Processes: Interprocess Communication, Asynchronous, Synchronous communication | Chapter 3 |
5 | 9 | 02/27/2025 | Chapter 3 - Processes: Sockets, Pipes | Chapter 3 |
6 | 10 | 03/04/2025 | Chapter 4 - Threads & Concurrency: Threads, relationship to processes, creation/termination | Chapter 4 |
6 | X | 03/06/2025 | Classes follow a Wednesday Schedule | |
7 | 11 | 03/11/2025 | Chapter 4 - Threads & Concurrency | Chapter 4 |
7 | 12 | 03/13/2025 | Chapter 5 - CPU Scheduling | Chapter 5 |
8 | 13 | 03/18/2025 | Chapter 5 - CPU Scheduling | Chapter 5 |
8 | 14 | 03/20/2025 | Chapter 5 - CPU Scheduling | Chapter 5 |
9 | 15 | 03/25/2025 | Chapter 6 - Synchronization Tools: Critical sections, Peterson's, Atomic hardware solutions | Chapter 6 |
9 | 16 | 03/27/2025 | Chapter 6 - Synchronization Tools: Mutexes, spinlocks, Semaphores | Chapter 6 |
10 | 17 | 04/01/2025 | Exam Review | Read & Review Chapters 1 through 6 |
10 | 18 | 04/03/2025 | Midterm exam | Read & Review Chapters 1 through 6 |
11 | X | 04/08/2025 | Spring recess | |
11 | X | 04/10/2025 | Spring recess | |
12 | X | 04/15/2025 | Spring recess | |
12 | 19 | 04/17/2025 | Chapter 7 - Synchronization Examples: Producer-Consumer, Readers-Writers, Dining Philosophers | Chapter 7 |
13 | 20 | 04/22/2025 | Chapter 8 - Deadlocks: Deadlocks, Deadlock detection, Algorithms | Chapter 8 |
13 | 21 | 04/24/2025 | Chapter 8 - Deadlocks: Algorithms, Recovery from Deadlock | Chapter 8 |
14 | 22 | 04/29/2025 | Chapter 9 - Memory Management - Contiguous memory allocation | Chapter 9 |
14 | 23 | 05/01/2025 | Chapter 9 - Memory Management - Relocation and Paging, Hierarchical Paging | Chapter 9 |
15 | 24 | 05/06/2025 | Chapter 9 - Memory Management - Swapping | Chapter 9 |
15 | 25 | 05/08/2025 | Chapter 10 - Virtual Memory - Demand Paging, COW | Chapter 10 |
16 | 26 | 05/13/2025 | Chapter 10 - Virtual Memory - Page Replacement, Thrashing, Working set | Chapter 10 |
16 | 27 | 05/15/2025 | Chapter 11 - Storage Management - HDD Scheduling and RAID Structure and Exam Review | Chapter 11 |
17 | 28 | 05/20/2025 | ||
17 | 29 | 05/22/2025 | Final Exams |
C Programming Resources
Getting Started with the Command Line
The following links are useful you to get you started with the command line
Operating System Examples