CS 324: Systems Programming - byu-cs/wiki GitHub Wiki
General Information
Attribute | Value |
---|---|
Semesters Taught | Fall & Winter |
Typical number of sections | 2 |
Technologies Used | C |
Workload
There are four labs spread throughout the semester with homework assignments mixed in. Each of the labs were fairly challenging and you should probably plan on spending 10-30 hours on each. Each homework assignment will probably take 1-3 hours.
Hopefully this goes without saying but you must attend class if you want a good grade.
If you understand the concepts well and are comfortable in C, this class won't be much of a burden but will still demand a considerable amount of time. If you are not comfortable in C or miss class frequently, completing the labs will probably be very difficult and time consuming (I heard of some people spending 40+ hours on the last lab especially).
Learning Outcomes
?
Homework
There are also several homework assignments spread out between labs and midterms. These were very helpful in understanding the content for the labs and midterms. They were pretty manageable but plan on probably a 1-3 hours per assignment.
Projects
There are 4 main labs for this class (as of Winter 2018):
- Shell lab
- DNS resolver
- Proxy (threaded)
- Proxy (I/O Multiplexing)
Each of these labs were fairly challenging and you should probably plan on spending 10-30 hours on each. If you understand the concepts, they are mostly straightforward but the added challenge of programming in C adds a few hours.
Tests
There were two midterms. Each were challenging but the average for both was probably B+ to A- range. Definitely recommend spending a good amount of time studying.
The best preparation for these tests is actually doing the course work and attending class. This was not a reading heavy class.