Section MW3
Class Meeting: 03:40-04:55PM Monday and Wednesday
Classroom: 4141 Ingersoll Hall
Course Schedule
Topics: overview of class organization; overview of computer organization; overview of computer architecture; overview of oeperating system structures; overview of resources management; overview of computing environments
Lecture Notes
Assignment
- Complete and submit individual assignments W01-1_01-28_Github and W01-1_01-28_Building_VM by next Monday's class. The descriptions of the assignments are on Blackboard.
Reading
- Chapter 1
Resources
Topics: OS functions and services; user OS interface; system calls; type of system calls; system calls and library functions; using system calls
Lecture Notes
Reading
- Sections 2.1 - 2.3
Resources
Topics: System calls and APIs; system programs
Lecture Notes
Assignment
- Complete and submit individual assignment W02-1_02-04_SysCalls by next Monday's class. The description of the assignment is on Blackboard.
Reading
- Sections 2.3 - 2.6
Resources
Topics: overview of OS design and implementation; OS structure; OS debugging; building and booting OS
Lecture Notes
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
- Team: Project 0: Collaboration via Git and Github Due at Github before the class, Wednesday, February 20
Reading
- Sections 1.2, 1.3
Resources
Topics: I/O hardware, I/O subsystems, I/O performance
Assignment
- Team: Project 1: Design and Implement a Simple UNIX Shell Due at Github before the class, Monday, February 25.
Reading
- Sections 12.1, 12.2, 12.3, 12.4, 12.5, 12.7 and 12.8
Resources
According to the College Calendar for Spring 2019, no classes are scheduled.
Topics: concept of process; concept of threads; concept of process scheduling; process states, transition of process states, process control block; process creation, process termination; multirprocess architecture
Lecture Notes
Assignment
- Complete and submit individual assignments W03-2_02-20_Kmod by 3:39pm, Wednesday, March 6. The description of the assignment is on Blackboard.
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
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
Reading
- Sections 3.7 - 3.9, Sections 4.1 - 4.2
Resources
Topics: overview of threads; comparison of multiprocess and multithread architectures; introduction to multicore programming; multithreading models; thread libraries; (time permits) operating system thread libraries examples (time permits) implicit threading; (time permits) implicit threading operating systems examples; (time permits) threading issues;
Announcement and Assignment
Lecture Notes
Reading
- Sections 4.4 - 4.8
Resources
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
- Sections 5.1 - 5.3
Resources
Topics: thread scheduling; scheduling for multiprocessor systems; real-time scheduling; (time permits) operating system CPU scheduling examples; (time permits) algorithm evaluation
Lecture Notes
Assignment
Reading
- Chapters 5
Resources
Topics: Review for Midterm
Resources
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
Reading
- Chapters 9
Topics: Virtual memory, paging, demand paging, copy-on-write;
Lecture Notes
Assignment
- Individual: On-line Quiz (Quiz 8; Released on Blackboard; Due before the class on Monday, April 8)
Reading
- Chapters 10
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
- Individual: On-line Quiz (Quiz 8; Released on Blackboard; Due before the class on Monday, April 8)
Reading
- Chapters 10
Resources
Topics: Race condition; Critical Section; Peterson's algorithm
Lecture Notes
Assignment
- Individual: On-line Quiz (Quiz 9; Released on Blackboard; Due before the class on Monday, April 15)
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
- Individual: On-line Quiz (Quiz 9; Released on Blackboard; Due before the class on Monday, April 15)
Reading
- Chapters 7
Resources
Topics: OS kernel synchronization (Windows and Linux); POSIX synchronization; Java Synchronization; Non-locking solution
Lecture Notes
Assignment
- Review example programs and programming questions in Chapter 7
Reading
- Chapters 7
Resources
Topics:
Lecture Notes
Assignment
- Individual: On-line Quiz (Quiz 10; Released on Blackboard; Due before the class on Wednesday, May 2)
- Individual: In-Class Exercises and Additional Practice Questions (See Blackboard)
Reading
- Chapters 8
Topics: April 19-28 Friday-Sunday Spring Recess
Topics : April 19-28 Friday-Sunday Spring Recess
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
- Individual: In-Class Exercises and Additional Practice Questions (See Blackboard)
Reading
- Sections 11.1, 11.2, and 11.3
Topics:
Lecture Notes
Assignment
- Individual: In-Class Exercises and Discussion (See Blackboard)
Reading
- Chapters 11
Topics:
Lecture Notes
Assignment
- Individual: In-Class Exercises and Discussion (See Blackboard)
Reading
- Chapters 13 and 14
Resources
Topics: A few key concepts about system security and protection.
Lecture Notes
Assignment
- Individual: In-Class Exercises and Discussion (See Blackboard)
Reading
- Chapters 16 and 17
Resources
Topics: Review for the final exma.
Assignment
- Individual: Review for the final
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, May 22.