Key Concepts

Review core concepts you need to learn to master this subject

Computer Programs

A computer program is a collection of instructions used to perform a certain task.

Processes and Threads
Lesson 1 of 2
  1. 1
    When using a computer, multiple programs can often be found running at the same time. Perhaps one for playing music, another for creating documents, and one for browsing the web. All of these progr…
  2. 2
    To best optimize the performance of processes as their priority changes or as they wait for access to a limited resource, processes are put into one of five states: - New: The program has been sta…
  3. 3
    When a process is initialized, its layout within memory has four distinct sections: * A text section for the compiled code * A data section for initialized variables * A stack for local variables …
  4. 4
    While a process is an abstract data structure that represents all of the necessary information to run a program, a thread represents the actual sequence of processor instructions that are activel…
  5. 5
    Typically, a single CPU core can only execute one thread, and therefore one process, at a time. With a clever use of blocking and context switching, this limitation can be obscured to users through…
  6. 6
    Threads can behave differently depending on the environment they are created in. A thread built into the existing process is considered a kernel thread. This means that the kernel within the ope…
  7. 7
    Congratulations! You have finished learning about some of the key foundations of an operating system: the processes and threads that all of the other code on the system rests upon. A process is a…

What you'll create

Portfolio projects that showcase your new skills

Pro Logo

How you'll master it

Stress-test your knowledge with quizzes that help commit syntax to memory

Pro Logo