- Course Number: 01:198:416
- Instructor: Badri Nath
- Course Type: Undergraduate
- Semester 1: Fall
- Semester 2: Spring
- Credits: 4
To convey a thorough understanding of the basics of an operating system by studying techniques and algorithms for providing services in a computer system, and to understand implementation aspects of popular systems by means of case studies.
- Syllabus: https://docs.google.com/document/d/e/2PACX-1vQ631tZZuvLc8Hac0cKBCxOwoMYhI7fFaRPYdO8XsDq4SkL-ACT1_c6dqI_WoyMhQ/pub
- Video Intro: https://www.youtube.com/watch?v=omRNR8cn70w
- Instructor Profile: Nath, Badri
- Prerequisite Information:
- A grade below a "C" in a prerequisite course will not satisfy that prerequisite requirement.
- Course Links: 01:198:214 - Systems Programming
Process management, synchronization, scheduling and deadlocks
Memory management, virtual memory
I/0 management, file systems,
Queuing theory, performance evaluation
Case studies of UNIX
- Expected Work: Homework assignments, programming assignments
- Exams: 2 hourlies and a final exam
- Learning Goals:
Computer Science majors ...
- will be prepared to contribute to a rapidly changing field by acquiring a thorough grounding in the core principles and foundations of computer science (e.g., techniques of program design, creation, and testing; key aspects of computer hardware; algorithmic principles).
- will acquire a deeper understanding on (elective) topics of more specialized interest, and be able to critically review, assess, and communicate current developments in the field.
- will be prepared for the next step in their careers, for example, by having done a research project (for those headed to graduate school), a programming project (for those going into the software industry), or some sort of business plan (for those going into startups).