CS370: Operating Systems

[Schedule] [Assignments] [Grading] [Syllabus] [Infospaces] [Canvas] [Home]

Spring 2023
CS370 is a core undergraduate course taken by junior undergraduate students. We will explore the broad range of issues that underlie modern Operating Systems. In particular, we focus on key concepts and algorithms that are used in both commercial and open-source operating systems. This course will cover the following broad areas:
  1. Basic operating system terminology.
  2. Processes and thread management.
  3. Scheduling algorithms
  4. Memory management concepts
  5. Interprocess communication
  6. Synchronization
  7. Deadlocks and resource management
  8. File System and storage architecture
  9. Symmetric multiprocessing
  10. Virtualization
We will be covering virtualization and containers as well. Virtual machines are used heavily in data centers and provide excellent properties such as isolation, consolidation, and support for legacy applications. We will look at Type-1 and Type-2 hypervisors.

Lecture Coordinates
Clark A201 on TTH 12:30-1:45 pm

Computer and peripherals

Course Objectives:
Upon successful completion of this course students will be able to:

  1. Explain basic operating system terminology
  2. Explain processes and thread management.
  3. Distill core concepts in scheduling algorithms and develop tools to assess their performance.
  4. Synthesize diverse concepts in memory management.
  5. Contrast mechanisms for interprocess communications
  6. Distill and build upon core concepts in process and task synchronization
  7. Design resource management schemes that mitigate deadlocks
  8. Explain file systems and storage architecture
  9. Contrast virtualization and containers alongside identifying when one approach outperforms the other

Professor Graduate Teaching Assistants
  Shrideep Pallickara

Office Hours: CSB-364 and via Zoom 3:00-400 PM on Fridays
E-mail: compsci_cs370@colostate.edu
(with the obvious change)
Tel: 970.492.4209

All e-mails should be addressed to:

Matt Young

Chungsoon Jung

Krishnavamsi Gujju

Undergraduate Teaching Assistants
Blake Davis

Samuel White
Monday Tuesday  Wednesday Thursday Friday Saturday
Matt Young 12:00-3:00 pm       12:00-2:00 pm 1:00-3:00 pm
Changsoo Jung   3:00-6:00 pm 5:00-7:00 pm 4:00-5:00 pm    
Krishnavamsi Gujju 10:00-11:00 am   4:00-6:00 pm   1:00-3:00 pm  
  1:00-2:00 pm          
  5:00-6:00 pm          
Blake Davis 2:30-4:30 pm   2:30-4:30 pm      
Samuel White 12:30-2:30 pm   12:30-2:30 pm    

Department of Computer Science, Colorado State University,
Fort Collins, CO 80523 USA
© 2023 Colorado State University