CSCI 2330
Foundations of Computer Systems

Bowdoin College
Fall 2022
Instructor: Sean Barker

Schedule

The course schedule is tentative and subject to change. This page will be updated frequently to reflect the most up-to-date schedule. Chapter sections refer to the Computer Systems textbook.

DateClassTopicReadingsSlidesExercises
WedAug 311Introduction, Lab 0Ch. 1 (skim) Intro Slides
FriSep 22Numbering SystemsCh. 2.1 Representation Slides Binary Exercises
MonSep 53Bitwise OperatorsCh. 2.2
WedSep 74Integer RepresentationsCh. 2.3 Representation Exercises
FriSep 95Bit Puzzles, Lab 1Bitpuzzle Exercises
MonSep 126Integer Logic, Floating-Point BasicsLogic Exercises
WedSep 147Floating-Point RepresentationsCh. 2.4 Float Exercises
FriSep 168Memory and EndiannessMemory Slides
MonSep 199PointersPointers tutorial Pointer Exercises
WedSep 2110Arrays and StringsArray Exercises
FriSep 2311Memory Allocation, Lab 2
MonSep 2612Debugging, Lab D
WedSep 2813x86-64 ISA, Data MovementCh. 3.1-3.4 x86-basics Slides
FriSep 3014x86 ArithmeticCh. 3.5 Operand Exercises
MonOct 315Condition Codes & ConditionalsCh. 3.6 x86-control Slides
WedOct 516Loops, Reverse EngineeringAssembly Exercises
FriOct 7No Class: Work on labs
MonOct 10No Class: Fall Break
WedOct 1217Reverse Engineering, Lab 3GDB Reference Gdb Exercises
FriOct 1418Switches & Jump Tables
MonOct 1719Procedures & StacksCh. 3.7 x86-procedures Slides
WedOct 19Midterm Exam
FriOct 2120Procedure Memory
MonOct 2421Arrays & StructsCh. 3.8-3.9 x86-structures Slides
WedOct 2622Buffer OverflowsCh. 3.10 Buffers Slides
FriOct 2823Code Injection Attacks, Lab 4
MonOct 3124Return-Oriented Programming
WedNov 225Caching & Cache DesignsCh. 6.1 Caching Slides
FriNov 426Direct-Mapped CachesCh. 6.4 Caching Exercises
MonNov 727Associative CachesAssociative Exercises
WedNov 928Locality, Lab 5Ch. 6.2-6.3, 6.5
FriNov 11No Class: Instructor away
MonNov 1429The Memory Hierarchy, ProcessesCh. 8.2 Process Slides
WedNov 1630Exceptional Control FlowCh. 8.1
FriNov 1831Process Control & ShellsCh. 8.3 Fork Exercises
MonNov 2132Lab 5 Discussion
WedNov 23No Class: Thanksgiving break
FriNov 25No Class: Thanksgiving break
MonNov 2833Process Control & SignalsCh. 8.4-8.5
WedNov 3034Zombies, Lab 6
FriDec 2No Class: Instructor away
MonDec 535Concurrency & Threads
WedDec 736Lab 6 Discussion
FriDec 937Virtual Memory & Wrap-upCh. 9.1 Vm-wrapup Slides