CS 367 Planned Schedule, Fall 2023

1 Projects

All projects will be posted and announced as early as we have them prepared, generally with at least two weeks to complete.
These dates are subject to change as needed during the semester.

  • Project 1: Aug 25 - Sep 8 (11:59pm deadline)
  • Project 2: Sep 15 - Oct 6 (11:59pm deadline)
  • Project 3: Oct 10 - Nov 10 (11:59pm deadline)
  • Project 4: Nov 14 - Dec 1 (11:59pm deadline)

2 Test and Quiz Schedule

Tests are bigger milestones, and their dates are announced ahead of time.
Only severe scheduling anomalies would force a delay in test dates.

  • Quizzes:
    • Each Weely Quiz Releases at 6am on Tuesdays and must be started by 11:59pm on Thursdays.
      • If you begin on time, but finish after 11:59pm on Thursday, it will be marked late. This is a bug in Blackboard. As long as you started it on time, you will be good.
      • If this happens to you, send an email to your Professor directly, and we can verify and remove the late mark from your quiz.
    • These weekly quizzes will be done on Blackboard.
    • There may be additional quizzes beyond the topics listed on this schedule.
    • There are no makeups for a missed or late quiz.
  • Midterm:
    • Midterm: The week of October 16th
      • Covers Chapters 2, 3.8-3.9 (No Assembly), 9.9, 8.1-8.6
        • Data Representation (Bits, Bytes, Integers, Floating Point)
        • Aggregate Data (Arrays and Structs)
        • Dynamic Memory
        • Processes
        • Signals
        • Unix I/O
    • More information will be provided as the date closes in.
    • The exams will given in-person during your normal class session.
  • Final Exam: See Exam Schedule for the Date and Times.
    • The Final Exam is Comprehensive
    • https://registrar.gmu.edu/wp-content/uploads/Final-Exams-202370.pdf
      • Section 001 (T/Th Mornings) with Prof. Mughal
        • 7:30am - 10:15am on Thursday, Dec 7th
      • Section 003 (M/W Mornings) with Prof. Andrea
        • 7:30am - 10:15am on Monday, Dec 11th
      • Section 004 (T/Th Afternoons) with Prof. Mughal
        • 10:30am - 1:15pm on Thursday, Dec 7th
      • Section 005 (F Mornings) with Prof. Andrea
        • 10:30am - 1:15pm on Friday, Dec 8th
    • The Final will be taken during these University Scheduled Times in your normal classroom.

3 Topics and Readings

Below is a tentative schedule, which is subject to change as needed.

  • This is the Planned Schedule of Topics.  Individual lectures may vary, but this this the plan.
    • This means that the topics below are general indications of when they will be instructed.
      • Each lecture section may vary in timing on individual topics.
      • Due to the Holidays, some classes may be out of sync by one lecture for some of the semester.
  • Holidays:
    • Sep 4th: Labor Day
      • Monday is a Holiday and the University is Closed.
      • Monday Classes are Cancelled This Week.
      • The rest of the Week is Normal Classes.
    • Oct 9th: Fall Break
      • Monday is a Holiday and the University is Closed.
      • Monday Classes meet on Tuesday.
      • Tuesday Classes are Cancelled.
      • The rest of the Week is Normal Classes.
    • Nov 22 - 24th: Thanksgiving Break
      • Monday Classes and Tuesday Classes meet as Normal.
      • Wednesday, Thursday, and Friday are Holidays and the University is Closed.
Week
Lecture Topics Text Readings Weekly Quiz Topic Fri. Recitation
1
Aug 21 - 25
Course Intro
Data Types and Sizes
Ch. 1 (Overview)
Ch. 2.1 (Data Storage)
None C Review
Overview of Project 1
2
Aug 25 - Sep 1
Integer Representation Ch. 2.2 (Representation)
Ch. 2.3 (Arithmetic)
C Basics Data Types
Sep 4th, Labor Day: Monday Holiday. Tuesday - Friday Normal Classes
3
Sep 5 - 8
Floating Point Ch. 2.4 (Representation)
Ch. 2.4.4 (Rounding)
Data Types Integer Rep
4
Sep 11 - 15
Floating Point
Aggregate Types
Ch. 2.4 (Arithmetic)
Ch. 3.8 - 3.9 (Arrays, Structs)
Integer Rep Floating Point Rep
5
Sep 18 - 22
Dynamic Memory
Processes
Ch. 9.9 (Heap)
Ch. 8.1 - 8.4 (Process Creation)
Floating Point Rep Floaint Point Ops
Aggregate Types
6
Sep 25 - 29
Processes
Signals and Unix I/O
Ch. 8.1 - 8.4 (Process Management)
Ch. 8.5 (Signals), 10.9-10.10 (dup2)
Floating Point Ops
Aggregate Types
Dynamic Memory
7
Oct 2 - 6
Concurrency and Threads
Asm Expressions
Ch. 12.3-12.4 (Threads)
Ch. 3.1 - 3.5 (Assembly Basics)
Dynamic Memory Processes and Exceptions
Oct 9th, Fall Break: Monday Holiday. Monday classes on Tuesday. Wednesday - Friday Normal Classes
8
Oct 10 - 13
Asm Foundations Ch. 3.1 - 3.5 (Assembly Basics) Processes Signals and Unix I/O
*Extra Quiz (Fri - Sat at 11:59pm): Signals and Unix I/O
9
Oct 16 - 20
MIDTERM
Asm Aggregate Types

Ch. 3.8 - 3.9 (Arrays and Structs)
No Quiz Assembly - Expressions
10
Oct 23 - 27
Asm Control Flow Ch. 3.6 (Assembly Control Flow) Assembly Basics Assembly Expressions
11
Oct 30 - Nov 3
Asm Procedures Ch. 3.7 (Assembly Procedures) Assembly Expressions Assembly Control Flow
12
Nov 6 - 10
Caching Ch. 6.2 - 6.4 (Caching) Assembly Control Flow Assembly Procedures
13
Nov 13 - 17
Virtual Memory Ch. 9.1 - 9.6 (Virtual Memory) Assembly Procedures Caching
Nov 22 - 24, Thanksgiving Break: Wednesday - Friday No Classes
14
Nov 20 - 21
CPU Architecture
Thanksgiving Break
Ch. 4.4 (Multi-Stage and Pipelining) No Quiz No Recitation
15
Nov 27 - Dec 1
Digital Logic
Linking
Ch. 4.2 (Digital Logic)
Ch. 7 (Linking)
Caching Virtual Memory
*Video Reciation (Fri Release, No Submission): Architecture and Linking
*Extra Quiz (Fri - Sat at 11:59pm): Architecture and Linking
16
Dec 4 - 5
Reading Days
Finals - See the Final Exam information at the top for Details