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 |