Difference between revisions of "CS 3214 Computer Systems"
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 | + | * 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