Previous course materials:


Fall 2023 graduate core COSC 6360 Operating Systems will cover Distributed systems, Fault tolerance, Byzantine agreement algorithms, Virtualization, Xen, XtratuM, Wind River Helix, Embedded systems and scheduling, Real-time virtual resources, and Regularity-Based Resource Partitioning (RRP).
Lecture slides and course materials at Canvas and MS Teams.

COSC 4331/6384 Real-Time Systems and Embedded Programming (Spring 2023): introducing the technology used on the NASA/JPL Mars Rover Curiosity and Perseverance currently exploring Mars and many embedded systems ranging from oil & gas to medical applications.
Lecture slides and course materials at Blackboard and MS Teams.
Textbook webpage
Office hours: by appointment (please send email to Prof. Cheng), M W 4:00p-5:00p
Teaching Assistant: Mr. Thomas Carroll (office hours on T, Th 1:00pm-2:00pm and by appointment via MS Teams)
Selected basic references
Reading assignments: read chapters 1, 3, review 2 if needed.
Tornado tutorial
Workbench/Tornado video
How to Write a Proof by Leslie Lamport.
Introduction to mathematical arguments by Michael Hutchings
IEEE Real-Time Systems Symposium (RTSS) 2012
IEEE Real-Time Systems Symposium (RTSS) 2018
IEEE Real-Time Systems Symposium (RTSS) 2019
IEEE Real-Time Systems Symposium (RTSS) 2020
IEEE Real-Time Systems Symposium (RTSS) 2022
International Workshop on Worst-Case Execution Time Analysis (WCET) 2022
Supplement 1 to Chapter 4: Model checking overview.
Suggested project topics
Presentation slides for RTSS 2012 Li and Cheng's paper.


Fall 2022 graduate core COSC 6360 Operating Systems will cover for the first time Distributed systems, Fault tolerance, Byzantine agreement algorithms, Virtualization, Xen, XtratuM, Wind River Helix, Embedded systems and scheduling, Real-time virtual resources, and Regularity-Based Resource Partitioning (RRP).

COSC 4331/6384 Real-Time Systems and Embedded Programming (Spring 2022) introducing the technology used on the NASA/JPL Mars Rover Curiosity and Perseverance currently exploring Mars and many embedded systems ranging from oil & gas to medical applications.
Textbook webpage
Office hours: by appointment (please send email to Prof. Cheng), M W 3:00p-4:00p
Teaching Assistant: Mr. Guangli Dai (office hours on T, Th 10:00am-11:00am and by appointment via MS Teams)
Selected basic references
Reading assignments: read chapters 1, 3, review 2 if needed.
Tornado tutorial
Workbench/Tornado video
How to Write a Proof by Leslie Lamport.
Introduction to mathematical arguments by Michael Hutchings
IEEE Real-Time Systems Symposium (RTSS) 2012
IEEE Real-Time Systems Symposium (RTSS) 2018
IEEE Real-Time Systems Symposium (RTSS) 2019
International Workshop on Worst-Case Execution Time Analysis (WCET) 2022
Supplement 1 to Chapter 4: Model checking overview.
Suggested project topics
Presentation slides for RTSS 2012 Li and Cheng's paper.
Lecture slides and more course materials at Blackboard and MS Teams.
Assignment 1 posted on 2/11/2022 at MS Teams - Class Materials due Monday, 2/28/2022.
Assignment 2 posted on 3/2/2022 at MS Teams - Class Materials due Monday, 3/28/2022, 11:59pm. Late penalty: -5 points (maximum number of points: 100 points) per day after the submission deadline. Extended till Friday, April 1, 2022, 11:59pm. Bonus +20% if submitted by the original due date, March 28, 2022, 11:59pm. Bonus if submitted by March 29: 15%, March 30: 10%, March 31: 5%, April 1: 0%, April 2 and after: -5 points per day.
Assignment 3 posted on 4/6/2022 at MS Teams - Class Materials due Thursday, 4/28/2022.


