Quick Links

Top of Syllabus

Course Info

Overview Sections Schedule Office Hours Canvas/Piazza

Grading

Breakdown Policies Projects Exams Quizzes Recitations

Course Policies

Accommodations Zeus Server Honor Code

GMU Policies

Privacy Inclusion Disability Services Title IX

Contact Info

Email

Course Overview

Course: CS 367
Credits: 4
Repetition: Limited to 3 Attempts (see AP. 1.3.4 in the Catalog)
Modality: In-Person Lecture (Online Lectures only in Snow Days or Campus Shutdowns)

Course Description:

CS367 provides an introduction to the field of Systems Programming. This is an area of programming wherein the software written generally provides services to other software.

Examples of Systems Programming are Operating Systems, Game Engines, Embedded Systems Programming, Industrial Automation, and Networking.

This course will prepare you for CS471 (Operating Systems), CS465 (Architecture), CS455 (Networking), and various other courses with systems level programming.

Textbook

Required Textbook: "Computer Systems: A Programmer's Perspective (3rd ed.) by Randal Bryant and David O'Hallaron (Prentice Hall).

Course Outcomes

  1. Demonstrate understanding of data representation at machine level, including binary numeric encodings, data structures, and Boolean operations.
  2. Demonstrate understanding of program representation at the machine level using assembly language, including control flow, procedures, and file linking.
  3. Demonstrate practical techniques of system tools to understand low level behaviors of programs, including debuggers.
  4. Understanding of basic CPU design including circuits, pipelining, and digital logic.
  5. Demonstrate understanding memory concepts including virtual memory, caching, and dynamic memory layout.
  6. Demonstrate understanding of computer processes, including its lifecycle and communications with the system.

Prerequisites

Topics for this Semester Will Include:

Sections

All sections are taught in-person.

Lecture Sections: Prof. Kevin Andrea
Section Time Location
003 T/Th 1:30pm - 2:45pm Horizon Hall 2009
004 T/Th 3:00pm - 4:15pm Horizon Hall 2009

Lecture Sections: Prof. Angkul Kongmunvattana
Section Time Location
007 T/Th 9:00am - 10:15am Exploratory Hall L102

Lecture Sections: Prof. Yutao Zhong
Section Time Location
002 T/Th 12:00pm - 1:15pm Horizon Hall 2009
006 T/Th 3:00pm - 4:15pm Horizon Hall 2014

Recitation Sections
Section Time Location GTA Instructor
301 F 9:30am - 10:20am Buchanan Hall D023 TBA
302 F 10:30am - 11:20am Buchanan Hall D023 TBA
303 F 11:30am - 12:20pm Exploratory L102 TBA
304 F 12:30pm - 1:20pm Horizon Hall 1012 TBA
305 F 1:30pm - 2:20pm Horizon Hall 1008 TBA
306 F 2:30pm - 3:20pm Horizon Hall 1012 TBA
307 F 3:30pm - 4:20pm Horizon Hall 1012 TBA

Schedule

These schedules are subject to change as needed during the semester.

Planned Schedule: CS367 Planned Schedule

Office Hours

Office Hours Policies

Office Hours Times

Times and Locations will be kept updated on Piazza and on Canvas.

Professor's Office Locations

Professor Location Map
Prof. Andrea Buchanan Hall D217C Map Link: Buchanan Hall in the CS Undergraduate Office on the Second Floor.
Prof. Kongmunvattana TBD Map Link: TBD
Prof. Zhong Engineering 4433 Map Link: Engineering Building, room 4433 on the Fourth Floor.

GTA Office Hours

GTA Office Hours (All GTAs): Map Link: Engineering Building 4456 on the Fourth Floor.

Canvas and Piazza

Canvas

Canvas Link: https://canvas.gmu.edu

Piazza

This term we will be using Piazza for class discussion. The system is highly catered to getting you help fast and efficiently from classmates, the TA, and your Professors. Rather than emailing questions to the teaching staff, we encourage you to post your questions on Piazza.

For security, we will be posting the Piazza Access Code on Canvas.

Piazza Link: https://piazza.com/gmu/fall2024/cs367

Piazza Policies

Grading

The course will have two midterms and a final. Much of the work during the semester will be completing projects, as well as regular recitation activities (written and digital).

In general, all grades should be available about two weeks after submission.

Semester Grades

