Week 9

There is no quiz in this unit. Instead, the next unit will have a quiz covering Units 7–9.

Upon finishing this learning module, you should be able to:

  • Discuss and describe the jobs of an operating system and the major resources it handles
  • Explain the advantages and challenges of parallel processing
  • Describe how databases are designed to maintain consistency in the face of failures and concurrent changes
  • Write simple SQL queries

Operating Systems and Parallel Processing

Read about Operating Systems and Parallel Processing in Welcome to CS.

Optionally, watch this video to reinforce the big ideas of the Operating Systems material.

Algorithm of the Week: Databases and Consistency

Read chapter 8 of the Nine Algorithms book. You can skip the entire section titled “The Prepare-Then-Commit Trick For Replicated Databases”; start reading again at “Relational Databases And The Virtual Table Trick”.

These videos cover what a database is and how they work, which might be useful background to make the reading easier.

Optional Extras: GPUs

Video cards (GPUs) are different from CPUs because they are optimized for parallel processing. They are designed to process hundreds or thousands of similar jobs at the same time. Traditionally, they were mostly used for graphics, but they are also good at the kinds of tasks that machine learning requires. This video explains more.