Exams



Midterm Details


Midterm Policies

You will have 70 minutes to complete the exam. We will distribute the exam early and you can read and fill out the cover page of the exam, but you should not look at the exam questions until you are told to begin.

  • To Bring: pencil, eraser, ONE double-sided sheet of handwritten notes
  • Provided: midterm reference sheet, printed exam with white space for work, time keeping
  • Not Allowed: watch, hat, calculator, cell phone, or any other electronic device

Midterm Topics

  • Memory, Data, and Addressing: pointers, endianness, data sizes, bitwise operators
  • Number Representation: binary, integers, floating point
  • x86-64 Topics: registers, instructions, control flow
  • Procedures and the Stack: stack structure, calling conventions, register conventions, recursion
  • Building an Executable: compiling, linking, loading

Some of the old exams contain questions on topics that we did not cover this quarter; you should skip over such questions.


Midterm Practice

The following Midterm Review packet will be used in Midterm Review session.

The following are past exam questions written by Justin and may prove useful in studying, though most are likely harder than what you will encounter on your exams:

Older exams (prior to Autumn 2016) assume Intel's 32-bit architecture (IA-32), which differs from the x86-64 taught now, so some questions and/or answers will not make total sense and would not be correct for us.

IA-32 Questions: Spr 2015 1E, 2, 4, 6; Aut 2014 3A; Spr 2014 1B; Aut 2013 4, 5A; Sum 2013 3, 4F; Win 2013 2, 3, 4, 5; Aut 2012 2, 3, 4; Spr 2012 2; Win 2011 4, 8; Aut 2010 2, 3; Spr 2010 2, 3


Autumn 2018
Exam   |   Solutions   |   Hsia
Summer 2018
Exam   |   Solutions   |   Hsia
Spring 2018
Exam   |   Solutions   |   Grossman
Winter 2018
Exam   |   Solutions   |   Wyse
Autumn 2017
Exam   |   Solutions   |   Hsia
Spring 2017
Exam   |   Solutions   |   Anderson
Winter 2017
Exam   |   Solutions   |   Ceze
Autumn 2016
Exam   |   Solutions   |   Hsia
Spring 2016
Exam   |   Solutions   |   Holt
Winter 2016
Exam   |   Solutions   |   Grossman
Autumn 2015
Exam   |   Solutions   |   Anderson
Spring 2015
Exam   |   Solutions   |   Bailey
Winter 2015
Exam   |   Solutions   |   Ceze
Autumn 2014
Exam   |   Solutions   |   Anderson
Spring 2014
Exam   |   Solutions   |   Borriello
Autumn 2013
Exam   |   Solutions   |   Borriello
Summer 2013
Exam   |   Solutions   |   Wood
Winter 2013
Exam   |   Solutions   |   Hornyack
Autumn 2012
Exam   |   Solutions   |   Borriello
Spring 2012
Exam   |   Solutions   |   Borriello
Winter 2011
    Exam   |   Solutions   |   Zahorjan
Autumn 2010
Exam   |   Solutions   |   Perkins
Spring 2010
Exam   |   Solutions   |   Borriello

Final Details


Final Policies

You will have 110 minutes to complete the exam. We will distribute the exam early and you can read and fill out the cover page of the exam, but you should not look at the exam questions until you are told to begin.

  • To Bring: pencil, eraser, TWO double-sided sheets of handwritten notes
  • Provided: final reference sheet, printed exam with white space for work, time keeping
  • Not Allowed: watch, hat, calculator, cell phone, or any other electronic device

Additional Final Topics (cumulative)

  • Arrays and Structs: alignment, fragmentation, buffer overflow
  • Caching: locality, associativity, cache parameters and performance, AMAT
  • Processes: fork, execv, exceptions, context switching, zombies
  • Virtual Memory: paging, address translation, disk and swap space, protection and sharing
  • Dynamic Memory Allocation: fragmentation, free lists (implicit, explicit, segregated), garbage collection, memory bugs
  • C and Java: object representation, dynamic dispatch

Some of the old exams contain questions on topics that we did not cover this quarter; you should skip over such questions.


Final Practice

The following Final Review packet will be used in Section 10 ("Final Review") as well as the actual Final Review session.

The following are past exam questions written by Justin and may prove useful in studying, though most are likely harder than what you will encounter on your exams:

Older exams (prior to Autumn 2016) assume Intel's 32-bit architecture (IA-32), which differs from the x86-64 taught now, so some questions and/or answers will not make total sense and would not be correct for us.

IA-32 Questions: Win 2015 1; Spr 2012 5; Aut 2010 4;


Autumn 2018
Exam   |   Solutions   |   Hsia
Summer 2018
Exam   |   Solutions   |   Hsia
Spring 2018
Exam   |   Solutions   |   Grossman
Winter 2018
Exam   |   Solutions   |   Wyse
Autumn 2017
Exam   |   Solutions   |   Hsia
Spring 2017
Exam   |   Solutions   |   Anderson
Winter 2017
Exam   |   Solutions   |   Ceze
Autumn 2016
Exam   |   Solutions   |   Hsia
Spring 2016
Exam   |   Solutions   |   Holt
Winter 2016
Exam   |   Solutions   |   Grossman
Autumn 2015
Exam   |   Solutions   |   Anderson
Winter 2015
Exam   |   Solutions   |   Ceze
Autumn 2014
Exam   |   Solutions   |   Anderson
Spring 2014
Exam   |   Solutions   |   Borriello
Autumn 2013
Exam   |   Solutions   |   Borriello
Summer 2013
Exam   |   Solutions   |   Wood
Winter 2013
Exam   |   Solutions   |   Hornyak
Autumn 2012
Exam   |   Solutions   |   Borriello
Spring 2012
Exam   |   Solutions   |   Borriello
Autumn 2010
Exam   |   Solutions   |   Perkins
Spring 2010
Exam   |   Solutions   |   Borriello