Difference between revisions of "CS 3214 Computer Systems"

From Gobblerpedia
Jump to: navigation, search
imported>Mutantmonkey
m (Mutantmonkey moved page CS 3214 to CS 3214 Computer Systems: Make course page naming consistent)
imported>Mutantmonkey
(CS 3204 link, also s/systatd/sysstatd/)
 
Line 1: Line 1:
'''CS 3214: Introduction to Computer Systems''' is a required [[Computer Science]] course that focuses on operating system principles as they are relevant to appliation-level programmers. The course was designed by [[Godmar Back]] to replace [[CS 3204|CS 3204: Operating Systems]], and serves as a prerequisite to the Systems and Networking Capstone course. In addition to Back, the class has historically been taught by [[William McQuain]], [[Ali Butt]], and [[Dennis Kafura]].
+
'''CS 3214: Introduction to Computer Systems''' is a required [[Computer Science]] course that focuses on operating system principles as they are relevant to appliation-level programmers. The course was designed by [[Godmar Back]] to replace [[CS 3204 Operating Systems|CS 3204: Operating Systems]], and serves as a prerequisite to the Systems and Networking Capstone course. In addition to Back, the class has historically been taught by [[William McQuain]], [[Ali Butt]], and [[Dennis Kafura]].
  
 
Topics covered include: operating systems design and architectures; processes, threads, synchronization techniques, deadlock; CPU scheduling; system call interfaces, system level I/O and file management; shell programming; separate compilation, loading and linking; interprocess communication (IPC); virtual and physical memory management and garbage collection; network protocols and programming; virtualization; performance analysis and optimization.
 
Topics covered include: operating systems design and architectures; processes, threads, synchronization techniques, deadlock; CPU scheduling; system call interfaces, system level I/O and file management; shell programming; separate compilation, loading and linking; interprocess communication (IPC); virtual and physical memory management and garbage collection; network protocols and programming; virtualization; performance analysis and optimization.
Line 8: Line 8:
 
* An extensible shell (esh) that can run modules written by other students
 
* An extensible shell (esh) that can run modules written by other students
 
* A threadpool
 
* A threadpool
* A multithreaded systatd web server
+
* A multithreaded sysstatd web server
  
 
[[Category:Courses]]
 
[[Category:Courses]]

Latest revision as of 07:20, 28 January 2013

CS 3214: Introduction to Computer Systems is a required Computer Science course that focuses on operating system principles as they are relevant to appliation-level programmers. The course was designed by Godmar Back to replace CS 3204: Operating Systems, and serves as a prerequisite to the Systems and Networking Capstone course. In addition to Back, the class has historically been taught by William McQuain, Ali Butt, and Dennis Kafura.

Topics covered include: operating systems design and architectures; processes, threads, synchronization techniques, deadlock; CPU scheduling; system call interfaces, system level I/O and file management; shell programming; separate compilation, loading and linking; interprocess communication (IPC); virtual and physical memory management and garbage collection; network protocols and programming; virtualization; performance analysis and optimization.

The course tends to have the same projects year-to-year, including:

  • Buffer lab, which requires students to use buffer overflows to execute undefined behavior
  • A malloc implementation
  • An extensible shell (esh) that can run modules written by other students
  • A threadpool
  • A multithreaded sysstatd web server