COSC 3360/6310 Operating Systems (Spring 2022)
Office hours: by appointment (please send email to Prof. Cheng), M W 3:00p-4:00p
Teaching assistant 1: Mr. Pavan Kumar Paluri; Office: at MS Teams; Office hours: M, W 11:00a-12:00p and by appointment.
Teaching assistant 2: Mr. Thomas Carroll; Office: at MS Teams; Office hours: Th, F 11:00a-12:00p and by appointment.
Teaching assistant 3: Mr. Raafat Feki; Office: at MS Teams; Office hours: T, Th 1:00p-2:00p and by appointment.
Unix Tutorial for Beginners
Unix/Linux Books
C/C++ Books
Note: Assignments must be done individually by each student (no-code level collaboration or any form of cheating).
Course coverage: OS notes: chapters 1 (Introduction to Operating Systems), 2 (Processes), 3 (Process Scheduling), 4 (Real-Time Scheduling and Schedulability Analysis), 5 (Process Deadlocks), 6 (Memory Management), 7 (Virtual Memory Management). 8 (Disk Scheduling), 9 (File and Directory Management). Textbook: chapters 1 (Introduction) and 2 (Operating-System Structures); chapters 3 (Processes), 4 (Threads and Concurrency). 5 (CPU Scheduling), 6 (Synchronization Tools), 7 (Synchronization Examples), 8 (Deadlocks), 9 (Main Memory), 10 (Virtual Memory). 11 (Mass-Storage Structure), 13 (File-System Interface), 14 (File-System Implementation), 17 (Protection), 19 (Networks and Distributed Systems).
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Lecture slides and more course materials at Blackboard and MS Teams.
Assignment 1 posted on 2/11/2022 at MS Teams - Class Materials due Friday, 3/4/2022, 11:59pm. Late penalty: -5 points (maximum number of points: 100 points) per day after the submission deadline. Note that you have 3 grace days to use (wisely) for the entire semester. Extended due date: Monday, 3/7/2022, 11:59pm. Bonus if submitted by March 4: +15%, March 5: +10%, March 6: +5%, March 7: none, March 8 and after: -5 points (out of 100) per day.
Exam 1: Wednesday, 3/9/2022 (closed notes/book) - OS Notes chapters 1-5; material covered in Chapter 4 of OS Notes: see the lecture slides in OS lecture 8 and study the corresponding material in the OS Notes (Chapter 4 up to and including Schedulability Test 2 on page 43, then page 48 Dynamic Priority Schedulers to and including Schedulability Test 2 on page 51, finally page 52 (Comparing Fixed and Dynamic-Priority Schedulers to the end of page 56). Book chapters 3, 5, 6, 7, 8 - Process management, deadlock handling, scheduling. Exam review in class (3/7/2022) before the exam.
Assignment 2 posted on 3/7/2022 at MS Teams - Class Materials due Friday, 4/1/2022, 11:59pm. Late penalty: -5 points (maximum number of points: 100 points) per day after the submission deadline. Extended due date: Monday, 4/4/2022, 11:59pm. Bonus if submitted by April 1: +15%, April 2: +10%, April 3: +5%, April 4: none, April 5 and after: -5 points (out of 100) per day.
Exam 2: Wednesday 4/13/2022 (closed notes/book) - OS Notes chapters 6, 7, 8; Book chapters 9, 10, 11 - Memory management (including virtual memory), NO disk scheduling. Exam review in class on Monday 4/11/2022.
Assignment 3 posted on 4/6/2022 at MS Teams - Class Materials, due Thursday, 4/28/2022. Extended due date: Tuesday, 5/3/2022, 11:59pm. Bonus if submitted by April 28: +15%, April 29: +12%, April 30: +9%, May 1: +6%, May 2: +3%, May 3: no bonus.
Exam 3: Monday 5/2/2022 (closed notes/book; calculator ok) - Emphasis on untested materials including disk scheduling, file management, protection/security, and distributed systems. About 50% on untested materials including disk scheduling, file management, protection/security, and distributed systems. About 50% on process and memory management. OS Notes chapters 1-9; Book chapters 1-11 plus selected topics discussed in class from book chapters 13, 14, 17, 19. Lecture slides sets 1-11; set 12: basic disk concepts (p3-p7, p15), access times (p8-p9), disk scheduling (p17-p29); set 13: file concepts and operations (p1-p6, p8-p13), types of directory structures (p23-p34), Unix access lists/protection bits (p41-p45); set 14: basic protection and security concepts (p1-p9), domains (p10-p13), access matrix (p14-p20); set 15: event ordering (p1-p5), happened-before relation (p6-p12), fault tolerance (p16-p20). Exam review on Monday, 4/27/2022. COSC 4331/6384 Real-Time Systems (Spring 2021) introducing the technology used on the NASA/JPL Mars Rover Curiosity and Perseverance currently exploring Mars and many embedded systems ranging from oil & gas to medical applications.
Textbook webpage
Office hours: by appointment (please send emailto Prof. Cheng), M W 4:00p-5:00p
Selected basic references
Reading assignments: read chapters 1, 3, review 2 if needed.
Tornado tutorial
Workbench/Tornado video
Elements of Research
How to Write a Proof by Leslie Lamport.
Introduction to mathematical arguments by Michael Hutchings
IEEE Real-Time Systems Symposium (RTSS) 2012
IEEE Real-Time Systems Symposium (RTSS) 2018
IEEE Real-Time Systems Symposium (RTSS) 2019
International Workshop on Worst-Case Execution Time Analysis (WCET) 2018
Supplement to Chapter 3: Prof. Al Mok's PhD Thesis.
Supplement 1 to Chapter 4: Model checking overview.
Supplement 2 to Chapter 4: Model checking examples.
Suggested project topics
Presentation slides for RTSS 2012 Li and Cheng's paper.
Assignment 1 (posted at Blackboard and MS Teams) due Monday, March 8, 2021, 11:59pm (extended from March 1, 2021).
Exam: Monday, March 31, 2021. Open-course-textbook/lecture/notes, no sharing of any material, calculator is allowed but not sharable, review to be held in class (March 29) before the exam date. Expected material (to be confirmed later): scheduling (chapters 1,3) specification/verification (chapter 4: constructing finite-state graphs, writing CTL formulas, applying model checking. chapter 5: constructing simple state charts; chapter 6: writing RTL formulas, verification with constraint graphs).
Assignment 2: Programming (posted at Blackboard) due Friday, April 9, 2021, 11:59pm. Extended till Friday, April 16, 2021, 11:59pm. Bonus +20 points if submitted by the original due date, April 5, 2021, 11:59pm.
Assignment 3 (posted at Blackboard and MS Teams) due Friday, April 30, 2021, 11:59pm.


COSC 3360/6310 Operating Systems (Fall 2020)
Course/TA website (TBA)
Teaching assistant 1: Mr. Guangli Dai; Office: at MS Teams; Office hours: T and Th 4:30p-5:30p and by appointment
Teaching assistant 2: Mr. Pavan Kumar Paluri; Office: at MS Teams; Office hours: M and W 11:00a-12:00noon and by appointment
Unix Tutorial for Beginners
Unix/Linux Books
C/C++ Books
Note: Assignments must be done individually by each student (no-code level collaboration).
Reading assignments: OS notes: read chapters 1 (Introduction to Operating Systems), 2 (Processes), 3 (Process Scheduling), 4 (Real-Time Scheduling and Schedulability Analysis), 5 (Process Deadlocks), 6 (Memory Management), 7 (Virtual Memory Management). 8 (Disk Scheduling), 9 (File and Directory Management). Textbook: review chapters 1 (Introduction) and 2 (Operating-System Structures); read chapters 3 (Processes), 4 (Threads and Concurrency). 5 (CPU Scheduling), 6 (Synchronization Tools), 7 (Synchronization Examples), 8 (Deadlocks), 9 (Main Memory), 10 (Virtual Memory). 11 (Mass-Storage Structure), 13 (File-System Interface), 14 (File-System Implementation), 17 (Protection), 19 (Networks and Distributed Systems).
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Slides: Real-Time Scheduling and Schedulability Analysis
Note from the campus bootstore: If any student places an online order for the print notes or book, she/he can choose to have it shipped to her/his home or pick it up on campus.
Assignment 1, due Monday, 10/5/2020, 11:59pm. Late penalty: -5 points (maximum number of points: 100 points) per day after the submission deadline. Note that you have 3 grace days to use (wisely) for the entire semester. Extended till Friday, October 9, 2019, 11:59pm. Bonus +20 points if submitted by the original due date, October 5, 11:59pm. Bonus if submitted by October 6: 15 points, October 7: 10 points, October 8: 5 points, October 9: 0 point, October 10 and after: -5 points per day.
Exam 1: Monday 10/12/2020 (closed notes/book) - OS Notes chapters 1-5; material covered in Chapter 4 of OS Notes: see the lecture slides in OS lecture 8 and study the corresponding material in the OS Notes (Chapter 4 up to and including Schedulability Test 2 on page 43, then page 48 Dynamic Priority Schedulers to and including Schedulability Test 2 on page 51, finally page 52 Comparing Fixed and Dynamic-Priority Schedulers to the end of page 56). Book chapters 3, 5, 6, 7, 8 - Process management, deadlock handling, scheduling. Exam review in class (10/7/2020) before the exam.
Assignment 2, due Friday, 11/6/2020, 11:59pm CST. Late penalty: -5 points (maximum number of points: 100 points) per day after the submission deadline. Extended till Monday, November 9, 2020, 11:59pm. Bonus +15 points if submitted by the original due date, November 6, 11:59pm. Bonus if submitted by November 7: 10 points, November 8: 5 points, November 9: 0 point, November 10 and after: -5 points per day.
Exam 2: Wednesday 11/16/2020 (closed notes/book) - OS Notes chapters 6, 7, 8; Book chapters 9, 10, 11 - Memory management (including virtual memory), disk scheduling. Exam review in class on Wednesday 11/11/2020.
Assignment 3, due Saturday, 12/5/2020, 11:59pm CST (firm deadline, no extension).
Reminder: Assignments must be done individually and entirely by each student (no-code level collaboration or any form of cheating).
Exam 3: Wednesday 12/2/2020 (closed notes/book) - Emphasis on untested materials including file management, protection/security, and distributed systems. Selected topics discussed in class from textbook chapters 13, 14, 17, and 19; process and memory management: OS Notes chapters 1-9; Book chapters 1-11, 13, 14, 17, 19. Exam review on Monday, 11/30/2020. COSC 6384 Real-Time Systems will be offered in Spring 2020, introducing the latest versions of Wind River's Workbench - Tornado and VxWorks RTOS used on the NASA/JPL Mars Rover Curiosity currently exploring Mars and many embedded systems ranging from oil & gas to medical applications.
Textbook webpage
Office hours: M W 4:00p-5:00p
Teaching assistant: Mr. Guangli Dai, Office: PGH 591, Office hours: M 5:30p-6:30p; Tu 2:00p-3:00p
Selected basic references
Reading assignments: read chapters 1, 3, review 2 if needed, 4, 5, 6, 10.
Tornado tutorial
Workbench/Tornado video
Elements of Research
How to Write a Proof by Leslie Lamport.
Introduction to mathematical arguments by Michael Hutchings
IEEE Real-Time Systems Symposium (RTSS) 2012
IEEE Real-Time Systems Symposium (RTSS) 2018
IEEE Real-Time Systems Symposium (RTSS) 2019
International Workshop on Worst-Case Execution Time Analysis (WCET) 2018
Supplement to Chapter 3: Prof. Al Mok's PhD Thesis.
Supplement 1 to Chapter 4: Model checking overview.
Supplement 2 to Chapter 4: Model checking examples.
Suggested project topics
Presentation slides for RTSS 2012 Li and Cheng's paper.
Assignment 1, due Wednesday, February 26, in class.
Assignment 2 (programming), due Monday, March 30, 11:59pm CDT. Late penalty: -5% each day late. To ensure the safety of all students, the due date is postponed to Monday, April 6, 11:59pm CDT, due to the COVID-19 outbreak. To ensure the safety of all students, the due date is postponed to the last day of class, Monday, April 27, 11:59pm CDT, due to the COVID-19 outbreak. If it is still not safe to access the Lab, an assignment that can be performed remotely will be given instead. Stay tuned. Also, assignment 3 (with no need to access the Lab) will be posted by Monday, March 23. Since UH and PGH 533 Lab remain closed, Assignment 2 (Wind River Workbench/Tornado/VxWorks) will be replaced by the written exercises of Assignment 3.
Exam: Monday, March 23, 2020. Exam postponed to Monday, March 30, 2020, due to the cancellation of 1 week of classes. Exam postponed to Monday, April 6, 2020, since UH has just postponed the last drop date with a "W" for a week. Open-course-textbook, one A4 letter-size page (both sides) of handwritten notes, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator is allowed but not sharable, review to be held in class (March 18 Postponed to March 25) before the exam date. Review postponed to April 1. Expected material (to be confirmed later): scheduling (chapters 1,3) specification/verification (chapter 4: constructing finite-state graphs, writing CTL formulas, applying model checking. chapter 5: constructing simple state charts; chapter 6: writing RTL formulas, NO verification with constraint graphs). March 23, 2020, update: chapters 4-6 NOT covered in exam.
Schedule of project presentations, project report and reviews of presentations (pdf files) due Monday, May 4, 2020, 11:59pm (email to Prof. Albert Cheng).
Assignment 3 (programming), Late penalty: -5% each day late. Extended till Friday, April 24, 2020, 11:59pm. Bonus +20 points if submitted by the original due date, April 20, 11:59pm. Bonus if submitted by April 21: 15 points, April 22: 10 points, April 23: 5 points, April 24: 0 point, April 25 and after: -5 points per day.
Assignment 3 (written exercises) will be posted later.
Since UH and PGH 533 Lab remain closed, Assignment 2 (Wind River Workbench/Tornado/VxWorks) will be replaced by the written exercises of Assignment 3.
Assignment 3 (11 written exercises from the RTS textbook): Chapter 4: Exercises 1, 2, 3, 7; Chapter 5: Exercise 5; Chapter 6: Exercises 1, 4, 5, 9a; Chapter 10: Exercises 3, 5; due Monday, April 27, 2020, 11:59pm.


COSC 3360/6310 Operating Systems (Fall 2019)
Course/TA website Course/TA website
Teaching assistant 1: Mr. Guangli Dai, Office: PGH 591 Office hours: M W 6:00p-7:30p
Teaching assistant 2: Mr. Pavan Kumar Paluri, Office: PGH 591 Office hours: T Th 10:00a-11:30a
Unix Tutorial for Beginners
Unix/Linux Books
C/C++ Books
Note: Assignments must be done individually by each student (no-code level collaboration) as I strongly indicated at the start of the class.
Reading assignments: OS notes: read chapters 1 (Introduction to Operating Systems), 2 (Processes), 3 (Process Scheduling), 4 (Real-Time Scheduling and Schedulability Analysis), 5 (Process Deadlocks), 6 (Memory Management), 7 (Virtual Memory Management). 8 (Disk Scheduling), 9 (File and Directory Management). Textbook: review chapters 1 (Introduction) and 2 (Operating-System Structures); read chapters 3 (Processes), 4 (Threads and Concurrency), 5 (CPU Scheduling), 6 (Synchronization Tools), 7 (Synchronization Examples), 8 (Deadlocks), 9 (Main Memory), 10 (Virtual Memory). 11 (Mass-Storage Structure), 13 (File-System Interface), 14 (File-System Implementation), 17 (Protection), 19 (Networks and Distributed Systems).
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Slides: Real-Time Scheduling and Schedulability Analysis
Exam 1: Wednesday 10/9/2019 (closed notes/book) - OS Notes chapters 1-5; Book chapters 3, 5, 6, 7, 8 - Process management, deadlock handling, scheduling. Exam review in class (10/7/2019) before the exam.
Assignment 1, due Wednesday, 10/2/2019, 11:59pm. Sample input. Sample output. Late penalty: -5 points (maximum number of points: 100 points) per day after the submission deadline. Note that you have 3 grace days to use (wisely) for the entire semester. Extended till Friday, October 4, 2019, 11:59pm. Bonus +10 points if submitted by the original due date, October 2, 11:59pm. Bonus if submitted by October 3: 5 points, October 4: 0 point, October 5 and after: -5 points per day.
Assignment 2, due Friday, 11/1/2019, 11:59pm CDT. Late penalty: -5 points (maximum number of points: 100 points) per day after the submission deadline. Extended till Monday, November 4, 2019, 11:59pm. Bonus +15 points if submitted by the original due date, November 1, 11:59pm. Bonus if submitted by November 2: 10 points, November 3: 5 points, November 4: 0 point, November 5 and after: -5 points per day.
Note: Assignments must be done individually by each student (no-code level collaboration) as I strongly indicated at the start of the class.
Thursday 10/31/2019: Last day to drop class with W.
Exam 2: Wednesday 11/6/2019 (closed notes/book) - OS Notes chapters 6, 7, 8; Book chapters 9, 10, 11 - Memory management (including virtual memory), NO disk scheduling. Exam review in class on Monday 11/4/2019.
Exam 3: Monday 11/25/2019 (closed notes/book) - Emphasis on untested materials including file management, protection/security, and distributed systems. Selected topics discussed in class from textbook chapters 13, 14, 17, and 19; process and memory management: OS Notes chapters 1-9; Book chapters 1-11, 13, 14, 17, 19. Exam review on Wednesday, 11/20/2019.
Assignment 3, due Monday, 12/2/2019, 11:59pm CST (firm deadline, no extension). Late penalty: -5 points per day after the submission deadline. Latest submission date/time (with -20 points penalty): Friday, 12/6/2018, 11:59pm CST.


COSC 6384 Real-Time Systems will be offered in Spring 2019, introducing the latest versions of Wind River's Workbench - Tornado and VxWorks RTOS used on the NASA/JPL Mars Rover Curiosity currently exploring Mars and many embedded systems ranging from oil & gas to medical applications.
Textbook webpage
Office hours: M W 4:00p-5:00p
Teaching assistant: Mr. Guangli Dai, Office: PGH 591, Office hours: T Th 9:00a-10:00a
Course/TA Webpage
Selected basic references
Reading assignments: read chapters 1, 3, review 2 if needed, 4, 5, 6, 7, 10.
Tornado tutorial
Elements of Research
IEEE Real-Time Systems Symposium (RTSS) 2012
IEEE Real-Time Systems Symposium (RTSS) 2018
IEEE Real-Time Systems Symposium (RTSS) 2019
International Workshop on Worst-Case Execution Time Analysis (WCET) 2018
Supplement to Chapter 3: Prof. Al Mok's PhD Thesis.
Supplement 1 to Chapter 4: Model checking overview.
Supplement 2 to Chapter 4: Model checking examples.
Suggested project topics
Presentation slides for RTSS 2012 Li and Cheng's paper.
Assignment 1, due Wednesday, February 20, in class.
Exam: Monday, April 1, 2019: open-course-textbook, one A4 letter-size page (both sides) of handwritten notes, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator is allowed but not sharable, review to be held in class (March 27) before the exam date. Expected material (to be confirmed later): Scheduling (chapters 1,3) specification/verification (chapter 4: constructing finite-state graphs, writing CTL formulas, applying model checking. chapter 5: constructing simple state charts; chapter 6: writing RTL formulas, NO verification with constraint graphs).
Schedule of project presentations
Assignment 2 (programming), due Monday, March 25, 11:59pm CST. Late penalty: -5% each day late. Extended submission due date: Friday, March 29, 11:59pm. Bonus +20% if submitted by the original due date (March 25). Bonus if submitted by March 26: 15 points, March 27: 10 points, March 28: 5 points. Assignment details and Workbench demo.
University at Buffalo (SUNY)'s Department of Computer Science and Engineering invites Professor Cheng to present a seminar on Thursday, March 14, 2019. Details.
How to Write a Proof by Leslie Lamport.
How to write proofs: a quick guide by Eugenia Cheng
Introduction to mathematical arguments by Michael Hutchings
Assignment 3 (written exercises), due in class Wednesday, April 24. Solution to problem 5(a) on constructing the FSM from the exam, also due April 24 in class.
Assignment 3 (programming), due Monday, April 29, 11:59pm. Late penalty: -5% each day late. Hard submission deadline: May 6, 11:59pm.
April 15: No class. Professor Albert Cheng invited to present a Tutorial at ACM ASPLOS and Brown University.

COSC 3360/6310 Operating Systems (Fall 2018)
Course/TA website
Teaching assistant 1: Mr. Guangli Dai, Office: PGH 591 Office hours: T Th 10:00-11:30a
Teaching assistant 2: Ms. Tanusree Sharma, Office: PGH 591 Office hours: T Th 3:00p-4:30p
Unix Tutorial for Beginners
Unix/Linux Books
C/C++ Books
Reading assignments: OS notes: read chapters 1 (Introduction to Operating Systems), 2 (Processes), 5 (Process Deadlocks), 6 (Memory Management), 7 (Virtual Memory Management), 8. Textbook: review chapters 1 (Introduction) and 2 (Operating-System Structures); read chapters 3 (Processes), 5 (Process Synchronization), 7 (Deadlocks), 6 (CPU Scheduling), 8 (Memory Management), 9 (Virtual Memory Management), 10, 11, 12, 14, 15, 17.
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Slides: Real-Time Scheduling and Schedulability Analysis
Exam 1: Monday 10/15/2018 (closed notes/book) - OS Notes chapters 1-5; Book chapters 3, 5, 6, 7 - Process management, deadlock handling, scheduling. Exam review in class before the exam.
Assignment 1, due Wednesday, 10/3/2018, 11:59pm. Late penalty: -5 points (maximum number of points: 100 points) per day after the submission deadline. Note that you have 3 grace days to use (wisely) for the entire semester. Extended till Monday, October 8, 2018, 11:59pm. Bonus +25 points if submitted by the original due date, October 3, 11:59pm. Bonus if submitted by October 4: 20 points, October 5: 15 points, October 6: 10 points, October 7: 5 points, October 8: 0 point. October 9 and after: -5 points per day.
Assignment 2, due Thursday, 11/8/2018, 11:59pm CST. Late penalty: -5 points (maximum number of points: 100 points) per day after the submission deadline. Note that you have 3 grace days to use (wisely) for the entire semester. Extended till Wednesday, November 14, 2018, 11:59pm. Bonus +30 points if submitted by the original due date, November 8, 11:59pm. Bonus if submitted by November 9: 25 points, November 10: 20 points, November 11: 15 points, November 12: 10 points, November 13: 5 points, November 14: 0 points, November 15 and after: -5 points per day. Extended 2 more days till Friday, November 16, 2018, 11:59pm. Bonus +40 points if submitted by the original due date, November 8, 11:59pm. Bonus if submitted by November 9: 35 points, November 10: 30 points, November 11: 25 points, November 12: 20 points, November 13: 15 points, November 14: 10 points, November 15: 5 points, November 16: 0 points, November 17 and after: -5 points per day.
Exam 2: Monday 11/12/2018 (closed notes/book) - OS Notes chapters 6, 7, 8; Book chapters 8, 9, 10 - Memory management (including virtual memory), but no working set or disk scheduling. Exam review on 11/7/2018.
Assignment 3, due Monday, 12/3/2018, 11:59pm CST. Late penalty: -5 points per day after the submission deadline. Latest submission date/time (with -20 points penalty): Friday, 12/7/2018, 11:59pm CST. One additional day for late submission (-5 points penalty applies): Saturday, 12/8/2018, 11:59pm CST, firm deadline.
Exam 3: Wednesday 11/28/2018 (closed notes/book) - Comprehensive, emphasis on untested materials including working set, disk scheduling, file management, protection/security, and distributed systems. Selected topics discussed in class from textbook chapters 11, 12, 14, 15, and 17; process and memory management: OS Notes chapters 1-8; Book chapters 3, 5, 6, 7, 8, 9, 10. Exam review on Monday, 11/26/2018.


COSC 3360/6310 Operating Systems (Fall 2017)
Course/TA website
Teaching assistant 1: Mr. Wenhui Chu, Office: PGH 591 Office hours: T, Th 4:30p - 6:00p
Teaching assistant 2: Mr. Guangli Dai, Office: PGH 591 Office hours: T, F 9:30a - 11:00a
Teaching assistant 3: Mr. Pavan Kumar, Office: PGH 591 Office hours: T, Th 3:00p - 4:30p
Unix Tutorial for Beginners
Unix/Linux Books
C/C++ Books
Reading assignments: OS notes: read chapters 1 (Introduction to Operating Systems), 2 (Processes), 5 (Process Deadlocks), 3 (Process Scheduling), 4 (Real-Time Scheduling). Textbook: review chapters 1 (Introduction) and 2 (Operating-System Structures); read chapters 3 (Processes), 5 (Process Synchronization), 7 (Deadlocks), 6 (CPU Scheduling).
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
August 28, 30: No class due to hurricane/tropical storm. Details.
September 8: Login information for system program.cs.uh.edu is emailed to you by the TAs.
Assignment 1, due Monday, 10/9/2017, 11:59pm. Extended till Wednesday, October 11, 11:59pm. Bonus +10% if submitted by the original due date, October 9, 11:59pm. Bonus if submitted by October 10: 5%, October 11: 0%. October 12 and after: -5 pts per day.
Slides: Real-Time Scheduling and Schedulability Analysis
Exam 1: Wednesday 10/18/2017 (closed notes/book) - OS Notes chapters 1-5; Book chapters 3, 5, 6, 7 - Process management, deadlock handling, scheduling. Exam review on 10/16/2016.


COSC 6384 Real-Time Systems (Spring 2017)
Textbook webpage
Office hours: M W 4:00p-5:00p
Selected basic references
Reading assignments: read chapter 1, 3, 4, 5, 6, 7, 10.
Tornado tutorial
Wind River Workbench development environment user guide with tutorial on Tornado functionalities
Elements of Research
IEEE Real-Time Systems Symposium (RTSS) 2012
IEEE Real-Time Systems Symposium (RTSS) 2017
International Workshop on Worst-Case Execution Time Analysis (WCET) 2017
Supplement to Chapter 3: Prof. Al Mok's PhD Thesis.
Supplement 1 to Chapter 4: Model checking overview.
Supplement 2 to Chapter 4: Model checking examples.
Exam: Wednesday, March 22, 2017 - open-course-textbook, 1 page (both sides) of handwritten notes, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator is allowed but not sharable, review to be held in class (March 20) before the exam date. Expected material (to be confirmed later): Scheduling (chapters 1,3) specification/verification (chapter 4: constructing finite-state graphs, writing CTL formulas, applying model checking.
Professor Cheng invited to present a Tutorial at DATE in Lausanne, Switzerland, on March 27, 2017. Details.
March 27 and 29: Senior PhD students Carlos Rincon and Jeffrey Zou discuss Wind River Workbench/Tornado and Functional Reactive Programming
March 31: Last day to drop with W.
Homework 1: 12 textbook exercises 3.1 - 3.9, 3.11, 3.13, 3.14; due Wednesday, March 1, in class.
Suggested project topics
Schedule of project presentations
Assignment 2 (programming), due Wednesday, April 12, 11:59pm CST. Late penalty: -5% each day late. Extended till Wednesday, April 19, 11:59pm CST. Bonus +20% if submitted by the original due date, April 12, 11:59pm CST. Bonus if submitted by April 13: 17%; April 14: 14%; April 15: 11%; April 16: 8%; April 17: 5%; April 18: 2%; April 19: 0%; April 20 and after: -5 pts per day.
Optional Bonus Assignment 3 (programming), due Monday, May 1, 11:59pm. Required Assignment 3 (written exercises) due in class Monday, May 1 - chapter 4: 1, 5, and 7; chapter 6: 1, 5, and 6; chapter 7: 4; chapter 10: 3 and 5.


COSC 3360/6310 Operating Systems (Fall 2016)
Course/TA website
Teaching assistant 1: Lieyu Shi, Office: PGH 314 Office hours: T, Th, F 12:00p - 1:00p
Teaching assistant 2: Xingliang Zou, Office: PGH 313 Office hours: T, Th 2:00p - 3:30p
(If you do not see the TAs during any of their office hours or you have any suggestion/complaint, please contact/email Professor Cheng.)
Unix Tutorial for Beginners
Unix/Linux Books
C/C++ Books
Reading assignments: OS notes: read chapters 1 (Introduction to Operating Systems), 2 (Processes), 5 (Process Deadlocks), 3 (Process Scheduling), 4 (Real-Time Scheduling), 6 (Memory Management), 7 (Virtual Memory Management), 8. Textbook: review chapters 1 (Introduction) and 2 (Operating-System Structures); read chapters 3 (Processes), 5 (Process Synchronization), 7 (Deadlocks), 6 (CPU Scheduling), 8 (Memory Management), 9 (Virtual Memory Management), 10, 11, 12, 14, 15, 17.
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Assignment 1, due Monday, 10/10/2016, 11:59pm. Extended till Friday, October 14, 11:59pm CDT. Bonus +20% if submitted by the original due date, October 10, 11:59pm CDT. Bonus if submitted by Oct. 11: 15%, Oct. 12: 10%, Oct. 13: 5%, Oct. 14: 0%. Oct. 15 and after: -5 pts per day.
Exam 1: Monday 10/17/2016 (closed notes/book) - OS Notes chapters 1-5; Book chapters 3, 5, 6, 7 - Process management, deadlock handling, scheduling. Exam review on 10/12/2016.
October 3: TAs will have questions and answers (Q & A's) session on assignment 1. Professor Albert Cheng invited to present a Tutorial on ``Next-Generation Embedded Systems: Functional Reactive Programming, Formal Verification, and Real-Time Virtual Resources'' at Embedded Systems Week (ESWEEK), Pittsburgh, PA. Professor Cheng will also deliver invited lecture at Carnegie Mellon University (CMU) on October 3, 2016.
October 28: Last day to drop class with "W".
Assignment 2, due Monday, 11/7/2016, 11:59pm. Extended till Friday, November 11, 11:59pm CDT. Bonus +20% if submitted by the original due date, November 7, 11:59pm CDT. Bonus if submitted by Nov. 8: 15%, Nov. 9: 10%, Nov. 10: 5%, Nov. 11: 0%, Nov. 12 and after: -5 pts per day.
Exam 2: Monday 11/14/2016 (closed notes/book) - OS Notes chapters 6, 7, 8; Book chapters 8, 9, 10 - Memory management and disk scheduling. Exam review on 11/9/2016.
Exam 3: Wednesday 11/30/2016 (closed notes/book) - Emphasis on file management, protection/security, and distributed systems: selected topics discussed in class from textbook chapters 11, 12, 14, 15, and 17; process and memory management: OS Notes chapters 1-8; Book chapters 3, 5, 6, 7, 8, 9, 10. Exam review on Monday, 11/28/2016.
Assignment 3, due Saturday, 12/3/2016, 11:59pm CST. Extended till Monday, December 5, 11:59pm CDT. Bonus +10% if submitted by the original due date, December 3, 11:59pm CDT. Bonus if submitted by Dec. 4: 5%, Dec. 5: 0%, Dec. 6 and after: -5 pts per day.
Each unused grace day will become a +5% bonus for a programming assignment. Cheers!
Assignment 4, No due date - Do it for fun! Please don't forget to complete the course/teaching evaluation on-line. Have a great winter break! Notes: (1) The page frames on the disk for each process (address space) are each unique as specified in the enhanced input. A process may have several segments, each consisting of several pages. Suppose there are 2 segments: the 1st with 3 pages and the 2nd 5 pages. Then the first 3 pages in the input are assigned to segment 1, and the next 5 pages to segment 2, yielding a total of 8 pages on disk. (2) Assume the initial position of the disk head is track 0.


COSC 6384 Real-Time Systems (Spring 2016)
Textbook webpage
Office hours: M W 4:00p-5:00p
Suggested project topics
More topics from UH Real-Time Systems Group
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Selected basic references
Worst-Case Execution Time (WCET) Analysis Workshop
Model checking overview
Model checking examples
How to do research, write papers/theses, and give presentations (plus career development)
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Wind River Workbench development environment user guide with tutorial on Tornado functionalities
Elements of Research
Reading assignments: read chapters 1, 3, 4, 5, 6, 7.
Homework 1: due Monday, Feb. 29, in class.
Assignment 2 (programming), due Monday, April 4, 11:59pm. Late penalty: -5% each day late. March 23, 7:06pm: Windriver Workbench license server fixed. Extended submission due date: Monday, April 11, 11:59pm. The due date is further extended till Friday, April 15, 11:59pm. Bonus +20% if submitted by the original due date (April 11).
Exam: Wednesday, March 30, 2016 - open-course-textbook, 1 page (both sides) of handwritten notes, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator is allowed but not sharable, review to be held in class (March 28) before the exam date. Scheduling (chapters 1,3) specification/verification (chapter 4: constructing finite-state graphs, writing CTL formulas, applying model checking; (not included: chapter 5: constructing simple state charts; chapter 6: writing RTL formulas, verification with constraint graphs)).
Schedule of project presentations
April 11-15: Professor Cheng to chair the DCPS Workshop and present 5 papers with PhD students at CPSWeek 2016, and deliver a seminar at TU Wien, in Vienna, Austria.
Monday, 4/25: Demo of Windriver Workbench/VxWorks
Assignment 3: Written exercises due in class Monday, May 2 - chapter 4: 1, 5, and 7; chapter 5: 8; chapter 6: 1, 5, 6, and 9(a). Optional for bonus - Programming part.


COSC 3360/6310 Operating Systems (Fall 2015)
Course/TA website
Teaching assistant 1: Xingliang Zou, Office: PGH 313 Space 5 Office hours: F 12:00p-2:00p
Teaching assistant 2: Hassan Hafiz, Office: PGH 350 Office hours: T Th 2:00p-3:30p (If you cannot see the TAs during any of these office hours, please email Professor Cheng.)
Unix Tutorial for Beginners
Unix/Linux Books
C/C++ Books
Reading assignments: OS notes: read chapters 1 (Introduction to Operating Systems), 2 (Processes), 3 (Process Scheduling), 4 (Real-Time Scheduling), 5 (Process Deadlocks), 6, 7, 8. Textbook: review chapters 1 (Introduction) and 2 (Operating-System Structures); read chapters 3 (Processes), 5 (Process Synchronization), 6 (CPU Scheduling), 7 (Deadlocks), 8, 9, 10, 11, 12, 14, 15, 17.
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Professor Albert Cheng is the invited Keynote Speaker at the 3rd STEM Conference on Saturday, October 3, 2015.
Assignment 1, due Friday, 10/9/2015, 11:59pm. Extended till Wednesday, October 14, 11:59pm CDT. Bonus +20% if submitted by the original due date, October 9, 11:59pm CDT. Extended one day till Thursday due to Tuesday's server problem, October 15, 11:59pm CDT.
Exam 1: Monday 10/19/2015 - OS Notes chapters 1-5; Book chapters 3, 5, 6, 7 - Process management, deadlock handling, scheduling. Exam review on 10/14/2015.
October 26: No class.
October 28: Return of graded exams 1 and solution sketches. Q&A on assignment 2.
October 30: Last day to drop class with "W".
University of California at Berkeley's Electrical Engineering and Computer Sciences (EECS) Department invites Professor Cheng to present a seminar on Friday, October 23, 2015, 3:00pm-4:00pm. Details.
Professor Albert Cheng to present opening keynote at the International Symposium on Software Engineering and Applications (SEA), Marina del Rey, California, USA, October 26-28, 2015.
Professor Albert Cheng has been invited to serve as Program Chair of the International Symposium on Software Engineering and Applications (SEA), Marina del Rey, California, USA, October 26-28, 2015.
Caltech's Computing + Mathematical Sciences (CMS) Department invites Professor Cheng to present a seminar on Functional Reactive Systems at noon on Thursday, October 29, 2015, in the Walter and Leonore Annenberg Center for Information Science and Technology. Details.
Assignment 2, due Wednesday, 11/11/2015, 11:59pm. Extended till Monday, November 16, 11:59pm CST. Bonus +20% if submitted by the original due date, November 11, 11:59pm CST.
Reminder: Programming assignments must be individual student's work. Sharing or copying code is cheating. Discussing high-level solutions is fine.
Exam 2: Wednesday, November 18, 2015 - OS Notes chapters 6, 7, 8; Book chapters 8, 9, 10 - Memory management and disk scheduling. Exam review on November 16.
Exam 3: Wednesday, December 2, 2015 - Emphasis on file management, protection/security, and distributed systems: selected topics discussed in class from textbook chapters 11, 12, 14, 15, and 17; process and memory management: OS Notes chapters 1-8; Book chapters 3, 5, 6, 7, 8, 9, 10. Exam review on Monday, November 23.
Assignment 3, due Monday, 12/7/2014, 11:59pm CST. Extended till Friday, December 11, 11:59pm CST. Bonus +20% if submitted by the original due date, December 7, 11:59pm CST.
Each unused grace day will become a +5% bonus for a programming assignment. Cheers!
Please complete on-line course/teaching/TA evaluation. Thank you!


COSC 6384 Real-Time Systems (Spring 2015)
Textbook webpage for instructors and students (with lecture slides)
Teaching assistant: Xingliang Zou, Office: PGH 313 Space 5 Office hours: T Th 2:00p-3:00p
Suggested project topics
More topics from UH Real-Time Systems Group
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Selected basic references
Worst-Case Execution Time (WCET) Analysis Workshop
Model checking overview
Model checking examples
How to do research, write papers/theses, and give presentations (plus career development)
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Wind River Workbench development environment user guide with tutorial on Tornado functionalities
Elements of Research
Reading assignments: read chapters 1, 3, 4.
Homework 1, due Wednesday, Feb. 25, in class.
Assignment 2 (programming), due Wednesday, March 25, 11:59pm. Late penalty: -5% each day late. The due date is extended till Monday, March 30, 11:59pm. Bonus +15% if submitted by the original due date (March 25).
Exam: Wednesday, April 1, 2015 - open-course-textbook, 1 page (both sides) of handwritten notes, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator is allowed but not sharable, review to be held in class (March 30) before the exam date. Scheduling (chapters 1,3) specification/verification (chapter 4: constructing finite-state graphs, writing CTL formulas, applying model checking; (not included: chapter 5: constructing simple state charts; chapter 6: writing RTL formulas, verification with constraint graphs)).
Schedule of project presentations
Assignment 3 (programming part), due Wed, April 29, 11:59pm; late penalty: -5% each day late afterwards. The due date of the programming part is extended till Monday, May 4, 11:59pm. Written exercises due in class Wed, April 29 - chapter 4: 1, 5, and 7; chapter 5: 8; chapter 6: 1, 5, 6, and 9(a).
April 15: Professor Cheng to present papers at CPSWeek 2015 and a programming languages and software engineering (programming systems) research seminar on Functional Reactive Programming at the University of Washington's Computer Science & Engineering Department . TA will hold Q&A session on assignment 3.



COSC 7384 Advanced Real-Time Systems (Spring 2014)
Reading list
IEEE Real-Time Systems Symposium (RTSS)
Worst-Case Execution Time (WCET) Analysis Workshop
1/14-1/21: introduction, scheduling/priority inversion
RTAS 2009 Slides
1/23-1/28 (2/4): power-aware scheduling
RTCSA 2009 Slides
1/30-2/13 (2/6-2/20): formal verification with RTL
RTAS 2005 (long version: IEEE TC 2006) Slides
RTSS 2006 Slides
2/11 (2/12): 11a-12p: Virtual Data Structures Seminar (PGH 563)
RTSS 2007 Slides
2/18-2/20 (3/6, 3/27): introduction to approximation algorithms (part 1)
2/25:
Zeinab, Complete worst-case execution time analysis of straight-line hard real-time programs, paper;
Daxiao, ``An Energy-Saving Approach for Real-Time Highway Traffic Estimation Using GPS-Enabled Smartphones,'' paper: Daxiao Liu and Albert M. K. Cheng, 34th IEEE-CS Real-Time Systems Symposium (RTSS) WIP Session, Vancouver, Canada, December 2013.
2/27: Daxiao, Daxiao
3/4:
Praise (postponed to 3/6)
Rachel, "Power Management and Fault Recovery in Real-Time Systems" by Melhem, Mosse, and Elnozahy (2004).
3/6: introduction to approximation algorithms (part 2)
Praise, (postponed again to 3/18)
3/11, 3/13: Spring Holidays
3/18:
Zeinab, "Statistical-Based WCET Estimation and Validation" by Jeffery Hansen, Scott Hissam, Gabriel A. Moreno, Proceedings of the 9th Intl. Workshop on Worst-Case Execution Time (WCET) Analysis (2009).
Praise, (postponed a 3rd time to 3/20)
3/20:
Jeffrey, Feasibility interval for the transactional event handlers of P-FRP, Chaitanya Belwal, Albert M. K. Cheng, Bo Liu, Journal of Computer and System Sciences 79 (2013) 530-541.
Praise, (postponed a 4th time to 3/25, 3/25 talk to 3/27)
3/25:
Rachel, Flashback: A Lightweight Extension for Rollback and Deterministic Replay for Software Debugging by Srinivasan, Kandula, Andrews and Zhou.
Praise, (postponed a 5th time to 3/27, original 3/25 talk to 4/1)
3/27:
Dr. Cheng, approximation algorithms (part 3)
Praise (absent), "Temporally determine disk access for real-time applications" by Momahed Said Aboutabl.
4/1:
Dr. Cheng, approximation algorithms (part 4),
Praise (absent)
4/3:
Praise (absent)
Jeffrey, 2 P-FRP papers
4/8:
Dr. Cheng, functional reactive systems (FRS): timing analysis and scheduling, real-time virtual resources
4/10:
Zeinab
4/14-17: Professor Albert Cheng invited to present a Tutorial on ``Developing Embedded/Real-Time and Cyber-Physical Systems: Functional Reactive Programming, RTL-based Formal Verification, Response Time Analysis, and Power-Aware Scheduling'' at Cyber-Physical Systems Week (CPSWeek), Berlin, Germany.
4/18: Professor Albert Cheng has been invited to present a seminar at INRIA Paris-Rocquencourt , France.
4/22: Unversity of Oxford's automated verification group invites Professor Albert Cheng to present a seminar.
4/29: Jeffrey, Rachel


COSC 4330/6310 Operating Systems (Fall 2014)
Course/TA Webpage
COSC 4330/6310 Operating Systems (Fall 2014)
Teaching assistant 1: Xingliang Zou, Office: PGH 313 Space 5 Office hours: T Th 2:00p-3:00p
Teaching assistant 2: Qiong Lu, Office: PGH 313 Space 5 Office hours: Friday 1:00p-4:00p
Unix Tutorial for Beginners
Unix/Linux Books
C/C++ Books
Reading assignments: OS notes: read chapters 1 (Introduction to Operating Systems), 2 (Processes), 5 (Process Deadlocks), 3 (Process Scheduling), 4 (Real-Time Scheduling), 6 (Process Deadlocks), 7 (Virtual Memory Management). Textbook: review chapters 1 (Introduction) and 2 (Operating-System Structures); read chapters 3 (Processes), 5 (Process Synchronization), 7 (Deadlocks), 6 (CPU Scheduling), 8 (Memory Management), 9 (Virtual Memory Management).
Computer accounts: Please see TAs if you encounter problems.
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Assignment 1, due Monday, 10/13/2014, 11:59pm CDT. Extended till Friday, October 17, 11:59pm CDT. Bonus +15% if submitted by the original due date, October 13, 11:59pm CDT.
Exam 1: Monday 10/20/2014 - OS Notes chapters 1-5; Book chapters 3, 5, 6, 7 - Process management, deadlock handling, scheduling.
Exam 1 review: Wednesday 10/15/2014.
Last day to drop class with a `W': 10/31/2014 (Friday).
Assignment 2, due Wednesday, November 12, 11:59pm. Extended till Monday, November 17, 11:59pm. Bonus +20% if submitted by the original due date, November 12, 11:59pm.
Exam 2: Monday, November 24, 2014 - OS Notes chapters 6, 7, 8; Book chapters 8, 9, 10 - Memory management and disk scheduling. Exam review on November 19.
Optional reference 1: Tornado tutorial
Optional reference 2: Wind River Workbench development environment user guide with tutorial on Tornado functionalities
December 1: TAs to hold review session. Professor Cheng to deliver a special seminar at Italy's top-ranked Sapienza Universita di Roma to be hosted by its Dipartimento di Informatica .
Exam 3: Wednesday, December 3, 2014 - Emphasis on file management, protection/security, and distributed systems: selected topics discussed in class from textbook chapters 11, 12, 14, 15, and 17; process and memory management: OS Notes chapters 1-8; Book chapters 3, 5, 6, 7, 8, 9, 10. Exam review also on November 19.
December 2-5: Professor Cheng to present papers at IEEE RTSS-WMC and IEEE RTSS 2014.
Assignment 3, due Monday, 12/8/2014, 11:59pm CST. Notes: (1) The page frames on the disk for each process (address space) are each unique as specified in the enhanced input. A process may have several segments, each consisting of several pages. Suppose there are 2 segments: the 1st with 3 pages and the 2nd 5 pages. Then the first 3 pages in the input are assigned to segment 1, and the next 5 pages to segment 2, yielding a total of 8 pages on disk. (2) Assume the initial position of the disk head is track 0.
Professor Cheng's paper in the RTSS-WMC proceedings.


COSC 6384 Real-Time Systems (Spring 2014)
Textbook webpage for instructors and students (with lecture slides)
Reading assignments: read chapter 1, review chapter 2 if needed, read chapters 3, 4, 5, 6, 7.1-7.2, 10.1-10.7
Suggested project topics
More topics from UH Real-Time Systems Group
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Selected basic references
Worst-Case Execution Time (WCET) Analysis Workshop
Model checking overview
Model checking examples
How to do research, write papers/theses, and give presentations (plus career development)
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Wind River Workbench development environment user guide with tutorial on Tornado functionalities
Sample exam problems
Last day to drop class with a `W': March 26, 2014.
Professor Albert Cheng invited to present a Tutorial on ``Developing Embedded/Real-Time and Cyber-Physical Systems: Functional Reactive Programming, RTL-based Formal Verification, Response Time Analysis, and Power-Aware Scheduling'' at Cyber-Physical Systems Week (CPSWeek), Berlin, Germany, April 14-17, 2014.
Homework 1, due Tuesday, Feb. 18, in class. Note for Q2: "Effective release time" means the earliest start time of a job taking into account the predecessor jobs' parameters, and "effective deadline" means the latest possible time when a job must finishes to allow successor jobs to meet their deadlines. Computation time of each job >= 1.
Assignment 2 (programming), due Tuesday, March 18, 11:59pm. Extended till Tuesday, March 25, 11:59pm. Bonus +10% if submitted by the original due date, March 18, 11:59pm.
Exam 1: Thursday, April 3, 2014 - open-course-textbook, 1 page (both sides) of handwritten notes, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator is allowed but not sharable, review to be held in class (April 1) before the exam date. Scheduling (chapters 1,3) specification/verification (chapter 4: constructing finite-state graphs, writing CTL formulas, applying model checking; chapter 5: constructing simple state charts; chapter 6: writing RTL formulas, verification with constraint graphs).
4/15-24: Prof. Cheng presenting papers/tutorial/seminars at CPSWeek, INRIA-Paris, and University of Oxford
4/29: Project presentations
Assignment 3 (programming), due Tuesday, April 29, 11:59pm. Assignment 3 (written exercises) due in class Tuesday, April 29 - chapter 4: 1, 5, and 7; chapter 6: 1, 5, and 6; chapter 7: 4; chapter 10: 3 and 5.
5/6, noon: Hardcopy project report


COSC 4330/6310 Operating Systems (Fall 2013)
Teaching assistant: Xingliang Zou, Office: PGH 591, Office hours: T Th 3:00p-4:00p
Teaching assistant: Zeinab Kazemi, Office: PGH 313 Space 7, Office hours: T Th 4:00p-5:00p
TA/course webpage
Unix Tutorial for Beginners
Unix Books
Reading assignments: OS notes: read chapters 1, 2, 3, 4, 5, 6, 7, 8; Textbook: review chapters 1 and 2, read chapters 3, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 17
Computer accounts: Contact either TA with your UH picture ID to obtain your account user id and password.
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Assignment 1, due Monday, 10/7/2013, 11:59pm. Extended till Thursday, October 10, 11:59pm. Bonus +15% if submitted by the original due date, October 7, 11:59pm.
Extra TA (Zeinab Kazemi) office hour: Friday, 9/20/2013, 5:00pm-6:00pm.
Exam 1: Wednesday 10/16/2013 - OS Notes chapters 1-5; Book chapters 3, 5, 6, 7 - Process management, deadlock handling, scheduling.
Exam 1 review: Wednesday 10/9/2013.
October 14: Review session by TA's; no office hours. Professor Cheng to visit and deliver an invited lecture on ``Developing Embedded Real-Time and Cyber-Physical Systems'' at The University of Texas at Austin's Department of Computer Science .
Assignment 2, due Friday, November 15, 11:59pm.
Exam 2: Wednesday, November 20, 2013 - OS Notes chapters 6, 7, 8; Book chapters 8, 9, 10 - Memory management and disk scheduling. Exam review on November 18.
Assignment 3, due Saturday, December 7, 11:59pm. Extended till Tuesday, December 10, 11:59pm. Bonus +15% if submitted by the original due date, December 7, 11:59pm.
Exam 3: Wednesday, December 4, 2013 - Emphasis on file management, protection/security, and distributed systems: selected topics discussed in class from textbook chapters 11, 12, 14, 15, and 17; process and memory management: OS Notes chapters 1-8; Book chapters 3, 5, 6, 7, 8, 9, 10. Exam reviews on November 25 and December 2.


COSC 6384 Real-Time Systems (Spring 2013)
Textbook webpage for instructors and students (with lecture slides)
Reading assignments: read chapter 1, review chapter 2 if needed, read chapters 3, 4, 5, 6, 7, 10.1-10.6.
Suggested project topics
More topics from UH Real-Time Systems Group
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Selected basic references
Model checking overview
Model checking examples
How to do research, write papers/theses, and give presentations (plus career development)
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Homework 1: due Thursday, Feb. 20, in class.
Assignment 2 (programming project), due Friday, March 22, 11:59pm CST. Extended till Friday, March 29, 11:59pm. Bonus +20% if submitted by the original due date; no bonus otherwise.
Sample exam problems
Exam 1: Monday, March 25, 2013 - open-course-textbook, 1 page (both sides) of handwritten notes, no photocopies of any materials, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator is allowed but not sharable, review to be held in class (March 20) before the exam date. Scheduling (chapters 1,3) specification/verification (chapter 4: constructing finite-state graphs, writing CTL formulas, applying model checking; chapter 5: constructing simple state charts; chapter 6: writing RTL formulas, verification with constraint graphs).
Last day to drop class with a `W': March 27 (Wednesday), 2013.
April 1: Industrial talk by Chaitanya Belwal and Kris Hayes, Weatherford - short projects, summer internships, and full-time positions. Postponed due to Kris' travel schedule conflict. Rescheduled for April 22.
April 8, 10: No class. Professor Albert Cheng invited to present a Tutorial on ``Developing Embedded/Real-Time and Cyber-Physical Systems: Functional Reactive Programming, RTL-based Formal Verification, Response Time Analysis, and Power-Aware Scheduling'' and a paper at Cyber-Physical Systems Week (CPSWeek), Philadelphia, PA, April 8-11, 2013. Professor Cheng to deliver invited lecture on ``Developing Embedded Real-Time and Cyber-Physical Systems'' at Columbia University's Department of Computer Science on April 11, 2013, 2:00pm - 3:00pm.
Wind River Workbench development environment tutorial with Tornado functionalities
Assignment 3 (programming part), due Monday, April 22, 11:59pm CST. Extended till Friday, April 26, 11:59pm. Bonus +20% if submitted by the original due date; no bonus otherwise.
April 8: Tutorial on VxWorks/Workbench.
Schedule of project presentations
RTAS 2009 Slides for "An Evaluation of the Dynamic and Static Multiprocessor Priority Ceiling Protocol and the Multiprocessor Stack Resource Policy in an SMP System"
Assignment 3 (written exercises) due in class Monday, April 29 - chapter 4: 1, 5, and 7; chapter 6: 1, 5, and 6; chapter 7: 4; chapter 10: 3 and 5; exam problem 5(a).

COSC 4330/6310 Operating Systems (Fall 2012)
Teaching assistant: Yu Li, Office: PGH 313, Office hours: T Th 1:30pm - 3:00pm
TA/course webpage
Unix Tutorial for Beginners
Unix Books
Reading assignments: OS notes: read chapters 1, 2, 3, 4, 5, 6, 7, 8; Textbook: review chapters 1 and 2, read chapter 3, 5, 6, 7, 19.5, 8, 9, 10, 11, selected topics discussed in class from 14, 15, and 18.
Computer accounts: Go to the Systems office in 541 PGH or to Laura Miller's office in 527 PGH with your UH picture ID and get your account.
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Assignment 1, due Friday, October 12, 11:59pm.
Exam 1: Wednesday, October 17, 2012 - OS Notes chapters 1-5; Book chapters 3, 5, 6, 7, 19.5.1, 19.5.2 (no threads) - Process management, deadlock handling, scheduling. Exam review on October 15.
Assignment 2, due Monday, November 12, 11:59pm.
Exam 2: Monday, November 19, 2012 - OS Notes chapters 6, 7, 8; Book chapters 9, 10, 14 - Memory management and disk scheduling. Exam review on November 14.
Exam 3: Wednesday, December 5, 2012 - File management and protection (around 25-50% of exam): selected topics discussed in class from textbook chapters 10, 11, 14, 15, and 18; process and memory management (around 50-75% of exam). Exam review on November 28.
Last day to drop class with a `W': November 2 (Friday), 2012.
Assignment 3, due Saturday, December 8, 11:59pm. Extended till Tuesday, December 11, 11:59pm. Bonus +15% if submitted by the original due date, December 8, 11:59pm.
No class 12/3, no office hours 12/3 and 12/5: Dr. Cheng to present a paper with Yu Li at IEEE RTSS 2012.
Special TA (Fang Liu) office hours in Real-Time Systems Lab (PGH 591): Tuesday (12/4) and Thursday (12/6) 1:00pm-2:30pm

COSC 6384 Real-Time Systems (Spring 2012)
Course webpage
Teaching assistant: Fang Liu; Office: PGH 313; Office hours: T Th 4:00pm-5:00pm
Textbook webpage for instructors and students (with lecture slides)
Reading assignments: read chapter 1, review chapter 2 if needed, read chapters 3.
Suggested project topics
More topics from UH Real-Time Systems Group
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Note on Tornado: Set Tornado Registry to Local. This can be done in tools\options\Tornado registry.
Selected basic references
Model checking overview.
Model checking examples.
How to do research, write papers/theses, and give presentations (plus career development)
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Sample exam problems.
Homework 1, due Wed, Feb. 15, in class. See Course/TA webpage for homework 1 updates. Last problem's solution to be turned-in with homework 2.
Assignment 2 (programming project), due Monday, March 19, 11:59pm. Due to the closing of the lab during the spring break, the due date is extended by one week till Monday, March 26, 11:59pm. Also turn-in the solution to the last problem in homework 1.
Schedule of project presentations
Exam 1: Monday, April 2, 2012 - open-course-textbook, 1 page (both sides) of handwritten notes, no photocopies of any materials, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator is allowed but not sharable, review to be held in class (March 28) before the exam date. Scheduling (chapters 1,3) specification/verification (chapter 4: constructing finite-state graphs, writing CTL formulas, applying model checking; chapter 5: constructing simple state charts; chapter 6: writing RTL formulas, verification with constraint graphs).
Assignment 3 (programming part), due Wed, April 25, 11:59pm; late penalty: -5% each day late afterwards. Written exercises due in class Wed, April 25. Extended till Monday, April 30, 11:59pm. Bonus +15% if both the programming part and the written exercises are turned in by original due date and times; no bonus otherwise.


COSC 7384 Advanced Real-Time Systems (Spring 2012)
Reading list
1/18-1/25: introduction, scheduling/priority inversion
RTAS 2009 Slides
1/30-2/2: power-aware scheduling
RTCSA 2009 Slides
2/7-2/20: formal verification with RTL
RTAS 2005 (long version: IEEE TC 2006) Slides
RTSS 2006 Slides
RTSS 2007 Slides
2/22: introduction to approximation algorithms (part 1)
2/27: p-fair scheduling (Yu)
2/29: Multi-core Real-Time Scheduling for Generalized Parallel Task Models (Yuanfeng)
3/5: introduction to approximation algorithms (part 2)
3/7: introduction to approximation algorithms (part 3) (Cheng); "Reconfigurable Real-Time Middleware for Distributed Cyber-Physical Systems with Aperiodic Events" by Yuangfang Zhang, Christopher Gill, and Chenyang Lu of the Department of Computer Science and Engineering in Washington University, St. Louis, Missouri; and *very brief* presentation of two other papers: "Feasible Region for Meeting Aperiodic End-to-End Deadlines in Resource Pipelines" by Abdelzaher, T., Thaker G., and Lardieri, P., Proceedings of teh 24th International Conference on Distributed Computing Systems and "Exact Admission Control for Integrated Aperiodic and Periodic Tasks" by Andersson, Bjorn and Ekelin, Cecilia, RTAS 2005 (Sergio)
3/19: timing analysis of real-time rule-based systems (chapter 10 of reference textbook) by Albert Cheng
3/21: ``Priority-driven Coding and Transmission of Progressive JPEG Images for Real-Time Applications'' (http://dl.acm.org/citation.cfm?id=1265183) by Cheng and Feng (Yuanfeng); "Power-aware scheduling for Multiple Feasible interval jobs" by Jian Lin and Albert Cheng (Qiang)
3/26: Timed-Automata to Real-Time Java tool: Presentation briefly introduces the modeling approach using Timed Automata and UPPAAL for RT-Java code generation with TART and DRE Middleware. It then shows with more emphasis that modeling can be used to also check on schedulability of STM. Hakipour, N. and Wellings, A. "TART: Timed-Automata to Real-TIm Java Tool," 2010 Software Engineering and Formal Methods. Belwal, C and Cheng, M. K. Albert "Schedulabilty Analysis of Transactions in Software Transactional Memory using Timed Automata," 2011 International Joint Conference of IEEE TrustCom-11/IEEE ICESS-11/FCST-11. Subramonian, V. and Gill, C. "Timed Automata Models For Principled Composition of Middleware," Dissertation, Washington University, St. Louis, 2006 (Sergio)
3/28: Introduction to hierarchical real-time scheduling and Xiang Feng's dissertation: Design of Real-Time Virtual Resource Architecture for Large-Scale Embedded Systems (Yu); "Temperature Aware Task Scheduling in MPSoCs," Ayse Kivilcim Coskun, Tajana Simunic Rosing, and Keith Whisnant (Tao)
4/2: Selected topic(s) from
1) Energy Aware Smart Home: http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=5482712
2) GreenSlot: Scheduling Energy Consumption in Green Datacenters: http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=6114408
3) Real-Time Recognition and Profiling of Appliances through a Single Electricity Sensor: http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=5508244
4) Wireless Sensor Networks for Cost-Efficient Residential Energy Management in the Smart Grid: http://ieeexplore.ieee.org/Xplore/login.jsp?url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel5%2F5165411%2F5772087%2F05734885.pdf%3Farnumber%3D5734885&authDecision=-203
(Prachi)
4/6: "Techniques for Multicore Thermal Management: Classification and New Exploration," ISCA 2006 (Qiang)
4/9: "Temperature-Aware Task Allocation and Scheduling for Embedded Multiprocessor Systems-on-Chip (MPSoC) Design," YUAN XIE AND WEI-LUN HUNG, 2006 (Tao)
4/11: Cyber-physical medical systems paper by A. Cheng (Prachi)
4/16: "Software Transactional Memory for Dynamic-Sized Data Structures* by Maurice Herlihy, Victor Luchangco, Mark Moir, and William Scherer III Proceeding on Distributed Computing, 2003 (Sergio)
4/18: Cyber-Physical Systems: Optimization and Composition (Cheng) - slides at http://locust.kaist.ac.kr/cs744-cps/CS744.html
4/23: (Yuanfeng)
4/25: "Extending Regularity-based Resource Partitioning to Multi-resource Systems" (Yu)
4/30: (Prachi); (Qiang); (Tao)


