COP 4600 WITH COMPLETE SOLUTIONS 100%
CORRECT LATEST UPDATE
Chapter 4 - The Abstraction: The Process /
Processes
Process /
Job - ANSWER An executing program.
The abstraction provided by the OS of an executing program.
Virtualizing - ANSWER Running a virtual instance of a computer system in a layer
abstracted from the actual hardware.
Time Sharing (CPU) - SOLUTION By running one process, then stopping it and running
another, and so forth, the OS can promote the illusion that many virtual CPUs exist when
in fact there is only one physical CPU (or a few).
This is a straightforward approach that allows users to have as many processes
concurrent as they may want; the possible cost is performance, as they will execute
more slowly in case the CPU(s) have to be shared.
The basic concept is simple: run one process for a little time, then run another one, and
so on. In this way, by time sharing the CPU, virtualization is achieved.
Space Sharing (CPU) - ANSWER Where a resource is divided, in space among those
desiring its use.
Disks are obviously a spaced shared resource; once a block is assigned to a file it is
usually not assigned to another file until the user deletes the original.
Mechanisms - ANSWER Low-level methods or protocols for providing a needed portion
of functionality.
,Context Switch - ANSWER A time-sharing mechanism used in all modern OSes.
It provides the OS with the capability of taking a currently running program off the CPU
and putting another program on that CPU
Policies - ANSWER Methods/algorithms for making some sort of decision with the OS.
As an example, considering multiple runnable programs are contending to run on a
CPU, which one should the OS choose to run? The OS would use a scheduling policy to
do so, almost surely leveraging historical data - e.g., which program has received the
most CPU time over the past minute? -, workload knowledge - e.g., what classes of
programs are running -, and performance metrics - e.g., is the system optimizing for
interactive performance, or throughput?.
Machine State - ANSWER What a program can read or update during execution.
At any moment in time, which part of the machine is relevant for the execution of that
program?
Memory - ANSWER A part of machine state consisting of a process.
Instructions lie in memory; the data that the running program reads and writes sits in
memory as well. Thus the memory that the process can address-called its address
space-is part of the process.
Address Space - ANSWER The memory that the process can address.
Registers - ANSWER Part of the process's machine state.
Many instructions explicitly read or update registers and thus clearly they are important
to the execution of the process
, Program Counter (PC) /
Instruction Pointer (IP) - ANSWER A special register that form part of a machine state.
Tells us which instruction of the program will execute next.
Stack Pointer & Frame Pointer - ANSWER Used to manage the stack for function
parameters, local variables, and return addresses.
Modularity - ANSWER A general software design principle.
A common design paradigm to separate high-level policies from their low-level
mechanisms.
Separating the two allows one easily to change policies without having to rethink the
mechanism and is thus a form of modularity.
Process API - ANSWER Create: An operating system should provide some mechanism to
create new processes. When you type a command into the shell, or double-click on an
application icon, the OS is invoked to create a new process to run the program you have
indicated.
Destroy: Given that there is an interface to create processes, systems also provide an
interface to destroy processes forcefully. Of course, many processes will run and just
exit by themselves when complete; when they don't, however, the user may wish to kill
them, and thus an interface to halt a runaway process is quite useful.
Wait: Sometimes it is useful to wait for a process to stop running; thus some kind of
waiting interface is often provided.
Miscellaneous Control: Other than killing or waiting for a process, there are sometimes
The benefits of buying summaries with Stuvia:
Guaranteed quality through customer reviews
Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.
Quick and easy check-out
You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.
Focus on what matters
Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!
Frequently asked questions
What do I get when I buy this document?
You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.
Satisfaction guarantee: how does it work?
Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.
Who am I buying these notes from?
Stuvia is a marketplace, so you are not buying this document from us, but from seller Easton. Stuvia facilitates payment to the seller.
Will I be stuck with a subscription?
No, you only buy these notes for $12.99. You're not tied to anything after your purchase.