Skip to main content

CISC 3320 Operating Systems

Fall 2019

by Professor Hui Chen, CUNY Brooklyn College

Section MW3

Class Meeting: 03:40-04:55PM Monday and Wednesday
Classroom: 234 Ingersoll Hall Extension

Course Schedule

Topics: overview of class organization; overview of computer organization; overview of computer architecture; overview of operating system structures; overview of resources management; overview of computing environments

Lecture Notes
Assignment
Reading
  • Chapter 1
Resources

Note: College closed per the college calendar.

Topics: OS functions and services; user OS interface; system calls; type of system calls; system calls and library functions; using system calls

Lecture Notes
Assignment
Reading
  • Sections 2.1 - 2.3
Resources

Topics: System calls and APIs; system programs

Classes follow Monday schedule

Lecture Notes
Assignment
Reading
  • Sections 2.3 - 2.6
Resources

Topics: overview of OS design and implementation; OS structure; OS debugging; building and booting OS

Lecture Notes
Assignment
Reading
  • Sections 2.7 - 2.11
Resources

Topics: review of concept of interrupts and interrupt handling; Overview of I/O hardware; I/O schemes; teaming for CISC 3320.

Lecture Notes
Assignment
Reading
  • Sections 1.2, 1.3
Resources

Topics: I/O hardware, I/O subsystems, I/O performance

Lecture Notes
Assignment
Reading
  • Sections 12.1, 12.2, 12.3, 12.4, 12.5, 12.7 and 12.8
Resources

Topics: concept of process; concept of threads; concept of process scheduling; process states, transition of process states, process control block; process creation, process termination; multiprocess architecture

Lecture Notes
Assignment
Reading
  • Sections 3.1 - 3.3
Resources

Topics: concept of interprocess communication; motivational example application programs; concepts of shared memory and message passing;

Lecture Notes
Assignment
Reading
  • Sections 3.4 - 3.6
Resources

Topics: interprocess communication in POSIX and Windows (including shared memory and pipes); (time permits) client-server communications (socket and rpc);

Lecture Notes
Assignment
Reading
  • Sections 3.7 - 3.9, Sections 4.1 - 4.2
Resources

Note: No classes scheduled per the college calendar.

Topics: overview of threads; comparison of multiprocess and multithread architectures; introduction to multicore programming; multithreading models (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
Assignment
Reading
  • Sections 4.1 - 4.7
Resources

Topics: basic concepts regarding multiprogramming; scheduling criteria; scheduling algorithms

Lecture Notes
Assignment
Reading
Resources

Note: No classes scheduled per the college calendar.

Note: College closed per the college calendar.

Topics: thread scheduling; scheduling for multiprocessor systems; real-time scheduling; (time permits) operating system CPU scheduling examples; (time permits) algorithm evaluation

Classes follow Monday schedule

Lecture Notes
Assignment
Reading
  • Chapters 5
Resources

Topics: Review for Midterm

Resources
Review guide from the textbook
Review guide posted on Blackboard
Review test posted on Blackboard

Topics: Midterm Examination

Topics: Discuss memory management, direct addressing of physical memory, base and limit registers, concept of relocation, static and dynamic relocation, paging

Lecture Notes
Assignment
Reading
  • Sections 9.1 - 9.3
Resources

Topics: structure of page tables, swapping, and concept of segmentation, example paging schemes (Intel and ARM).

Lecture Notes
Assignment
Reading
  • Chapters 9
Resources

Topics: Virtual memory, paging, demand paging, copy-on-write;

Lecture Notes
Assignment
Reading
  • Chapters 10
Resources

Topics: page replacement algorithms; trashing, working-set model, (time permits) frame allocation, program structures, (time permits) OS examples and (time permits) others

Lecture Notes
Assignment
Reading
  • Chapters 10
Resources

Topics: Race condition; Critical Section; Peterson's algorithm

Lecture Notes
Assignment
Reading
  • Chapters 6
Resources

Topics: Synchronization on uniprocessor and multiprocessor systems; memory barriers, test-and-set, compare-and-swap; mutex, semaphore, monitor; busy-waiting and non-busy-waiting semaphores

Lecture Notes
Assignment
Reading
Resources

Topics: OS kernel synchronization (Windows and Linux); POSIX synchronization; Java Synchronization; Non-locking solution

Lecture Notes
Assignment
Reading
  • Chapters 7
Resources

Topics: Deadlocks

Lecture Notes
Assignment
Reading
  • Chapters 8
Resources

Topics: overview of mass storage; hard disk drives (HDDs); disk/disk arm scheduling algorithms; Non-volatile memory devices (NVM); NVM scheduling; characteristics of HDDs and NVMs; comparison of HDDs and NVMs; other mass storage devices (volatile memory and tapes)

Lecture Notes
Assignment
Reading
  • Sections 11.1, 11.2, and 11.3
Resources

Topics: Mass storage

Lecture Notes
Assignment
Reading
  • Chapters 11
Resources

Topics:

Lecture Notes
Assignment
Reading
  • Chapters 13 and 14
Resources

Topics: Review for the final exma.

Assignment
  • Individual: Review for the final
  • Team: Project 3: In-Place Computing Sum of Large Arrays on Multicore Systems. Due before the class, Wednesday, May 15.

Topics: A few key concepts about system security and protection.

Lecture Notes
Assignment
Reading
  • Chapters 16 and 17
Resources

Topics: A few key concepts about system security and protection.

Lecture Notes

Topics: Based on the College's Undergraduate Finals Exam schedule, Final Examination is to be held 3:30–5:30pm, Wednesday, December 18.