COSC 4330/6310 Operating Systems
Teaching assistant: Yu Li Office: PGH 313 Office hours: Tu Th 3:00pm - 4:30pm
TA/course webpage
Academic honesty
Unix Tutorial for Beginners.
URL is accessible: http://www.ee.surrey.ac.uk/Teaching/Unix/
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Unix Books
Reading assignments: OS notes: read chapters 1, 2, 3, 4, 5, 6, 7, 8; Textbook: review chapters 1 and 2, read chapter 3, 5, 6, 7, 19.5, 8, 9, 10, 11, selected topics discussed in class from 14, 15, and 18.
Computer accounts: Go to the Systems office in 541 PGH or to Laura Miller's office in 527 PGH with your UH picture ID and get your account.
Assignment 1, due Monday, October 3, 11:59pm. Extended till Friday, October 7, 11:59pm. Bonus +15% if submitted by the original due date, October 3, 11:59pm.
Exam 1: Wednesday, October 12, 2011 - OS Notes chapters 1-5; Book chapters 3, 5, 6, 7, 19.5.1, 19.5.2 (no threads) - Process management, deadlock handling, scheduling. Exam review on October 10. Exam grade average: 91.5/125 = 73.2%.
Assignment 2, due Friday, November 4, 11:59pm. note: If you have difficulty reading/parsing the input (concurrent program), first try manually tranforming it into an easily readable form from which you can construct the dependency graph and create the required Unix processes. Then return to work on reading the input in the specified format once your core C or C++ program is working correctly. Extended till Monday, November 7, 11:59pm. Bonus +10% if turned in by November 4, 11:59pm.
Exam 2: Monday, November 14, 2011 - OS Notes chapters 6, 7, 8; Book chapters 9, 10, 14 - Memory management and disk scheduling. Exam review on November 9.
October 31: Assignment 1 grades posted at TA/course webpage.
Assignment 3, due Monday, December 5, 11:59pm (you may use your remaining grace days). Extended till Friday, December 9, 11:59pm. Bonus +15% if turned in by Monday, December 5, 11:59pm.
Exam 3: Wednesday, November 30, 2011 - File management, protection, and distributed systems (around 50% of exam): selected topics discussed in class from textbook chapters 10, 11, 14, 15, and 18; process and memory management (around 50% of exam).


