Chapter 1
What is an Operating System?
An operating system is a program that manages a computer's hardware as well as providing an environment for applications programs to run on.
What activities does an Operating System do to manage I/O devices?
a. A memory-management component that handles buffering, caching, and spooling b. A general device-driver interface c. Drivers for specific hardware devices
What activities does an Operating System do to manage file storage?
a. Creating and deleting files b. Access control to determine who can access what c. Creating and deleting directories to organize files d. Supporting primitives for manipulating files and directories e. Mapping files onto secondary storage f. Backing up files on stable (nonvolatile) storage media
What activities does an Operating System do manage mass storage?
a. Free-space management b. Storage allocation c. Disk scheduling
What are the four main components of a Computer System?
a. Hardware b. Operating System c. Application programs d. Users
What are two hardware features that are used to support an Operating System and how do they work?
a. Interrupts i. Is an event that is caused by 1. Hardware event by an I/O device that create an interrupt 2. Software event that creates an interrupt ii. Event that does 1. It transfer controls to a interrupt service routine 2. Interrupt service routine determines the type of interrupt and transfers control to Interrupt handler or use a table of pointer based on the interrupt number to auto transfer control to the handler 3. When the interrupt processing is completed it is returned to the original program location for execution b. Mode bit i. Two modes 1. User mode - set for execution of application programs 2. Privilege mode - set for execution of operating system programs ii. Privileged instructions only set in Privilege mode 1. Change Mode Flag 2. I/O control 3. Timer management
What activities does an Operating system do to manage memory?
a. Keeping track of used memory and who owns what part of memory b. Deciding which processes to move in or out of memory c. Allocating and deallocating space as needed
What are two different strategies to running multiple programs at a time on a computer system?
a. Multiprogramming - fully utilizes the CPU so there is always an instruction being executed b. Timesharing - A logical extension of multiprogramming where the CPU executes multiple jobs by switching among them. This requires some level of user interaction.
What are the four main computer system resources managed by an Operating System?
a. Processes b. Memory c. Storage d. I/O devices
What is the difference between protection and security?
a. Protection is any mechanism that controls access of processes or users to the system b. Security is to defend from internal and external attacks
What activities does an Operating system do to manage processes?
a. Scheduling processes and threads on the CPU b. Creating and deleting both user and system processes c. Suspending and resuming processes d. Providing mechanisms for process synchronization e. Providing methods for process communication f. Providing mechanisms for deadlock handling
What are the three main purposes of an Operating System?
a. To make it easier for users to interact with computer b. To control the execution of application software c. To manage system resources
List and describe eight types of computer system environments.
a. Traditional - The common use of a computer to accomplish whatever goal the user desires. b. Mobile computing - Handheld smartphones and tablet computers focused on portability c. Distributed systems - A collection of separate, possibly heterogeneous, computer systems that are networked to provide users with access to the various resources that the system maintains. d. Client-server- A central server handling the computation for several connected terminals. e. Peer-to-Peer - All systems can function as either a client or a server, depending on if it is requesting or providing a service. f. Virtualization - Allowing an OS to run applications native to other OSs g. Cloud - delivering computing, storage, and applications as a service via the internet h. Real-time embedded systems - The most prevalent form of computers. They have limited features and are usually designed to handle a specific task.