Written by students who passed Immediately available after payment Read online or as PDF Wrong document? Swap it for free 4.6 TrustPilot
logo-home
Exam (elaborations)

COP4600 FINAL EXAM STUDY GUIDE

Rating
-
Sold
-
Pages
20
Grade
A+
Uploaded on
17-11-2024
Written in
2024/2025

COP4600 FINAL EXAM STUDY GUIDE

Institution
Course

Content preview

COP4600 FINAL EXAM STUDY GUIDE (A NEW
UPDATED VERSION) LATEST COMPLETE ACTUAL EXAM
REAL QUESTIONS AND CORRECT DETAILED ANSWERS
(CORRECT VERIFIED ANSWERS) |ALREADY GRADED A+
(REVISED EXAM)
Chapter 4 - ANSWER: The Abstraction: The Process /
Processes

Process /
Job - ANSWER: A running program.

The abstraction provided by the OS of a running program.

Virtualizing - ANSWER: The process of running a virtual instance of a computer
system in a layer abstracted from the actual hardware.

Time Sharing (CPU) - ANSWER: 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 basic technique allows users to run as many concurrent processes as they
would like; the potential cost is performance, as each will run more slowly if the
CPU(s) must be shared.

The basic idea is simple: run one process for a little while, then run another one,
and so forth. By time sharing the CPU in this manner, virtualization is achieved.

Space Sharing (CPU) - ANSWER: Where a resource is divided (in space) among those
who wish to use it.

For example, disk space is naturally a spaceshared resource; once a block is
assigned to a file, it is normally not assigned to another file until the user deletes
the original file.

Mechanisms - ANSWER: Low-level methods or protocols that implement a needed
piece of functionality.

Context Switch - ANSWER: A time-sharing mechanism employed on all modern
OSes.

It gives the OS the ability to stop running one program and start running another on
a given CPU

Policies - ANSWER: Algorithms for making some kind of decision within the OS.

,For example, given a number of possible programs to run on a CPU, which program
should the OS run? A scheduling policy in the OS will make this decision, likely using
historical information (e.g., which program has run more over the last minute?),
workload knowledge (e.g., what types of programs are run), and performance
metrics (e.g., is the system optimizing for interactive performance, or throughput?)
t o make i t s decision.

Machine State - ANSWER: What a program can read or update when it is running.

At any given time, what parts of the machine are important to the execution of this
program?

Memory - ANSWER: A component of machine state that comprises 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 ins t ruct ions expli ci t l y read or upda te regis ters and thus clearly the y are
importan t t o the exe cut ion 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 must include some method 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: As there is an interface for process creation, 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 other controls that are possible. For example, most operating systems
provide some kind of method to suspend a process (stop it from running for a
while) and then resume it (continue it running).

Status: There are usually interfaces to get some status information about a process
as well, such as how long it has run for, or what state it is in.

Load - ANSWER: The first thing that the OS must do to run a program is to load its
code and any static data (e.g., initialized variables) into memory, into the address
space of the process.

Disk /
Disc /
Flash-Based SSD - ANSWER: Where a program initially resides in some kind of
execut able format.

The process of loading a program and static data into memory requires the OS to
read those bytes from disk and place them in memory somewhere.

Eagerly (Loading Process) - ANSWER: The loading process done all at once before
running the program.

Lazily (Loading Process) - ANSWER: Loading pieces of code or data only as they are
needed during programexe cut ion.

Run-Time Stack /
Stack - ANSWER: Once the code and static data are loaded into memory, there are
a few other things the OS needs to do before running the process. Some memory
must be allocated for the program's run-time stack (or just stack).

C programs use the stack for local variables, function parameters, and return
addresses; the OS allocates this memory and gives it to the process.

The OS will also likely initialize the stack with arguments; specifically, it will fill in
the parameters to the main() function, i.e., argc and the argv array.

Connected book

Written for

Course

Document information

Uploaded on
November 17, 2024
Number of pages
20
Written in
2024/2025
Type
Exam (elaborations)
Contains
Questions & answers

Subjects

$18.49
Get access to the full document:

Wrong document? Swap it for free Within 14 days of purchase and before downloading, you can choose a different document. You can simply spend the amount again.
Written by students who passed
Immediately available after payment
Read online or as PDF

Get to know the seller
Seller avatar
THEPROJECTOR

Also available in package deal

Get to know the seller

Seller avatar
THEPROJECTOR Teachme2-tutor
Follow You need to be logged in order to follow users or courses
Sold
7
Member since
1 year
Number of followers
1
Documents
1137
Last sold
2 weeks ago

0.0

0 reviews

5
0
4
0
3
0
2
0
1
0

Recently viewed by you

Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their tests and reviewed by others who've used these notes.

Didn't get what you expected? Choose another document

No worries! You can instantly pick a different document that better fits what you're looking for.

Pay as you like, start learning right away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and aced it. It really can be that simple.”

Alisha Student

Working on your references?

Create accurate citations in APA, MLA and Harvard with our free citation generator.

Working on your references?

Frequently asked questions