COSC 6384 Real-Time Systems
Course webpage
Teaching assistant: Bo Liu Office: PGH 313 Office hours: MW 5:30pm - 7:00pm and by appointment (boliu@cs.uh.edu)
Textbook webpage for instructors and students (with lecture slides)
Reading assignments: read chapter 1, review chapter 2 if needed, read chapters 3, 4, 5, 6.
Suggested project topics
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Note on Tornado: Set Tornado Registry to Local. This can be done in tools\options\Tornado registry.
Selected basic references
Model checking overview.
Model checking examples.
How to do research, write papers/theses, and give presentations (plus career development)
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Homework 1, due Thursday, Feb. 24, in class.
Homework 2 (programming assignment), due Tuesday, March 22, 11:59pm. Late penalty: -5% each day late. Due date extended till Friday, March 25, 11:59pm. Bonus +10% if submitted by original due date.
Exam 1: Thursday, March 31, 2011 - open-course-textbook, 1 page (both sides) of handwritten notes, no photocopies of any materials, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator is allowed but not sharable, review to be held in class before the exam date. Scheduling (chapters 1,3) specification/verification (chapter 4: constructing finite-state graphs, writing CTL formulas, applying model checking; chapter 5: constructing simple state charts; chapter 6: writing RTL formulas, verification with constraint graphs).
Schedule of presentations
Sample exam problems.
Assignment 3: programming part, due Thursday, April 21, 11:59pm (Bonus +10%), due date extended till Monday, April 25, 11:59pm, due date extended again till Thursday, April 28, 11:59pm (Bonus +10%, so students submitting on April 25 get +20%), due date extended once again till Monday, May 2, 11:59pm, late penalty: -5% each day late afterwards; written exercises due in class Thursday, April 28 - chapter 4: 1, 5, and 8; chapter 5: 8; chapter 6: 2, 5, 6, and 9(a).
Professor Cheng to chair session on Formal Techniques and Modeling at 17th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS) , Chicago, IL, USA, part of the Cyber-Physical Systems Week (CPS Week), April 11-14, 2011.
Note on programming assignment 3 (April 20): You may choose any reasonable input format you like, but be sure to specify how to enter the input values and of course, how to run your program. You do not need to use Tornado to determine observed task execution times. You may, of course, use the computation times of the benchmark tasks as determined by Tornado or other means (plus making up temperature values) to test your program since the TA will use these tasks to check your program.



