Term
|
Definition
a program that manages the computer hardware. It also provides a basis for application programs and acts as an intermediary between the computer user and the hardware. |
|
|
Term
|
Definition
a basic unit of CPU utilization (a process); comprises a thread ID, program counter, register set, and a stack. shares code data and other resources (files) with other threads |
|
|
Term
|
Definition
process with a single thread of control |
|
|
Term
What are the 2 main categories of services and functions provided by the OS and how they differ |
|
Definition
Functions and services which are directly helpful to the user (networking, computer sharing, error detection, consistent computing)
Functions and resources which ensure efficient operation through resource sharing; resource allocation, user account tracking, and protection/security |
|
|
Term
How could you obtain a statistical profile of program usage? what's the import? |
|
Definition
You could use a timer interrupt to accomplish this. At each timer interrupt the value of the program counter and process ID could be recorded and a statistical profile could be obtained from this data. This could be helpful for debugging and examining the programs efficiency. |
|
|
Term
Some computer systems do not provide a privileged mode of operation in hardware. Is it possible to construct a secure operating system for these computer systems? Give arguments both that it is and that it is not possible. |
|
Definition
it would be very important to have a privileged mode of operation in hardware. If there’s no kernel mode it would seem to difficult to protect against a hacker writing against the boot sector of a drive, or disabling interrupts and/or causing them. To construct a secure operating system without a kernel mode would seem very difficult. If the programming was of sufficient quality extra security could be built into the software. |
|
|
Term
Describe the actions taken by a kernel to context-switch between processes. |
|
Definition
The kernel must save the context of the previous process in its Process Control Block and then must load the saved context of the new process which is scheduled to run. This is pure overhead because the system does no useful work while switching. |
|
|
Term
what is the main difference between a program and a process |
|
Definition
a program is passive a process is active |
|
|
Term
Degree of Multiprogramming |
|
Definition
number of processes that are in memory |
|
|
Term
Why is the long term scheduler concerned with the degree of multiprogramming? |
|
Definition
Ensuring system is not overloaded through balancing IO and CPU usage |
|
|
Term
|
Definition
whenever there's an interrupt and it switches from one process to another; pure overhead |
|
|
Term
What is a concern with User Level Threads |
|
Definition
through an interrupt one thread can block the rest of them |
|
|
Term
|
Definition
provided by hardware Provides ability to distinguish when system is running user code or kernel code Some instructions designated as privileged, only executable in kernel mode System call changes mode to kernel, return from call resets it to user |
|
|
Term
|
Definition
allows OS to protect itself and other system components |
|
|
Term
|
Definition
a program in execution. It is a unit of work within the system |
|
|
Term
|
Definition
software interrupt; divide by 0 or inaccessible address |
|
|