Study Tips
- Multiple choice/fill in
 
- 
- Practice homework questions
 
- Practice Clicker questions
 
- Review this study guide for guidance
 
 
- Coding question
 
- 
- Redo parts of the MP4 and MP5 with no outside help
 
- Try the practice coding question, erase answer and try again with no outside help
 
- On the exam, use comments to map out your plan, implement each comment one-by-one.
 
- On the exam, don’t panic if your code doesn’t work right away. Focus on getting individual parts of your logic correct for partial credit.
 
 
- Assembly and Processors
 
- 
- Just know that C code turns into simplified instructions (assembly) that a CPU can then run.
 
 
- Bit Fiddling
 
- 
- Be able to shift bits in an unsigned C data type (char, int, ect…) and binary represented numbers in general.
 
- Be able to apply (AND OR XOR NOT) to unsigned C data types and binary represented numbers in general.
 
- Understand UTF-8 and how to go from a code point to a series of bytes and back
 
- Be able to answer clickers like (2 - 12)
 
 
- Negatives | Virtual Memory
 
- 
- Be able to convert between a negative number (with the minus sign) and the corresponding 2’s complement
 
- Be able to define virtual memory
 
- Be able to answer clickers like (2 - 8)
 
 
- OS | Concurrency
 
- 
- Be able to define process, concurrency, parallelism, OS, and kernel mode.
 
- Be able to answer clickers like (2 - 9)
 
 
- Threading
 
- 
- Be able to define threads and know the difference between threads and processes
 
- Be able to read threading code (like in the examples)
 
- Know the definition of a deadlock
 
- Be able to answer clickers like (2 - 10)
 
 
- Threading 0b10
 
- 
- Reader/writer locks are not on the exam but helpful for MP6 Wallet.
 
 
 Homework
- HW4
 
- 
- Be able to do all questions with no outside help besides provided relevant tables (for UTF-8)
 
 
- HW5
 
- 
- Be able to arrange code blocks with mutexs’ and conditional variables (like the hw)
 
- No need to memorize the pthread function names or syntax
 
 
 MP
- MP3 PNG
 
- 
 
- MP4 UFT-8
 
- 
- Be able to do with no outside help besides the C manual pages and relevant UTF-8 conversion tables.
 
 
- MP5 Allocator
 
- 
- Be able to do with no outside help besides the C manual pages and information from the specifications.