COSC 4330/6310 Operating Systems introducing Unix/Linux OS, Windows OS, and Wind River VxWorks Real-Time OS.
Teaching assistant: Yuanfeng Wen Office: PGH 313 Office hours: 10:30am-12:00noon and by appointment (wyf@cs.uh.edu OR wenyuanfeng@gmail.com)
TA webpage
Academic honesty
Unix Tutorial for Beginners.
URL is accessible: http://www.ee.surrey.ac.uk/Teaching/Unix/
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Unix Books
Reading assignments: OS notes: read chapters 1, 2, 3, 4, 5, 6, 7, 8; Textbook: review chapters 1 and 2, read chapter 3, 5, 6, 19.5, 7, 9, 10, 14.
Assignment 1, due Tuesday, October 5, 11:59pm. Extended till Friday, October 8, 11:59pm. Bonus +10% if turned in by October 5, 11:59pm. Bonus +5% if turned in by October 6, 11:59pm.
Exam 1: Thursday, October 14, 2010 - OS Notes chapters 1-5; Book chapters 3, 5, 6, 7, 19.5.1, 19.5.2 (no threads) - Process management, deadlock handling, scheduling. Exam review on October 12.
Last day to drop class with a `W': November 3 (Wednesday), 2010.
Assignment 2, due Tuesday, November 9, 11:59pm. Extended till Friday, November 12, 11:59pm. Bonus +10% if turned in by November 9, 11:59pm. Bonus +5% if turned in by November 10, 11:59pm.
Exam 2: Thursday, November 18, 2010 - OS Notes chapters 6, 7, 8; Book chapters 9, 10, 14 - Memory management and disk scheduling,
Assignment 3, due Saturday, December 4, 11:59pm. Extension: due Monday, December 6, 11:59pm. Last day to submit: December 9, 11:59pm.
Exam 3: Thursday, December 2, 2010 - File management, protection, and distributed systems (50% of exam); process and memory management (50% of exam).
More help on sockets





COSC 6384 Real-Time Systems
Course webpage
Teaching assistant: Bo Liu Office: PGH 313 Office hours: MW 12:30pm - 2:00pm and by appointment (boliu@cs.uh.edu)
Textbook webpage for instructors and students (with lecture slides)
Reading assignments: read chapter 1, review chapter 2 if needed, read chapters 3, 4, 5, 6.
Homework 1, due Thursday, Sept. 23.
Suggested project topics
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Schedule of presentations
Homework 2 (programming assignment, due 11:59pm, Thursday, October 21). Extended till Monday, October 25, 11:59pm. Bonus +15% if turned in by original due date October 21, 11:59pm.
Note on Tornado: Set Tornado Registry to Local. This can be done in tools\options\Tornado registry. Updates on homework 2.
Selected basic references
Model checking overview.
Model checking examples.
How to do research, write papers/theses, and give presentations (plus career development)
Exam 1: Thursday, October 28, 2010 - open-course-textbook, 1 page (both sides) of handwritten notes, no photocopies of any materials, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator is allowed but not sharable, review to be held in class before the exam date. Scheduling (chapters 1,3) specification/verification (chapter 4: constructing finite-state graphs and writing CTL formulas; chapter 5: constructing simple state charts; chapter 6: writing RTL formulas, verification with constraint graphs).
Last day to drop class with a `W': November 3 (Wednesday), 2010.
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Assignment 3: Exercises - chapter 4: problems 5, 7; chapter 5: problem 8; chapter 6: problems 2, 5; due Tuesday, November 30, in class. COSC 4330/6310 Operating Systems introducing Unix/Linux OS, Windows OS, and Wind River VxWorks Real-Time OS.
Teaching assistant: Fang Liu Office: PGH 313 Office hours: M W 3:30 - 5:00 and by appointment (email: fliu@cs.uh.edu)
TA webpage
Academic honesty
Unix Tutorial for Beginners.
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Unix Books
Reading assignments: OS notes: read chapters 1, 2, 3, 4, 5, 6, 7; Textbook: review chapters 1 and 2, read chapters 3, 5, 6, 7, 8, 9.
Programming assignment 1: due March 2, 11:59pm. Extended till Tuesday, March 9, 11:59pm. Bonus +10% Friday, March 5, 11:59pm. Bonus +15% Tuesday, March 2, 11:59pm (original due date).
Exam 1: Thursday, March 11, 2010 - OS Notes chapters 1-5; Book chapters 3, 5, 6, 7, 19.5.1, 19.5.2 (no threads) - Process management, deadlock handling, scheduling.
Programming assignment 2: due April 8 (extended till April 13), 11:59pm. Extended again till April 16 (Friday), 11:59pm. Bonus +10% if submitted by April 13.
Exam 2: Tuesday, April 20, 2010 - OS Notes chapters 6, 7, 8; Book chapters 9, 10, 14 - Memory management and disk scheduling,
Exam 3: May 11, 2010, 2:00-3:50pm - Emphasis on file management; protection and security. Process and memory management. In addition to chapters covered in exams 1 and 2, Chapters 10, 11, 14, Sections 15.1-15.5, 18.1, 18.7.
Programming assignment 3: due May 3, 11:59pm.




