click below
click below
Normal Size Small Size show me how
OS Intro
Week 1
Question | Answer |
---|---|
What is an Operating System? | The interface between the user and the architecture |
The OS is _____ than raw hardware | Easier to program |
The OS hides _____ details | Architectural |
The OS is an illusionist because it is...? | Bigger, faster, and reliable |
The OS is a government because it...? | Divides resources |
What is abstraction? | How to get the OS to give users an illusion of infinite memory, CPUs, resources, world wide computing, etc |
The OS provides the services that allow ___ to work | Application programs |
The OS is point where...? | Hardware and software meet |
Computer: High to Low Level | System user, application software, OS, system software, hardware |
What is the CPU? | The processor that performs the actual computation |
What are some examples of I/O devices? | Terminal, disks, video board, and a printer |
What is memory? | RAM containing data and programs used by the CPU |
What is a system bus? | The communication medium between CPU, memory, and peripherals |
How does the OS preserve the state of the CPU? | By storing the registers and the program counter |
What is the Application Programming Interface (API)? | The programming interface to the services provided by the OS |
The API is typically written in a...? | High level language |
Dual-mode operation allows...? | The OS to protect itself and other system components |
What are the two modes in dual-mode operation? | User mode and kernel mode |
Mode bit provides...? | The ability to distinguish when system is running user code or kernel code |
Mode bit is ___ when a user is running | User |
Mode bit is ___ when kernel code is executing | Kernel |
Some instructions designated as privileged are...? | Only executable in kernel mode |
What is the kernel? | The protected part of the OS that runs in kernel mode, protecting the critical OS data structures and device registers from user programs |
What is a process? | A program in execution |
Process execution MUST progress in...? | Sequential fashion |
A process contains which multiple parts? | The program code, current activity, stack, data section, and heap |
The program code is also called the...? | Text section |
The stack contains...? | Temporary data |
What are 3 examples of temporary data stored in the stack? | Function parameters, return addresses, and local variables |
The data section contains...? | Global variables |
The heap contains...? | Memory dynamically allocated during run time |
Program is a ___ entity | Passive |
Process is a ___ entity | Active |
A process needs ___ to accomplish its task | Resources |
A single-threaded process has...? | One program counter specifying the location of the next instruction to execute |
A multi-threaded process has...? | One program counter per thread |
What happens in the New State? | The process is being created |
What happens in the Running State? | Instructions are being executed |
What happens in the Waiting State? | The process is waiting for some event to occur |
What happens in the Ready State? | The process is waiting to be assigned to a professor |
What happens in the Terminated State? | The process has finished execution |
What is the Process Control Block (PCB)? | The information associated with each process |
What is the process state? | Running, waiting, etc |
What is the program counter? | The location of the instruction to execute next |
What are CPU registers? | Contents of all process-centric registers |
What is CPU scheduling info? | Priorities, scheduling queue pointers |
What is memory-management info? | Memory allocated to the process |
What is accounting info? | CPU used, clock time elapsed since start, time limits |
What is I/O status info? | I/O devices allocated to a process, list of open files |
When CPU switches to another process, the system must...? | Save the state of the old process and load the saved state for the new process via a context switch |
The more complex the OS and PCB...? | The longer the context switch |
A tree of processes is formed from...? | Parent processes which create children processes which then create other processes |
Generally, a process is identified and managed via a...? | Process identifier (pid) |
What is an address space? | The range of virtual addresses that the OS assigns to a user or separately running program |
What does the fork() system call do? | It creates a new process |
What does the exec() system call do? | It is used after fork() to replace the process's memory space with a new program |
When is the wait() system call used? | When a parent process is waiting for the child to terminate |
What are the 3 different types of processes? | Browser, renderer, and plug-in |
What does the browser process do? | It manages user interface, disk, and network I/O |
What does the renderer do? | It renders web pages, deals with HTML, Javascript |