Difference between revisions of "CS 3210"
m |
(Added credit count) |
||
Line 1: | Line 1: | ||
== Overview == |
== Overview == |
||
+ | CS 3210 is a 3 credit hour class taken by Systems and Architecture threads (CS/CompE). It has no lab or recitation period. |
||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
+ | ==== Topics List ==== |
||
− | Additionally, you learn about some networking concepts. |
||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
+ | # 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 == |
== 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. |
||
− | Just a regular class |
||
+ | |||
+ | === 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 == |
== Past Semesters == |
||
Line 25: | Line 42: | ||
=== Spring 2020 "Rust-mester" === |
=== 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 |
+ | 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. |
[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] |
Revision as of 12:50, 20 May 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.