COSC 7384 Advanced Real-Time Systems

1/19-2/4: introduction, scheduling/priority inversion
2/9-2/11: power-aware scheduling
RTAS 2009 Slides
RTCSA 2009 Slides
COSC 6384 Real-Time Systems
Course webpage
Teaching assistant: Mr. Jian Lin, Office: PGH 313, Office hours: Wed 3:00p-5:00p and by appointment (email: jlin6@cs.uh.edu)
Textbook webpage for instructors and students (with lecture slides)
Reading assignments: read chapter 1, review chapter 2 if needed, read chapter 3.
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Selected basic references
Real-Time Operating Systems
Model checking overview.
Model checking examples.
How to do research, write papers/theses, and give presentations (plus career development)
Suggested project topics
Note on Tornado: Set Tornado Registry to Local. This can be done in tools\options\Tornado registry.
Last day to drop class: Nov. 4, 2009.
Homework 1 (due Tuesday, Oct. 13, in class)
Exam 1: Thursday, October 29, 2009 - open-course-textbook, 1 page (both sides) of handwritten notes, no photocopies of any materials, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator ok, review to be held in class before the exam date. Scheduling (chapters 1,3) plus some specification/verification (chapter 4: constructing finite-state graphs and writing CTL formulas; chapter 5: constructing simple state charts; chapter 6: writing RTL formulas).
Schedule of presentations
Assignment 2 (due Tuesday, November 10, 11:59pm, Bonus +10% if submitted by this original due date). Extended till Friday, November 13, 11:59pm. VxWorks guide: http://www-cdfonline.fnal.gov/daq/commercial/vxworks_programmers_guide5.5.pdf
Sample exam problems.
Assignment 3 (programming part, due Monday, December 7, 11:59pm, BONUS +15%). Extended till Friday, Dec 11, 11:59pm, no bonus.
No class on Tuesday, Dec 1, 2009 due to IEEE RTSS Robot Competition
No office hour on Thursday Dec 17

COSC 6384 Real-Time Systems
Course webpage
Teaching assistant: Mr. Jian Lin Office: PGH 313 Office hours: Wednesday 3:00pm-5:00pm and by appointment (email: jlin6@cs.uh.edu)
Textbook webpage for instructors and students (with lecture slides)
Reading assignments: read chapter 1, review chapter 2 if needed, read chapter 3.
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Selected basic references
Model checking overview.
Model checking examples.
How to do research, write papers/theses, and give presentations (plus career development)
Suggested project topics
Homework 1 (due Thursday, Feb. 19, in class) Note updated question 10: Determine whether there is a feasible schedule for the following set of periodic processes. If yes, show the schedule and the steps used to derive it. T1: c21 = 1, c22 = 2, d2 = 6, p2 = 6 T2: c11 = 2, c12 = 1, c13 = 4, d1 = 17, p1 = 18 T3: c3 = 1, d3 = p3 = 18. T1 must rendezvous with T2 after the first, second, and third scheduling blocks (of T2). T2 must rendezvous with T1 after the first scheduling block (of T1). It should be, T1: c11 = 1, c12 = 2, d1 = 6, p1 = 6; T2: c21 = 2, c22 = 1, c23 = 4, d2 = 17, p2 = 18; T3: c3 = 1, d3 = p3 = 18.
Homework 1 due date extended to Tuesday Feb. 24 in class. Bonus (+10%) if turned in on original due date (Feb. 19 in class).
Extra TA (Mr. Jian Lin) office hour, Monday Feb. 23, 3:30-4:30pm.
Exam 1: Tuesday, March 31, 2009 - open-course-textbook, 1 page (both sides) of handwritten notes, no photocopies of any materials, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator ok, review to be held in class before the exam date. Scheduling (chapters 1,3) plus some specification/verification (chapter 4: constructing finite-state graphs and writing CTL formulas; chapter 5: constructing simple state charts; chapter 6: writing RTL formulas).
Schedule of presentations
Assignment 2 (due Thursday, March 26, 11:59pm, Bonus). Extended till Thursday, April 2, 11:59pm.
Note on Tornado: Set Tornado Registry to Local. This can be done in tools\options\Tornado registry.
Last day to drop class: April 7, 2009.
System Day: Friday, April 10
No class 4/14, 16: Dr. Cheng chairing IEEE RTAS Session on Scheduling and presenting a paper titled "An Evaluation of the Dynamic and Static Multiprocessor Priority Ceiling Protocol and the Multiprocessor Stack Resource Policy in an SMP System."
Assignment 3: Programming part (due Monday, May 4, 11:59pm). Extended (program part only) to Friday, May 8, 2009, 11:59pm CDT. Bonus +10% if submitted Monday. Minus 5% each day late.
Assignment 3: Exercises part (due Monday, May 4, 4:00pm, TA's office) - 4: 1, 7, 8; chapter 5: 6; chapter 6: 1, 5, 9(a). Reminder: homeworks and programs are individual assignments; copying others' work is cheating, and will result in an "F" grade plus further disciplinary actions.


COSC 4330/6310 Operating Systems introducing Unix/Linux OS, Windows OS, and Wind River VxWorks Real-Time OS.
Teaching assistant: Mr. Chun-Sheng Chen Office: PGH 577 Office hours: 11:00 - 12:00 MW and by appointment (email: lyons19tw@sbcglobal.net)
TA webpage
Academic honesty
Unix Tutorial for Beginners.
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Unix Books
Reading assignments: OS notes: read chapters 1, 2, 3, 4, 5, 6, 7, 8; Book: review chapters 1 and 2, read chapters 3, 5, 6, 7, 19.1-2, 19.5
Programming assignment 1: due March 3, 11:59pm, bonus. Extended till March 10, 11:59pm. Please click assignment for new clarifications. Extended again till Thursday, March 12, 11:59pm. Extended one more time till Friday, March 13, 11:59pm.
Exam 1 review: March 5, 2009
Exam 1: Tuesday, March 10, 2009, OS Notes chapters 1-5; Book chapters 3, 5, 6, 7, 19.5.1, 19.5.2 (no threads) - Process management, deadlock handling, scheduling.
Extra lab help session at TA's office (PGH 577), Friday, March 6, 11:00a-12:00p.
Selected Sample Exam 1 Solutions.
Programming assignment 2: due April 16, 2009, 11:59pm CDT, bonus +10%. Extended till April 20, 11:59pm.
Exam 2: Tuesday, April 21, 2009, Memory Management, Disk Scheduling. OS notes: chapters 6, 7, 8.
Sample Exam 2 Solutions in TA webpage.
Exam 3: Thursday, April 30, 2009, File Management. OS notes: chapters 1-8, emphasize 9.
Programming assignment 3: due May 4, 2009, 11:59pm CDT. Extended to Friday, May 8, 2009, 11:59pm CDT.
No class 4/14, 16: Dr. Cheng chairing IEEE RTAS Session on Scheduling and presenting a paper titled "An Evaluation of the Dynamic and Static Multiprocessor Priority Ceiling Protocol and the Multiprocessor Stack Resource Policy in an SMP System."




COSC 6384 Real-Time Systems
Course webpage
Teaching assistant: Mr. Jian Lin Office: PGH 313 Office hours: Monday 3:00pm-5:00pm
Textbook webpage for instructors and students (with lecture slides)
Reading assignments: read chapter 1, review chapter 2 if needed, read chapters 3, 4, 5, 6.
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Selected basic references
Model checking overview.
Model checking examples.
How to do research, write papers/theses, and give presentations (plus career development)
Suggested project topics
Homework 1 (due October 2)
Schedule of presentations
Homework 2 (programming assignment, due 11:59pm, Monday, November 3).
Helpful note for homework 2 (programming assignment) and example. Bonus +10%, if submitted by 11:59pm, Monday, November 3. Extended till Wednesday, November 5, 11:59pm (no bonus).
Exam 1: Thursday, October 30, 2008 - open-course-textbook, 1 page (both sides) of handwritten notes, no photocopies of any materials, no image-magnification equipment such as microscopes or magnifiers :), no sharing of any material, calculator ok, review to be held in class before the exam date. Scheduling (chapters 1,3) plus some specification/verification (chapter 4: constructing finite-state graphs and writing CTL formulas).
Sample exam problems.
Homework 1 average score: 90.75/110.
Assignment 3 (programming part) due Tuesday, December 2, 11:59pm. Exercises - chapter 4: 5, 7; chapter 5: 8; chapter 6: 2, 5; exam problem 4(b); due Tuesday, December 2, in class. Exercises - extended, due Thursday, December 4, in class.