Category Grade % Notes
Projects 28% Four Projects (7% Each)
(Note: Projects Average >= 60% to Pass the Course)
Quizzes 6% Lowest Two Quizzes Dropped
Recitations 6% Participation Based, One Dropped
Midterms (2x) 15% each
(30% total)
No Replacement Policies
Final 30% Cumulative

Grading Scale

Grade Cut-Off Grade Cut-Off Grade Cut-Off Grade Cut-Off
A+ 98% B+ 88% C+ 78% D 60%
A 92% B 82% C 72% F 0%
A- 90% B- 80% C- 70%

Grading Policies

Grade Contesting

Project Policies

Exam Policies

Quiz Policies

Recitation Policies

Accommodations

Disability Services provides a variety of Academic Accommodations that include Extended Time of Quizzes and Exams, Extended Project time, Reduced Distraction Environments for Exams, Additional Breaks during Tests, and other forms of support to help ensure fair access to the lectures and materials.

Disability Services will also work with students with temporary needs, such as following an accident or other short-term injury. This is important, because the Accommodations will be provided for all of your classes and provide for the necessary time for your recovery as well.

Disability Accommodations Policies

Computer Accounts

This is a Systems Programming class. Unlike CS 262 or CS 222, which are general-purpose C courses for any computer system, this course is based on building programs for a specific system. For CS 367, that system is Zeus.

Zeus is a Linux computer running Red Hat Enterprise Linux and is administerd by the College of Engineering and Computing for our use. Some of our programs will involve libraries that have been pre-built on Zeus, and some programs will use system specific features that may only build properly on Zeus.

Connecting to Zeus

Zeus Policies

Honor Code

The honor code at George Mason is an important part of our academic culture. A degree from this institution should be a direct measure of your own progress and abilities, and as such at all times we must ensure that all work that should be your own is your own.

We take the honor code quite seriously. Any attempts at copying or sharing code, algorithms, or other violations of the honor code simply will not be tolerated.

As seductively simple as it may seem to just copy and paste work from a friend or online source, remember that it is just as easy to compare your work electronically, and discover the similarities. We use automated software to flag suspicious cases, and then review them by hand to find the cases that must be submitted to the Office of Academic Integrity. Repeat to yourself: it's not worth trying to cheat. We will catch it, and sadly but surely, we will turn it in.

The penalty for cheating will always be far worse than a zero grade, to ensure it's not worth taking the chance.

Honor Code Policies

Honor Code Responsibilities

Honor Code Links and Specifics

Privacy

All course materials posted to Canvas or other course site are private; by federal law, any materials that identify specific students (via their name, voice, or image) must not be shared with anyone not enrolled in this class.

To protect your privacy, we also cannot list your GMU email address on any public forum or provide it to any other students. You may, of course, give your email address to any other students.

Video recordings of class meetings that are shared only with the instructors and students officially enrolled in a class do not violate FERPA or any other privacy expectation.

Personal Privacy Statements

Inclusion

Every student in this class is exactly where they belong and it is our honor to welcome each of you to join us in learning throughout this semester. Every student in this class, regardless of background, sex, gender, race, ethnicity, class, political affiliation, physical or mental ability, veteran status, nationality, or any other identity category, is an equal member of our class.

You have the right to be called by whatever name you wish, to be referred to by whatever pronoun you identify, and to adjust these at any point.

If you feel uncomfortable in any aspect of our instruction that results in any barrier to your inclusion in this course, please contact your professor directly.

Disability Services

Students with a disability or other condition (documented with GMU's Office of Disability Services) that may impact academic performance should speak with the professor as soon as possible to discuss appropriate accommodations.

If you are in a situation that even temporarily affects your ability to learn or work, such as with a broken limb or other such injury, contact the Office of Disability Services to get accommodations.

We are quite happy to assist as is appropriate, but it must be documented ahead of time by ODS.

Policies

Sexual Harassment and Interpersonal Violence Policies

As a faculty member and designated "Responsible Employee," I am required to report all disclosures of sexual assault, interpersonal violence, and stalking to Mason's Title IX Coordinator per university policy 1412.

If you wish to speak with someone confidentially, please contact:

Email Address and Required Subject Information

Prof. Andrea Email: kandrea @ gmu.edu Prof. Kongmunvattana Email: akongmun @ gmu.edu

Prof. Zhong Email: yzhong @ gmu.edu

Email Policies