Schedule
Spring 2020 (01/27/2020 - 05/18/2020)
The semester has 27 class meetings including midterm and final exams. Clicking on a class day below, you should find the class module for the day including lecture notes, assignments, and others. The instructor releases the content for a class generally on the Monday before the class. However, the instructor often makes update to the module content after the initial release. You should check this page often for up-to-date content.
In case you encounter a problem when viewing class content, such as, a broken link, please report it to the instructor immediately.
Topics: overview of class organization; overview of operating systems including computer organization, computer architecture, operating system structures, resources management, and computing environments
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: review of concept of interrupts and interrupt handling; Overview of I/O hardware; I/O schemes;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: review of concept of interrupts and interrupt handling; Overview of I/O hardware; I/O schemes;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: review of concept of interrupts and interrupt handling; Overview of I/O hardware; I/O schemes;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: OS functions and services; user OS interface; system calls; type of system calls; system calls and library functions; using system calls; system calls and APIs; system programs; overview of OS design and implementation; OS structure; OS debugging; building and booting OS
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Notice: College closed and no class per the College's calendar for Spring 2020
Notice: College closed and no class per the College's calendar for Spring 2020
Topics: OS functions and services; user OS interface; system calls; type of system calls; system calls and library functions; using system calls; system calls and APIs; system programs; overview of OS design and implementation; OS structure; OS debugging; building and booting OS
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: OS functions and services; user OS interface; system calls; type of system calls; system calls and library functions; using system calls; system calls and APIs; system programs; overview of OS design and implementation; OS structure; OS debugging; building and booting OS
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: concepts of process and thread; process/thread scheduling; process/thread states; transition of process/threat states; process control block; process creation; process termination; multirprocess architecture;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: concepts of process and thread; process/thread scheduling; process/thread states; transition of process/threat states; process control block; process creation; process termination; multirprocess architecture;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: concepts of process and thread; process/thread scheduling; process/thread states; transition of process/threat states; process control block; process creation; process termination; multirprocess architecture;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: inter-process communcations; multithread architecture; comparison of multiprocess and multithread architectures; (time permits) thread libraries; (time permits) operating system thread libraries examples; (time permits) implicit threading; (time permits) implicit threading operating systems examples; (time permits) threading issues;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: midterm exam review; inter-process communcations; multithread architecture; comparison of multiprocess and multithread architectures; (time permits) thread libraries; (time permits) operating system thread libraries examples; (time permits) implicit threading; (time permits) implicit threading operating systems examples; (time permits) threading issues;
Lecture Notes
Reading
Online Discussion via Disqus (Experimental)
Notice: No class scheduled per the College's response to COVID-19
Notice: No class scheduled per the College's response to COVID-19
Topics: inter-process communcations; multithread architecture; comparison of multiprocess and multithread architectures; (time permits) thread libraries; (time permits) operating system thread libraries examples; (time permits) implicit threading; (time permits) implicit threading operating systems examples; (time permits) threading issues;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: Miterm Exam is held 3:40 - 4:55 PM via both WebEx and CUNY Blackboard. The exam covers the conent in chapters 1, 2, 3, and sections 12.1 and 12.2 in the textbook.
Online Discussion via Disqus (Experimental)
Notice: CUNY has instituted a Recalibration Period for Educational Equity, beginning this Friday, March 27, through Wednesday April 1. Distance learning will resume on Thursday, April 2. This period will allow our colleges to fine-tune distance learning practices and ensure that all students have access to the equipment they need to complete their academic requirements this spring.
Notice: CUNY has instituted a Recalibration Period for Educational Equity, beginning this Friday, March 27, through Wednesday April 1. Distance learning will resume on Thursday, April 2. This period will allow our colleges to fine-tune distance learning practices and ensure that all students have access to the equipment they need to complete their academic requirements this spring.
Topics: basic concepts regarding multiprogramming; scheduling criteria; scheduling algorithms; thread scheduling; scheduling for multiprocessor systems; real-time scheduling; (time permits) operating system CPU scheduling examples; (time permits) algorithm evaluation
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: basic concepts regarding multiprogramming; scheduling criteria; scheduling algorithms; thread scheduling; scheduling for multiprocessor systems; real-time scheduling; (time permits) operating system CPU scheduling examples; (time permits) algorithm evaluation
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Notice: College open but no class scheduled per the College's calendar for Spring 2020
Topics: Race condition; critical section problem; (time permits) Peterson's solution, limitation of Peterson's solution; (time permits) hardware support for synchronization, test_and_set, compare_and_swap, acquiring and releasing locks via hardware instructions; (time permits) meeting critical section requirements (mutual exclusion, progress, and bounded waiting); Mutex locks, semaphore, monitor, and OS examples; Concept of deadlock; necessary conditions; resource allocation graph; Banker's algorithm; the Ostrich algorithm; (time permits) deadlock avoidance; (time permits) deadlock detection; (time permits) deadlock prevention; (time permits) recovery from deadlock;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: Race condition; critical section problem; (time permits) Peterson's solution, limitation of Peterson's solution; (time permits) hardware support for synchronization, test_and_set, compare_and_swap, acquiring and releasing locks via hardware instructions; (time permits) meeting critical section requirements (mutual exclusion, progress, and bounded waiting); Mutex locks, semaphore, monitor, and OS examples; Concept of deadlock; necessary conditions; resource allocation graph; Banker's algorithm; the Ostrich algorithm; (time permits) deadlock avoidance; (time permits) deadlock detection; (time permits) deadlock prevention; (time permits) recovery from deadlock;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: Race condition; critical section problem; (time permits) Peterson's solution, limitation of Peterson's solution; (time permits) hardware support for synchronization, test_and_set, compare_and_swap, acquiring and releasing locks via hardware instructions; (time permits) meeting critical section requirements (mutual exclusion, progress, and bounded waiting); Mutex locks, semaphore, monitor, and OS examples; Concept of deadlock; necessary conditions; resource allocation graph; Banker's algorithm; the Ostrich algorithm; (time permits) deadlock avoidance; (time permits) deadlock detection; (time permits) deadlock prevention; (time permits) recovery from deadlock;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: Race condition; critical section problem; (time permits) Peterson's solution, limitation of Peterson's solution; (time permits) hardware support for synchronization, test_and_set, compare_and_swap, acquiring and releasing locks via hardware instructions; (time permits) meeting critical section requirements (mutual exclusion, progress, and bounded waiting); Mutex locks, semaphore, monitor, and OS examples; Concept of deadlock; necessary conditions; resource allocation graph; Banker's algorithm; the Ostrich algorithm; (time permits) deadlock avoidance; (time permits) deadlock detection; (time permits) deadlock prevention; (time permits) recovery from deadlock;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: Race condition; critical section problem; (time permits) Peterson's solution, limitation of Peterson's solution; (time permits) hardware support for synchronization, test_and_set, compare_and_swap, acquiring and releasing locks via hardware instructions; (time permits) meeting critical section requirements (mutual exclusion, progress, and bounded waiting); Mutex locks, semaphore, monitor, and OS examples; Concept of deadlock; necessary conditions; resource allocation graph; Banker's algorithm; the Ostrich algorithm; (time permits) deadlock avoidance; (time permits) deadlock detection; (time permits) deadlock prevention; (time permits) recovery from deadlock;
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: Address binding; memory allocation; logical address; physical address; rellocation and limit registers; continuous allocation; paging; TLB; analysis of TLB; structure of page tables (hierarchical, hashed, and inverted), memory segmentation
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: Address binding; memory allocation; logical address; physical address; rellocation and limit registers; continuous allocation; paging; TLB; analysis of TLB; structure of page tables (hierarchical, hashed, and inverted), memory segmentation
Lecture Notes
Assignments
Reading
Online Discussion via Disqus (Experimental)
Topics: Concept of swapping; concept of virtual memory; demand paging; copy-on-write; frame allocation; page replacement; thrashing; working-set model;
Lecture Notes
Reading
Online Discussion via Disqus (Experimental)
Topics: Concept of swapping; concept of virtual memory; demand paging; copy-on-write; frame allocation; page replacement; thrashing; working-set model;
Lecture Notes
Reading
Online Discussion via Disqus (Experimental)
Topics: Concept of swapping; concept of virtual memory; demand paging; copy-on-write; frame allocation; page replacement; thrashing; working-set model;
Lecture Notes
Reading
Online Discussion via Disqus (Experimental)
Notice: Reading Day per the College's calendar for Spring 2020