COSC 7384 Advanced Real-Time Systems

9/2, 9/4: real-time logic, verification, debugging 9/9, 9/11: QoS optimization, power-aware computing 9/16, 9/18: cyber-physical systems 9/23: FRP, multiprocessor scheduling 9/30, 10/2: ad hoc networks, multiprocessor scheduling

COSC 4330/6310 Operating Systems introducing Unix/Linux OS, Windows OS, and Wind River VxWorks Real-Time OS.
Teaching assistant: TBA Office: Office hours:
Course webpage
Academic honesty
Reading assignments: OS notes:
Unix Tutorial for Beginners.
Sample Exam 1 Problems.
Sample Exam 2 Problems.
Sample Exam 3 Problems.
Unix Books
Reading assignments: OS notes: read chapters 1, 2; book: review chapters 1 and 2, read chapters 3, 6
Assignment 1, due 2/25/2008, 11:59pm. Extended till Friday 2/29, 11:59pm; bonus +15% if turned in by Monday 2/25/2007, 11:59pm.
Exam 1: Tuesday 3/11/2008, OS Notes chapters 1-5; Book chapters 3, 5, 6, 7, 19.5.1, 19.5.2 - Process management, deadlock handling, scheduling.
Assignment 2 (updated), due 4/3/2008 (changed to 4/10 bonus, 4/15 no bonus), 11:59pm.
Exam 2: Thursday 4/10/2008 (changed to Thursday 4/17), Memory management
Assignment 3, due 4/29/2008, 11:59pm.
No class 4/22, 24: Dr. Cheng chairing IEEE RTAS Session on Power Management and presenting papers.
Exam 3: Tuesday 5/6/2008, 2:00-3:30pm, File Management, Protection, Distributed Systems; also some Process and Memory management
Exam 2 graded. Please email or see TA (Mr. Jian Lin) for grades. Solutions will be posted at TA/course website.
COSC 6384 course syllabus.
Course webpage
Teaching assistant: Jian Lin (office hours: T Th 1:15 - 2:15pm in PGH 313)
Textbook webpage for instructors and students (with lecture slides)
Reading assignments: read chapter 1, review chapter 2 if needed, read chapters 3, 4, 5, 6.
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Selected basic references
Model checking overview.
Model checking examples.
How to do research, write papers/theses, and give presentations (plus career development)
Suggested project topics
Textbook ISBN: 978-0-471-18406-5 special seminar by Tom Barrett (QSI President)
Sept. 11, 2007, Tuesday, 4:00pm-5:30pm, 343-PGH, Special Seminar "An Overview of the RTXC Quadros RTOS" by Tom Barrett, president and CEO of Quadros Systems, Inc.
Homework 1, due 9/27/2007 in class.
Assignment 2, due Thursday 10/18 (bonus +10%), 11:59pm. Extended till Thursday 10/25 11:59pm (no bonus).
Exam: Tuesday, October 30, 2007, 4:00-5:30pm, open-course-textbook, 2 pages (8" by 11" page size, 4 sides) of handwritten or typewritten notes, no photocopies of any materials, no image-magnification equipment such as microscopes or magnifiers, no sharing of any material, calculator ok, review to be held in class before the exam date. Chapters 1, 3-6.
Schedule of presentations. Extension till Monday Dec 10, noon, for hardcopy project report. If I am not in my office, slide report under my office door.
Assignment 3: part 1- Scheduler Implementation, due Tuesday 11/27, 11:59 CST; part 2 due Tuesday 11/27 in class.


COSC 7384 Advanced Real-Time Systems.
Schedule of presentations.
COSC 4330 Operating Systems introducing Unix/Linux OS, Windows OS, and Wind River VxWorks Real-Time OS.
Course/TA webpage
Teaching assistant: Jawad Rasheed. Office: PGH 520. Office hours: W 5:30-7:30 pm and by appointment.
Academic honesty
Reading assignments: OS notes: read chapters 1, 2, 3; book: review chapters 1 and 2, read chapters 3, 5, 6, 19.5.1, 19.5.2, 7.
Unix Tutorial for Beginners.
COSC 4330 Sample Exam 1 Problems.
COSC 4330 Sample Exam 2 Problems.
COSC 4330 Sample Exam 3 Problems.
Assignment 1, due 3/1, 11:59pm CST. Note: To keep the input simple: The variables in read(...) will be in the same order they appear in the inputvar declaration. There will be no syntax/semantic errors. Extra note: Extended till Saturday midnight (2 more days, no need to use grace days), bonus +10% if turned in by Thursday 3/1 midnight. Also, these two legal inputs are allowed: read(2,4,1,9) or read(a1,a2,a3,a4) /* a1..a4 stored in the same file or another file or stdin */ Also, no constants (5 here) in inputs like p1 = a1 + 5; Only input or variables.
Exam 1: Tuesday 3/6/2007. Closed book/notes. Bring calculator. OS Notes chapters 1-5; Book chapters 3 (except 3.6), 5, 6 (except 6.7, 6.9), 19.5.1, 19.5.2: Process management and scheduling, (NO deadlock-handling).
Assignment 2, due Tuesday 4/10 (bonus), 11:59pm CST. Extended (full credits) till Monday, April 30, 11:59pm CST. Be sure to clear your shared memory segments and semaphores after using them.
If you like to drop the class, please see me Monday, March 26, 3-4pm.
Exam 2: Thursday 4/26/2007. Closed book/notes. Bring calculator. Emphasis on deadlocks, memory management (including address translation, memory allocation, page fault handling, page replacement), disk scheduling, and file systems. 1 or 2 problems on processes.
Assignment 3, due Monday, April 30, 11:59pm CDT.



COSC 6384 course syllabus.
Course webpage
Teaching assistant: Jian Lin (office hours: W 2:00-4:00)
Textbook webpage for instructors and students (with lecture slides)
Reading assignments: read chapter 1, review chapter 2, read chapter 3.
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Selected basic references
Model checking overview.
Model checking examples.
How to do research, write papers/theses, and give presentations (plus career development)
Suggested project topics
Sample exam problems.
Homework 1, due 2/15/2007.
Homework 2, due 3/8/2007, 11:59pm CST. Extended till Sat 3/10/2007, 11:59pm CST. Bonus 10% if turned in by 3/8/2007.
Exam: March 29, 2007, open-course-textbook, 2 pages (8" by 11" page size, 4 sides) of handwritten or typewritten notes, no photocopies of any materials, no image-magnification equipment such as microscopes or magnifiers, no sharing of any material, calculator ok, review to be held in class before the exam date. Chapters 1, 3-6.
Assignment 3: part 1- Tornado/VxWorks/Programming, due Thursday 4/19, 11:59 CST, extended till Tuesday, 4/24, 11:59 CST; part 2 due Thursday 4/26 in class.
Schedule of presentations.
RTSS 2007 design competition.

COSC 6384 course syllabus.
Course webpage
Teaching assistant: Jian Lin (office hours: W 3:00-5:00)
Textbook webpage for instructors and students (with lecture slides)
Reading assignments: read chapter 1, review chapter 2, read chapters 3, 4, 5, starting 6.
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Selected basic references
Model checking overview.
Model checking examples.
How to do research, write papers/theses, and give presentations (plus career development)
Suggested project topics
Sample exam problems.
Prof. Wayne Wolf of Princeton University will talk about smart cameras, Monday, 9/11, 11:00am.
Homework 1, due 10/3/2006.
Schedule of presentations.
Student travel grants to RTSS 2006: application deadline is October 2.
Exam: October 31, 2006, open-course-textbook, maximum 2 pages (8" by 11" page size, both sides) of handwritten notes, no photocopies of any materials, no image-magnification equipment such as microscopes or magnifiers, no sharing of any material, calculator ok, review to be held in class before the exam date. Chapters 1, 3-6.
Assignment 2, due Thursday 10/26. Q&A on 10/17.
Assignment 3: part 1- Tornado/VxWorks/Programming, part 2- textbook exercises 4.5, 4.7, 4.8, 5.8, 6.1, 6.5, 6.9(a), problem 5 in exam; part 1 due Wed 11/22 midnight, part 2 due Tuesday 11/28 in class.
Project report (5-20 pages, point size 12) due 11/30 in class.


COSC 7384 course:
Model checking overview.
Model checking examples.
Prof. Wayne Wolf of Princeton University will talk about smart cameras, Monday, 9/11, 11:00am.
Schedule of presentations.
Student travel grants to RTSS 2006: application deadline is October 2.
No class on 10/16/2006. Dr. Cheng presenting papers at NSF Workshop on Cyber-Physical Systems.

COSC 6384 (Spring 2006) Real-Time Systems - Embedded Systems; RTOS; Scheduling, Design, and Analysis; Hand-on Lab Practice with the Latest Versions of Wind River VxWorks and Tornado Developement Tools. First Time Teaching QNX Neutrino RTOS.
Course webpage
Teaching assistant: Jian Lin (office hours 314-PGH: W 1:30-2:30, 4:00-6:00)
Textbook webpage for instructors and students (with lecture slides)
Reading assignments: read chapter 1, review chapter 2, read chapters 3, 4, 5, 6.
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Selected basic references
How to do research, write papers/theses, and give presentations (plus career development)
Suggested project topics
Sample exam problems.
Homework 1, due 2/21/2005.
Academic honesty
Click here to access IEEE Xplore digital library.
Click here to access ACM digital library.
Assignment 2, due Monday 3/27 midnight (bonus +10%). Extended till Thursday 3/30 midnight (no bonus).
Exam: April 6, 2006, open-course-textbook, maximum 2 pages (8" by 11" page size, both sides) of handwritten notes, no photocopies of any materials, no image-magnification equipment such as microscopes or magnifiers, no sharing of any material, calculator ok, review to be held in class before the exam date.
No class on 4/4/2006. Dr. Cheng, one of the organizers of the IEEE-CS Real-Time and Embedded Technology and Applications Symposium (RTAS), will present papers at this venue.
Schedule of presentations.
Assignment 3: part 1- Tornado/VxWorks/Programming, part 2- textbook exercises 4.6, 4.7, 5.8, 6.2, 6.5; part 1 due Wednesday 4/26 midnight (BONUS), part 2 due Thursday 4/27 in class. Part 1 extended till Monday 5/1 midnight (no bonus).
Information Security Symposium here in PGH-232 this Saturday 4/22. I will give a short talk on intrusion detection in embedded systems.
Final project report extended due date: Morning, May 8, 2006.


New COSC 4330 Operating Systems introducing Unix/Linux OS, Windows XP OS, Wind River VxWorks, and QNX Neutrino Real-Time OS.
Course/TA webpage
Teaching assistant: Bin Lu (office hours 314-PGH: T Th 2-3pm)
Academic honesty
Reading assignments: OS notes: read chapters 1-6; book: review chapters 1 and 2, read chapters 3, 5, 6, 7, 19.5.1, 19.5.2, 8.
Unix Tutorial for Beginners.
COSC 4330 Sample Exam 1 Problems.
COSC 4330 Sample Exam 2 Problems.
COSC 4330 Sample Exam 3 Problems.
Assignment 1, due 2/23/2006 midnight. Extended till Saturday 2/25 midnight. Bonus (+10%) if submitted on original due time (2/23/2006 midnight).
Exam 1: Tuesday 2/28/2006. Closed book/notes. Bring calculator. OS Notes chapters 1-5; Book chapters 3 (except 3.6), 5, 6 (except 6.7, 6.9), 7, 19.5.1, 19.5.2: Process management, scheduling, deadlock-handling.
Unix Books
2/16/2006: Q&A on assignment 1.
Assignment 2, due 3/28/2006 midnight.
Be sure to destroy your semaphores after creating/using them. Check using 'ipcs' and remove with 'ipcrm'.
No class on 4/4 and 4/6, 2006. Dr. Cheng, one of the organizers of the IEEE-CS Real-Time and Embedded Technology and Applications Symposium (RTAS), will present papers at this venue.
Exam 2: Tuesday 4/11/2006. Closed book/notes. Bring calculator. Deadlock-handling, memory and virtual memory management. Book chapters 7, 8, 9.
Assignment 3, due 4/25/2006 midnight. Extended till May 1, midnight (BONUS). Extended again till May 4, midnight (NO BONUS). NOTE: The number_of_page_frames_per_process is fixed, given as input r. The free frames pool can vary between min and max, also given as inputs. You'll need to control the number of active processes and run the second-chance algorithm to accomplish this. --- 4. Assume that the page replacement algorithm runs as a separate process which is signaled each time a page frame is removed from the pool. The replacement process attempts to maintain a pool size between min and max frames using the second chance (or clock) algorithm. --- You may need to use Unix processes, but the simulation can be done without them if designed properly.
Exam 3: Thursday 4/27/2006. Process, memory, and file management; disk scheduling. Focus on materials covered in the lectures. Materials covered in exams 1 and 2, plus book sections 10.1-3, 10.6, 11.1-2, 12.4, 14.1-6. Review on 4/25.


