The class syllabus can be found here
OSTEP
The above book has a free online version available here. It is also possible to order a hardcover or paperback version of the book from the above website. I think this is an amazing and also easy-to-read book and will strongly suggest the students to obtain a hard-copy of the book, if possible. It has a lot of useful resources that may come in handy even after you graduate. I have learned several things from this book.
The textbook will be complemented by the Advanced Programming in the UNIX Environment (3rd Edition) by Stevens, Rago. You can retrieve a copy of the previous edition of the book through ICON. One of the main objectives of this class is to introduce the students to different Unix utilities (e.g., sed, awk, grep) which will enable the students to automate mundane tasks very efficiently.
Most of the emails regarding grades, homework, programming projects, and exams should be first directed to the Teaching Assistant. The teaching assistant will forward relevant emails to the instructor as needed. For other emails (e.g., scheduling one-on-one meetings) and also emails of personal nature containing sensitive information, should be directed to the instructor directly. The instructor leaves the decision of determining the sensitivity of an email to the students. All emails directed to the instructor should have the prefix ``[CS:\(3620\)]’’ (without the quotes) in the subject line. Complying with this requirement will enable the instructor to process emails faster. For any matter that requires the instructor’s immediate attention, do not hesitate to schedule a face-to-face meeting or call the instructor’s office phone number.
The following will contribute to the final grade of this class.
Date | Topics | Notes |
---|---|---|
August 22nd, 2017 | Introductions + Administrative Announcements + Assessment Test + Introduction to the concepts of OS, Compiler, Bootstrapping | Reading: Chapter 2 of the textbook |
August 24th, 2017 | Gentle introduction to BASH and the C programming language | Bring a computer. |
August 29th, 2017 | Continue with C programming language | Bring a computer; Homework 1 out |
August 31st, 2017 | Continue with C programming language | Bring a computer. |
September 5th, 2017 | Process Abstraction and Process API | Readings: Chapters 4 & 5 of the textbook; Homework 1 due ; Homework 2 out |
September 7th, 2017 | Limited Direct Execution | Reading: Chapter 6 of the textbook |
September 12th, 2017 | Process Scheduling and Multi-level Feedback Queue | Readings: Chapters 7 & 8 of the textbook; |
September 14th, 2017 | Multi-level Feedback Queue & Proportional Share | Readings: Chapter 8 & 9 of the textbook; Homework 2 due ; Homework 3 out |
September 19th, 2017 | Sample midterm + Review of CPU Virtualization | Readings: Chapters 2, 4, 5, 6, 7, 8, and 9 of the textbook |
September 21st, 2017 | Midterm 1 on CPU Virtualization | Test duration: 1 hour (at least) |