Difference between revisions of "CS 3210"
m (Added category) |
m |
||
Line 45: | Line 45: | ||
[https://tc.gts3.org/cs3210/2020/spring/index.html Publicly available course webpage] |
[https://tc.gts3.org/cs3210/2020/spring/index.html Publicly available course webpage] |
||
− | [[Category:Courses]] |
+ | [[Category:Courses|^CS^CS]] |
Revision as of 22:43, 8 June 2021
Overview
CS 3210 is a 3 credit hour class taken by Systems and Architecture threads (CS/CompE). It has no lab or recitation period.
This class is heavily project-based.
Topics List
This class teaches some Operating Systems (OS) concepts such as:
- Bootloading (how the processor wakes up and loads the OS kernel)
- Memory Paging
- Process Scheduling
- File systems
- Networking Concepts
How it Fits into the Curriculum
CS 3210 is a required class for Systems and Architecture Threads (both CS and CompE), and is generally taken in your third or fourth year. The class is only a prerequisite for Advanced Operating Systems (CS 4210/CS 6210) but is a gateway course to more advanced graduate level OS courses.
Current Registration Info
CS 3210 is a regular class. This means there is no recitation or lab to register for. Just register for a lecture section.
Prerequisites
At least one of the following:
- C or higher in CS 2200
- C or higher in ECE 3057 (replaced with ECE 3058 in Fall 2021)
- C or higher in ECE 3058
Majors that Require this Class
- Computer Science (Systems and Architecture Threads)
- Computer Engineering (Systems and Architecture Threads)
Past Semesters
Fall 2020
4 projects, 1 midterm, 1 final
Projects were on Xv6, a simple Unix-like teaching operating system, with much of the class material from the associated open-source textbook.
Xv6 is a simple teaching operating system with many features missing. In the class projects, you implement some of those missing features using the C programming language.
"Overall, the projects were time-consuming but fair. The material is really interesting, and detailed project instructions along with a concise textbook and helpful lectures/office hours made those projects doable." - Alexp
Spring 2020 "Rust-mester"
Apparently, the project was very difficult. It involved writing an OS kernel from scratch using the Rust programming languages and testing it on a Raspberry Pi.