Nominate your favorite professor for a teaching/achievement award! If you enjoy my teaching, please email a short nomination letter to chair Dr. Marc Garbey.
COSC 6384 (Fall 2005) Real-Time Systems - Embedded Systems; RTOS; Scheduling, Design, and Analysis; Hand-on Lab Practice with the Latest Versions of Wind River VxWorks and Tornado Developement Tools. First Time Teaching QNX Neutrino RTOS.
Jeff Schaffer, Field Applications Engineer of QNX Software Systems, will present a seminar on QNX RTOS in Professor Cheng's COSC 6384 class on 9/15/2005.
Assignment 1, due Thursday 9/22 in class (bonus +10%), extended due date 9/27 in class (no bonus), due to hurricane Rita, extended again till 10/4 in class, bonus if turned in on 9/29. No class on Tuesday 9/27.
Exam: Tuesday 11/1/2005, open-course-textbook, maximum 2 pages (both sides) of handwritten notes, no photocopies of any materials, calculator ok, no sharing of any material, review to be held in class before the exam date.
Schedule of presentations.
Assignment 2, due Thursday 10/20 (bonus). Extended till 10/27.
If you lost an item in class (exam day), please see me during office hours or in class.
Last day to drop the course: 11/2/2005 Wed.
Assignment 3, due Thursday 12/1 (bonus). Extended till 12/5 midnight. Submit exercises and program to TA.
Project report due date: Extended till 12/11/2005 midnight (please slide it into my office).
12/1/2005: Attendance required on last day of class - research outlook and teaching evaluation.
Thanks to Hao Tian for bringing the cookies and sprites.
No office hours on 12/6 and 12/8/2005. Dr. Cheng leading maRTian task team to compete and presenting papers at IEEE-CS Real-Time Systems Symposium.


COSC 4330 Operating Systems introducing Unix/Linux OS, Windows XP OS, Wind River VxWorks, and QNX Neutrino Real-Time OS.
Course/TA webpage
Teaching assistant: Bin Lu, office hours in 314-PGH M,W 1pm-2pm.
Reading assignments: (8/23) OS notes: read chapters 1, 2, 3; book: review chapters 1 and 2, read chapters 3, 6, 5, 7, 8.
Unix Tutorial for Beginners.
Assignment 1, due September 28 midnight. Due to hurricane Rita, extended due date October 4 midnight. No class on Tuesday 9/27.
Jeff Schaffer, Field Applications Engineer of QNX Software Systems, will present a seminar on QNX RTOS in 232-PGH on Friday, 9/16/2005, 11am-noon.
Exam 1: Thursday 11/13/2005, OS Notes chapters 1 and 2; Book chapters 3, 5, 6 - Process management, scheduling.
Assignment 2, due November 8 midnight. Bonus if sequential code (begin-end) allowed within a cobegin-coend pair. Extended till Friday November 11 midnight, bonus (+10%) if submitted by original due date (November 8 midnight).
Last day to drop the course: 11/2/2005 Wed.
Exam 2: Tuesday 11/22/2005, Deadlock handling, memory management.
Extra office hour before exam 2: Monday 11/21, 3:30-4:30pm.
Exam 3: Tuesday 12/6/2005, Process management, memory management, and file management.
Assignment 3, due December 7 midnight. Bonus part: OPT-MOBILE. Extended: Monday 12/12/2005.
No office hours on 12/6 and 12/8/2005. Dr. Cheng leading maRTian task team to compete and presenting papers at IEEE-CS Real-Time Systems Symposium. Please see TA Bin Lu.

New COSC 4397 (Spring 2005) Introduction to Real-Time Systems and Embedded Programming - teaching for the first time Wind River VxWorks and Tornado Developement Tools).
Textbook webpage for instructors and students (with lecture slides)
Tornado tutorial
Reading assignments: read chapter 1, read chapters 3, 4, 5, 6.
Homework 1: due Tuesday 3/1/2005 in class.
Tornado/VxWorks systems are ready for use; client s/w is on the Masm Lab units, 563-PGH.
Homework 2, due 3/24/2005 (bonus), extended 3/31/2005. Have a nice spring break!
Exam 1: 4/5/2005, mainly chapter 3, open-book, calculator ok, review to be held in class before the exam date.
Exam 2: 4/28/2005, open-book, calculator ok, review to be held in class before the exam date.
Homework 3, due 5/2/2005.



COSC 6384 Real-Time Systems with Wind River VxWorks RTOS and Tornado Development Tools (Spring 2005).
Teaching Assistant: Yan Wang
Reading assignments: read chapter 1, review chapter 2, start reading chapter 3.
Homework 1, due Thursday 2/17 in class.
Homework 2 (program) due Thursday midnight 3/24 bonus (hardcopy and email to TA), extended till Monday midnight 3/28.
Exam: 4/7/2005, open-book, calculator ok, review to be held in class before the exam date.
Homework 3 due 4/26/2005 midnight (small bonus), extended 4/28/2005 (no bonus) (hardcopy and email to TA).
Project report due May 2 (several days extension possible, till end of the week, turn in/slide into my office the hardcopy report).
Dr. Albert Cheng chairs RTAS Work-in-Progress Session, March 10, 2005 .
Tornado/VxWorks systems are ready for use; client s/w is on the Masm Lab units, 563-PGH.
Schedule of presentations.

New COSC 4330 Operating Systems introducing Unix/Linux OS, Windows XP OS, and Wind River VxWorks RTOS.
Course package 87 available at the UC copy center.
Teaching assistant: Mr. Wei Kang. Office: PGH 518. Office hours: MW 4:00pm-5:00pm.
Reading assignments: review chapters 1-3, read chapters 4, 7, 6, 8, 9, 10.
Assignment 1. Note: Processes have no start times because we are simulating a batch system: all the processes are ready to run from time zero. If process X tries to LOCK a resource and this resource is locked by another, then process X waits in the queue for this resource until it is at the head of the queue and the lock is released by another. There is no busy wait (using the CPU). Non-blocking means that the process that requests the WRDISK immediately returns to the ready state without waiting for the completion of the write. Non-blocking writes have a lower priority than reads. Hence, TWO queues per disk drive must be maintained, one for the writes and one for the reads. Write starvation is possible as a continuous incoming flow of read requests to any given disk drive would delay forever write requests. There is no need to do anything about it. Disk scheduling policy is nonpreemptive. Note (9-30-2004): Please see assignment for latest updates. Note (10-7-2004): 2-day extension till Oct. 10 midnight, bonus if turned in Oct. 8 midnight).
Exam 1 - Thursday, October 14, 2004, in-class. Chapters 4, 6, 7, 8. Process management, scheduling, deadlock handling.
Assignment 2.
Exam 2 - Tuesday, November 23, 2004, in-class. Chapters 9, 10, 14. Memory management, disk scheduling.
Exam 3 - Thursday, December 2, 2004, in-class. File systems, protection.
Assignment 3.


New COSC 6384 Real-Time Systems with Wind River VxWorks RTOS and Tornado Development Tools (Fall 2004). Check out the OS and software used in the Mars Exploration Rovers.
Textbook webpage for instructors and students (with lecture slides)
Teaching assistant: Ms. Aysha Shaikh. Office: PGH 536. Office hours: MW 2:00pm-4:00pm.
Reading assignments: read chapter 1, review chapter 2, read chapters 3, 4, 5, 6.
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
Tornado tutorial
Selected basic references
How to do research, write papers/theses, and give presentations (plus career development)
Homework 1 , due Tuesday 9/28 in class.
Lab Tornado/VxWorks license problem fixed.
Homework 2 , new due date: Thursday 10/28. Note: check new updates to homework 2.
Exam: 11/4 Thursday, open-book, calculator, chapters 1-6 (NO data flow scheduling). Review: 11/2.
Schedule of presentations.
Homework/Program 3 , due Tuesday 12/2 (non-programming part due at class time, programming part due at midnight-email to TA). Be sure to attend class.
project report due 12/8.
Real-Time Systems Group's paper accepted by IEEE RTAS 2005 (co-located with Embedded Systems Conference in San Francisco) . RTAS 2005 .
Dr. Albert Cheng appointed Chair of RTAS Work-in-Progress Session 2005 .
COSC 6384 Real-Time Systems (Spring 2004). Classroom changed to Melcher Hall MH 112.
Teaching assistant: Mr. Zhen Zhu.
Reading assignments: read chapter 1, review chapter 2, read chapters 3, 4, 5, 6, 7, 8, 10.
Homework 1: 12 textbook exercises 3.1-3.11, 3.13, and 2 extra problems, due 2/23/2004 in class (due date extended: Wed 2/25/2004).
Homework 2: Programming assignment
Homework 3: Programming assignment (Bonus due date: midnight, Monday 4-19-2004; Extended due date: midnight, Friday 4-23-2004)
Homework 4: 8 textbook exercises 4.5, 5.5, 6.1, 6.2, 6.5, 6.7, 7.4, 7.9 (due 5-3-2004 in class, extended to Wed 5-5-2004).
If you are still looking for a project topic, please email me. I have a real-time systems paper that needs revision, and the project is to revise it--a well-defined topic!
Exam (Monday, March 29, 2004): in-class, open textbook, lecture slides, and notes, calculator ok (NO photocopies of the textbook and other materials). Failure to meet these requirements or any form of cheating will result in a grade of "F" and further disciplinary actions.
Outstanding class project reports will be considered for submission to IEEE RTSS 2004 in Lisbon, Portugal.
Spring 2004 Schedule of presentations.

New COSC 4351 Fundamentals of Software Engineering (Spring 2004) covering both general and embedded/real-time software systems. Check out the software used in the Mars Exploration Rovers.
Lecture slides
Teaching assistant: Ms. Lakshmi Goel.
Reading assignments: read SE book, chapters 1, 2, 3, 4, 5 (skip materials on Z), 6, 7, 8; read RTS book, chapters 1, 4.1-4.5, 5; Tornado tutorial.
Monday, April 26, 2004: class starts at 1:30pm instead of 1:00pm due to a NSM/Engineering noon meeting.

Assignment 1 (team project): understand source C code in section 4.5 of RTS book and improve user interface (due Wed 2/25/2004 midnight, due date extended Wed 3/3/2004 midnight, presentations 3/8/2004). Hint: read sections 4.1-4.4 too.
Source code of section 4.5 posted and accessible via a password. Pascal source code being posted at the TA's website.
Assignment 2 (individual, no sharing of answers, but higher-level discussions are ok ): SE book: exercises 4.64, 4.65, 4.71, 4.72, 4.73, 5.7, 5.9, 5.55; RTS book: exercises 4.5, 5.5. Bonus exercise (+10%): SE book: exercise 5.16. Due Monday 4-12-2004 in class, extended Wed 4-14-2004. Solutions posted at the TA's website.
Assignment 3 (team project): Finite-State Execution Graph Generator, due midnight 5/3/2004 (extended to Friday 5/7/2004). Demo in class 5/3/2004.
Bonus Assignment (individual project): Tornado and VxWorks Project, due 5/3/2004.
Exam 1: March 10, 2004 (Wed), in-class, open-textbooks and notes, individual answers, no information/book sharing (NO xerox/photocopied materials). Failure to meet these requirements or any form of cheating will result in a grade of "F" and further disciplinary actions. Materials tested: SE book chapters 1-4, RTS book chapters 1, 4.1-4.5.
Exam 2: April 21, 2004 (Wed), in-class, open-textbooks and notes, individual answers, no information/book sharing, calculator ok (NO photocopies of the textbook and other materials). Materials tested: SE book chapters 4 (untested parts), 5 (no Z, no algebraic spec), RTS book chapter 4 (more model-checking), 5.
Exam 3: May 10, 2004 (Mon), 2:00-3:30pm, in-class, open-textbooks and notes, individual answers, no information/book sharing, calculator ok (NO photocopies of the textbook and other materials). Materials tested: SE book chapters 6 (6.1-6.3 (pages 269-316), 6.5.3, 6.6), 7.1-7.3, 7.6.3, 7.6.4, 8.3, 8.4.3, RTS book chapter 4 (more model-checking), 5
Be sure to attend class this Monday 3/29/2004 and bring your SE book. Exam papers will be distributed.

COSC 4330 Operating Systems Syllabus (Fall 2003)
COSC 4330 Course/TA website
Exam 1 - Thursday, October 16, 2003, in-class. Process management, deadlock handling.
Exam 2 - Thursday, November 13, 2003, in-class. Memory and virtual memory management, disk scheduling.
COSC 4330 Assignment 1. Extension Oct. 10 midnight. Bonus if turned in by Oct. 8 midnight.
COSC 4330 Assignment 2.
COSC 4330 Assignment 3.
No class on 12/2/2003. Dr. Cheng presenting papers at IEEE-CS Real-Time Systems Symposium.

COSC 4397 Intro to Real-Time Systems and Embedded Programming Syllabus (Fall 2003)

Selected basic references

Wind River approves University Program Software License Grant (VxWorks and Tornado) for instruction and research, estimated value over $200,000. Shipped to UH on October 13, 2003. Arriving later this week. Arrived October 16, 2003, being installed! Installation completing... Ready for trial use on PCs #10-#15 on the first row (left-side room of the main computer lab on the 5th floor). Complete on-line manuals available.


COSC 6384 Real-Time Systems Syllabus (Spring 2003)
COSC 6384 Spring 2003 Schedule of presentations. Students presenting at remote sites may want to use large cardboards instead of Powerpoint slides since there is a single stationary camera.
Suggested project topics
Textbook webpage for instructors and students
Tutorial on Formal Analysis and Verification of Embedded/Real-Time Systems
COSC 6384 Course/TA website
COSC 6384 Spring 2002 Project Topics
COSC 6384 Fall 2002 Project Topics

COSC 7384 Advanced Real-Time Systems

COSC 4330 Operating Systems Syllabus (Spring 2003)
COSC 4330 Course/TA website