Description
The objective of this course is to provide you with a general understanding of what system software is involved for an application program to run, both on a single node and over a network, and how this system software is to be used. In support of this, the course will prepare you to do system-level programming. This course will show you how to "use" (as opposed to "design") system components, such as memory, file systems, process control, inter-process communication, and networking. By the end of this course you will have an understanding of the problems and pitfalls typically encountered in the design and implementation of multithreaded and networked applications and systems. More specifically, by the end of this course you should be fairly good at making full use of the services provided by the underlying operating system by programming directly at the operating system interface level. We will review the following aspects of a computer system, in no particular order:
• What is an operating system; what are its components; why system calls?
• Execution of a program; function calls; interrupts.
• The OS application interface; file system; process control; etc.
• Concurrency, process synchronization, inter-process communication
• Network Socket Programming
• Security threats in centralized and distributed systems; authentication, authorization, confidentiality; security mechanisms.
• What is an operating system; what are its components; why system calls?
• Execution of a program; function calls; interrupts.
• The OS application interface; file system; process control; etc.
• Concurrency, process synchronization, inter-process communication
• Network Socket Programming
• Security threats in centralized and distributed systems; authentication, authorization, confidentiality; security mechanisms.
General Information
Instructor
Aakash Tyagi, HRBB-515A
Name | Office Hours | |
---|---|---|
Tanzir Ahmed | When? Where? | |
Yi Cui | When? Where? | |
Radu Stoleru | When? Where? | |
Christopher Ridley | When? Where? | |
Ling Chen | When? Where? | |
Aakash Tyagi | When? Where? | |
jeremy hernandez | When? Where? | |
Rui Liu | When? Where? | |
Ying Fung Yiu | When? Where? | |
Matthew Collie | When? Where? | |
Gregory Krupit | When? Where? | |
Troy Edwards | When? Where? | |
Kiran Yalasangi | When? Where? | |
Ranjita Das | When? Where? | |
Joshua Higginbotham | When? Where? | |
Andrew Kirfman | When? Where? | |
Roger Solis | When? Where? | |
Riccardo Bettati | When? Where? |
Lecture Notes (PDF)
Lecture Notes (PDF)
Posted Date
Apr 24, 2017
Apr 12, 2017
Apr 4, 2017
Mar 30, 2017
Mar 20, 2017
Mar 8, 2017
Feb 22, 2017
Feb 15, 2017
Feb 9, 2017
Feb 7, 2017
Jan 30, 2017
Jan 17, 2017
Machine Problems
Machine Problems
Due Date
May 5, 2017
Apr 24, 2017
May 5, 2017
Apr 21, 2017
Apr 21, 2017
Apr 21, 2017
May 5, 2017
Apr 7, 2017
Apr 7, 2017
Mar 24, 2017
Mar 24, 2017
Mar 24, 2017
Mar 13, 2017
Mar 13, 2017
Mar 13, 2017
Feb 24, 2017
Feb 17, 2017
Feb 17, 2017
Feb 3, 2017
Feb 10, 2017
Feb 10, 2017
Feb 3, 2017
Feb 3, 2017
Feb 3, 2017
Feb 10, 2017