Computing Systems

Computer Sciences and Software Engineering Department
Seattle University, Seattle



This graduate-level core course is about computing systems. Topics include a discussion of processes, threads, multi-core architectures, parallel computing, synchronization, interprocess communication, scheduling, memory management, virtual memory, virtualization, I/O, file systems, storage systems, and system design principles. We will study some systems currently being used in real world (e.g., Google and Facebook) to further our understanding of the aforementioned concepts. We will use Linux/Unix as our model of a systems programming interface for an OS. Several programming projects will be used to gain hands-on experience with systems issues. A solid programming background in C/C++ is assumed. Comfort with Linux/Unix is very helpful.

Textbook

The main textbook is: Operating Systems Concepts, 7th Ed., A. Siberschatz, P. Galvin and G. Gagne, John Wiley & Sons, NY. ISBN 0-471-69466-5.
Recommended reference books:
  • Operating System Concepts Essentials by Abraham Silberschatz, Peter B. Galvin, and Greg Gagne, First Edition, Wiley ISBN-10: 0470889209; ISBN-13: 978-0470889206
  • Modern Operating Systems, Andrew S. Tannenbaum, Third Edition, December 2007, Prentice Hall, ISBN-10: 0136006639, ISBN-13: 978-0136006633

  • You are required to read the supplemental materials the instructor provides. You are also encouraged to read other relevant materials you can find.

    Course Work and Grading

    A series of homework assignments that include projects, paper reviews and presentations will constitute 30% of your grade. Two quizzes will make up 20% each, and the final exam will be worth 30%. The quizzes will cover material presented in lecture.
    Late policy: Late homeworks will not be accepted unless you have a good excuse AND you have made arrangements with me in advance.

    Instructor

    Professor Yingwu Zhu
    Office hours: Mondays & Wednesday 3:30-6pm in EGRN 530 or by appointment
    Email: zhuy AT seattleu DOT edu




    Schedule

    This is a tentative schedule. It will most likely change a little depending on how long it takes to cover the topics and whether I change my mind. I will update the web page as the course progresses.

    While the lecture notes attempt to cover most material that will be presented below, I cannot guarantee that they will cover all of the material. The course is not a correspondence course. You are responsible for attending class and for all the material presented in class.

    Lectures are Mondays and Wednesdays 6:25-8:05PM in BANN 502.

    Date Week # Topic Notes
    Mon, 1-Apr 1 Processes & Threads [Part I]
    Wed, 3-Apr 1 Processes & Threads [Part II] Project #1 out!
    Read Section 4.1-4.3 in Suppl. Materials for Threads [pdf]
    Mon, 8-Apr 2 Multi-core architecture[pdf]
    Wed, 10-Apr 2 Scheduling [pdf]
    Mon, 15-Apr 3 Synchornization [pdf]
    Wed, 17-Apr 3 Synchronization
    Mon, 22-Apr 4 Memory Management [pdf]
    Wed, 24-Apr 4 Memory Management Quiz #1
    Mon, 29-Apr 5 Memory Management [pdf]
    Wed, 1-May 5 VM
    Mon, 6-May 6 Signals & Shared Memory [pdf] Reading materials on Shared Memory
    Wed, 8-May 6 File systems [pdf]
    Mon, 13-May 7 GFS presentation [Farhana, Anna, Gauravi, Prachi, TranHoang] Paper review due for other teams
    Wed, 15-May 7 MapReduce [Tanner, Daniel, Jason, Kevin] Paper review due for other teams
    Mon, 20-May 8 Facebook photo [Qikai, Xiaoxia, Jiayan, Zubair]Paper review due for other teams
    Wed, 22-May 8 Special topics Quiz #2
    Mon, 27-May 9 No class Memorial Day
    Wed, 29-May 9 Special topics
    Mon, 3-Jun 10 Virtualization [pdf] Suppl. Materials for Virtualization[paper#1], [paper#2]
    Wed, 5-Jun 10 Virtualization
    Mon, 10-Jun 11 Final review [pdf]
    Wed, 12-Jun 11Final Exam Final Exam (6-7:50PM)



    Assignments

    Programming assignments will be submitted, compiled and executed in the Linux Server cs1.seattleu.edu. No VPN is needed. You can use putty or SSHclient as the client software to connect to cs1 by using your SU email account and password.

  • Project 1 [graph sample file 1] , [graph sample file 2]
  • Project 2
  • Written Assignment #1 [Solution]
  • Project 3


  • Required Readings & Presentations

    Rules to write a paper review; Guidelines for paper presentation

    Useful links

























    This is a personal WEB site developed and maintained by an individual and not by Seattle University. The content and link(s) provided on this site do not represent or reflect the view(s) of Seattle University. The individual who authored this site is solely responsible for the site's content. This site and its author are subject to applicable University policies including the Computer Acceptable Use Policy (www.seattleu.edu/policies).