CSCI 2330
Foundations of Computer Systems

Bowdoin College
Fall 2021
Instructor: Sean Barker


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.

WedSep 11in-personIntroduction, Lab 0Ch. 1 (skim) Intro Slides
FriSep 32in-personNumbering SystemsCh. 2.1 Representation Slides Binary Exercises
MonSep 63in-personBitwise Operators
WedSep 84in-personInteger RepresentationsCh. 2.2 Representation Exercises
FriSep 105in-personBit Puzzles, Lab 1Ch. 2.3 Bitpuzzle Exercises
MonSep 136in-personInteger RepresentationsLogic Exercises
WedSep 157in-personFloating-Point RepresentationsCh. 2.4 Float Exercises
FriSep 178in-personFloating-Point, MemoryMemory Slides
MonSep 209in-personMemory and Pointers Pointers tutorial Pointer Exercises
WedSep 2210in-personArrays and StringsArray Exercises
FriSep 2411in-personMemory Allocation, Lab 2
MonSep 2712in-personDebugging, Lab DGDB Reference Sheet
WedSep 2913in-personMachine Code & x86-64Ch. 3.1-3.4 x86-basics Slides
FriOct 114in-personData MovementCh. 3.5 Operand Exercises
MonOct 415in-personArithmetic & Condition CodesCh. 3.6 x86-control Slides
WedOct 616in-personConditionals, Reverse Engineering
FriOct 817in-personLoops, Lab 3Gdb Exercises
MonOct 11No Class: Fall Break
WedOct 1318in-personSwitches & Jump Tables
FriOct 1519in-personProcedures & StacksCh. 3.7 x86-procedures Slides
MonOct 18in-personMidterm Exam
WedOct 2020in-personProcedure Memory
FriOct 2221in-personArrays & StructsCh. 3.8-3.9 x86-structures Slides Multiarray Exercises
MonOct 2522in-personStructs & Buffer OverflowsCh. 3.10 Buffers Slides
WedOct 2723in-personCode Injection Attacks
FriOct 2924in-personROP Attacks, Lab 4
MonNov 125in-personData Storage & CachingCh. 6.1 Caching Slides
WedNov 326in-personDirect-Mapped CachesCh. 6.4
FriNov 527in-personCaching & AssociativityCaching Exercises
MonNov 828in-personAssociative CachesAssociative Exercises
WedNov 1029in-personLocality, Lab 5Ch. 6.2-6.3, 6.5
FriNov 1230in-personExceptional Control FlowCh. 8.1-8.2 Process Slides
MonNov 1531in-personLab 5 Discussion
WedNov 1732in-personProcess Control & ShellsCh. 8.4 Fork Exercises
FriNov 1933in-personSignalsCh. 8.5
MonNov 22No Class: Thanksgiving Break
WedNov 24No Class: Thanksgiving Break
FriNov 26No Class: Thanksgiving Break
MonNov 2934in-personReaping, Lab 6Ch. 8.3
WedDec 135in-personConcurrency & Threads
FriDec 336in-personLab 6 Discussion
MonDec 637in-personVirtual MemoryCh. 9.1 Vm-wrapup Slides
WedDec 838in-personCompilers and Linkers
FriDec 1039in-personLogic Gates & Wrap-up