Chapter 1: Introduction to Operating Systems (PDF)
Document Details
Uploaded by SophisticatedSlideWhistle
Silberschatz, Galvin and Gagne
Tags
Summary
This document is an introduction to operating systems, describing their structure and role in computer systems. It explores different types of operating systems and their key characteristics. This should be useful for anyone learning about foundational concepts in computer science.
Full Transcript
Chapter 1: Introduction Operating System Concepts – 9th Edit9on Silberschatz, Galvin and Gagne ©2013 Chapter 1: Introduction 1.1 What Operating Systems Do? 1.2 Computer-System Organization 1.3 Compute...
Chapter 1: Introduction Operating System Concepts – 9th Edit9on Silberschatz, Galvin and Gagne ©2013 Chapter 1: Introduction 1.1 What Operating Systems Do? 1.2 Computer-System Organization 1.3 Computer-System Architecture 1.4 Operating-System Structure 1.5 Operating-System Operations Operating System Software: 1.6 Process Management 1.7 Memory Management 1.8 Storage Management 1.9 Protection and Security Types and Categories of Operating Systems 1.11 Computing Environments 1.12 Open-Source Operating Systems Operating System Concepts – 9th Edition 1.2 Silberschatz, Galvin and Gagne ©2013 Objectives To describe the basic organization of computer systems To provide a grand tour of the major components of operating systems To give an overview of the many types of computing environments To explore several open-source operating systems Operating System Concepts – 9th Edition 1.3 Silberschatz, Galvin and Gagne ©2013 What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware Operating system goals: Execute user programs and make solving user problems easier Make the computer system convenient to use Use the computer hardware in an efficient manner Operating System Concepts – 9th Edition 1.4 Silberschatz, Galvin and Gagne ©2013 Computer System Structure Computer system can be divided into four components: Hardware – provides basic computing resources CPU, memory, I/O devices Operating system Controls and coordinates use of hardware among various applications and users Application programs – define the ways in which the system resources are used to solve the computing problems of the users Word processors, compilers, web browsers, database systems, video games Users People, machines, other computers Operating System Concepts – 9th Edition 1.5 Silberschatz, Galvin and Gagne ©2013 Four Components of a Computer System Figure 1.1 Operating System Concepts – 9th Edition 1.6 Silberschatz, Galvin and Gagne ©2013 1.1 What Operating Systems Do The operating system controls the hardware and coordinates its use among the various application programs for the various users. We can also view a computer system as consisting of hardware, software, and data. The operating system provides the means for proper use of these resources in the operation of the computer system. An operating system is similar to a government. Like a government, it performs no useful function by itself. It simply provides an environment within which other programs can do useful work. To understand more fully the operating system's role, we explore operating systems from two viewpoints: The user The system. Operating System Concepts – 9th Edition 1.7 Silberschatz, Galvin and Gagne ©2013 1.1.1 User View The user's view of the computer varies according to the interface being used Single user computers (e.g., PC, workstations). Such systems are designed for one user to monopolize its resources. The goal is to maximize the work (or play) that the user is performing. the operating system is designed mostly for ease of use and good performance. Multi user computers (e.g., mainframes, computing servers). These users share resources and may exchange information. The operating system in such cases is designed to maximize resource utilization -- to assure that all available CPU time, memory, and I/O are used efficiently and that no individual users takes more than their air share. Operating System Concepts – 9th Edition 1.8 Silberschatz, Galvin and Gagne ©2013 1.1.1 User View (before we continue) What is the difference between performance and utilization Example :a computer can run resource-intensive software like video editing programs smoothly and quickly, it has good performance for those tasks For example, if a powerful computer system is only used for basic word processing tasks and the CPU and memory are not fully utilized, its utilization is low because it's not being used to its full potential. Operating System Concepts – 9th Edition 1.9 Silberschatz, Galvin and Gagne ©2013 User View (Cont.) Handheld computers (e.g., smartphones and tablets). The user interface for mobile computers generally features a touch screen. The systems are resource poor, optimized for usability and battery life. Embedded computers (e.g., computers in home devices and automobiles) The user interface may have numeric keypads and may turn indicator lights on or off to show status. The operating systems are designed primarily to run without user intervention. Operating System Concepts – 9th Edition 1.10 Silberschatz, Galvin and Gagne ©2013 1.1.2 System View From the computer's point of view, the operating system is the program most intimately involved with the hardware. There are two different views: The operating system is a resource allocator Manages all resources Decides between conflicting requests for efficient and fair resource use The operating systems is a control program Controls execution of programs to prevent errors and improper use of the computer resources = the central processing unit (CPU), computer memory, file storage, input/output (I/O) devices, and network connections Operating System Concepts – 9th Edition 1.11 Silberschatz, Galvin and Gagne ©2013 1.1.3 Defining Operating System No universally accepted definition of what an OS: Operating systems exist to offer a reasonable way to solve the problem of creating a usable computing system. The fundamental goal of computer systems is to execute user programs and to make solving user problems easier. Since bare hardware alone is not particularly easy to use, application programs are developed. These programs require certain common operations, such as those controlling the I/O devices. The common functions of controlling and allocating resources are brought together into one piece of software: the operating system. Operating System Concepts – 9th Edition 1.12 Silberschatz, Galvin and Gagne ©2013 Defining Operating System (Cont.) No universally accepted definition of what is part of the OS: A simple viewpoint is that it includes everything a vendor ships when you order the operating system. The features that are included vary greatly across systems: Some systems take up less than a megabyte of space and lack even a full-screen editor, Some systems require gigabytes of space and are based entirely on graphical windowing systems. Operating System Concepts – 9th Edition 1.13 Silberschatz, Galvin and Gagne ©2013 Defining Operating System (Cont.) No universally accepted definition of what is part of the OS: A more common definition, and the one that we usually follow, is that the operating system is the one program running at all times on the computer -- usually called the kernel. Along with the kernel, there are two other types of programs: System programs, which are associated with the operating system but are not necessarily part of the kernel. Application programs, which include all programs not associated with the operation of the system. Operating System Concepts – 9th Edition 1.14 Silberschatz, Galvin and Gagne ©2013 Defining Operating System (Cont.) The emergence of mobile devices, have resulted in an increase in the number of features that constituting the operating system. Mobile operating systems often include not only a core kernel but also middleware -- a set of software frameworks that provide additional services to application developers. For example, each of the two most prominent mobile operating systems -- Apple's iOS and Google's Android -- feature a core kernel along with middleware that supports databases, multimedia, and graphics (to name only a few). Operating System Concepts – 9th Edition 1.15 Silberschatz, Galvin and Gagne ©2013 1.2 Computer-System Organization Computer Startup Bootstrap program is loaded at power-up or reboot Typically stored in ROM or EPROM, generally known as firmware Initializes all aspects of system Loads operating system kernel and starts execution Operating System Concepts – 9th Edition 1.16 Silberschatz, Galvin and Gagne ©2013 1.2.1 Computer-System Operation Once the kernel is loaded and executing, it can start providing services to the system and its users. Some services are provided outside of the kernel, by system programs that are loaded into memory at boot time to become system processes, or system daemons that run the entire time the kernel is running. On UNIX, the first system process is init and it starts many other daemons. Once this phase is complete, the system is fully booted, and the system waits for some event to occur. The occurrence of an event is usually signaled by an interrupt. Operating System Concepts – 9th Edition 1.17 Silberschatz, Galvin and Gagne ©2013 1.3 Computer-System Architecture Single general-purpose processor Most systems have special-purpose processors as well Multiprocessors systems growing in use and importance Also known as parallel systems, tightly-coupled systems Advantages include: Increased throughput (# of process that can be done in a given time) Economy of scale Increased reliability – graceful-degradation/fault-tolerance Two types: Symmetric Multiprocessing – each processor performs all tasks Asymmetric Multiprocessing – each processor is assigned a specific task. Operating System Concepts – 9th Edition 1.18 Silberschatz, Galvin and Gagne ©2013 1.3 Computer-System Architecture Operating System Concepts – 9th Edition 1.19 Silberschatz, Galvin and Gagne ©2013 Symmetric Multiprocessing Architecture Figure 1.6 Operating System Concepts – 9th Edition 1.20 Silberschatz, Galvin and Gagne ©2013 1.3.2 Multicore Systems Most CPU design now includes multiple computing cores on a single chip. Such multiprocessor systems are termed multicore. Multicore systems can be more efficient than multiple chips with single cores because: On-chip communication is faster than between-chip communication. One chip with multiple cores uses significantly less power than multiple single-core chips, an important issue for laptops as well as mobile devices. Note -- while multicore systems are multiprocessor systems, not all multiprocessor systems are multicore. Operating System Concepts – 9th Edition 1.21 Silberschatz, Galvin and Gagne ©2013 A dual-core with two cores placed on the same chip Figure 1.7 Operating System Concepts – 9th Edition 1.22 Silberschatz, Galvin and Gagne ©2013 1.23 Silberschatz, Galvin and Gagne ©2013 23 Operating System Concepts – 9th Edition 1.3.3 Clustered Systems Like multiprocessor systems, but multiple systems working together Usually sharing storage via a storage-area network (SAN) Provides a high-availability service which survives failures Asymmetric clustering has one machine in hot-standby mode Symmetric clustering has multiple nodes running applications, monitoring each other Some clusters are for high-performance computing (HPC) Applications must be written to use parallelization Some have distributed lock manager (DLM) to avoid conflicting operations Operating System Concepts – 9th Edition 1.24 Silberschatz, Galvin and Gagne ©2013 Clustered Systems Figure 1.8 General structure of a clustered system Operating System Concepts – 9th Edition 1.25 Silberschatz, Galvin and Gagne ©2013 1.4 Operating-System Structure Single user cannot keep CPU and I/O devices busy at all times Multiprogramming organizes jobs (code and data) so CPU always has one to execute A subset of total jobs in system is kept in memory Batch systems: One job selected and run via job scheduling When it has to wait (for I/O for example), OS switches to another job Timesharing systems: Logical extension of batch systems -- CPU switches jobs so frequently that users can interact with each job while it is running, creating interactive computing Operating System Concepts – 9th Edition 1.26 Silberschatz, Galvin and Gagne ©2013 Memory Layout for Multiprogrammed System Figure 1.9 Operating System Concepts – 9th Edition 1.27 Silberschatz, Galvin and Gagne ©2013 Timesharing Systems Timesharing is also referred to as multitasking. Response time should be < 1 second Each user has at least one program executing in memory. Such a program is referred to as a process If several processes are ready to run at the same time, we need to have CPU scheduling. If processes do not fit in memory, swapping moves them in and out to run Virtual memory allows execution of processes not completely in memory Operating System Concepts – 9th Edition 1.28 Silberschatz, Galvin and Gagne ©2013 1.5 Operating-System Operations A mechanism that allows the OS to protect itself and other system components Two modes of operations: User mode Kernel mode Mode bit (0 or 1) 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 Systems call by a user asking the OS to perform some function changes from user mode to kernel mode. Return from a system call resets the mode to user mode. Operating System Concepts – 9th Edition 1.29 Silberschatz, Galvin and Gagne ©2013 Transition from User to Kernel Mode Figure 1.10 Operating System Concepts – 9th Edition 1.30 Silberschatz, Galvin and Gagne ©2013 1.5.2 Timer To prevent process to be in infinite loop (process hogging resources), a timer is used, which is a hardware device. Timer is a counter that is decremented by the physical clock. Timer is set to interrupt the computer after some time period Operating system sets the counter (privileged instruction) When counter reaches the value zero, and interrupt is generated. The OS sets up the value of the counter before scheduling a process to regain control or terminate program that exceeds allotted time Operating System Concepts – 9th Edition 1.31 Silberschatz, Galvin and Gagne ©2013 1.9 Protection and Security Protection – A mechanism for controlling access of processes (or users) to resources defined by the OS Security – A defense of the system against internal and external attacks Huge range, including denial-of-service, worms, viruses, identity theft, theft of service Systems generally first distinguish among users, to determine who can do what User identities (user IDs, security IDs) include name and associated number, one per user User ID is associated with all files and processes of that user to determine access control Group identifier (group ID) allows set of users to be defined and controls managed, then also associated with each process, file Privilege escalation allows user to change to effective ID with more rights Operating System Concepts – 9th Edition 1.32 Silberschatz, Galvin and Gagne ©2013 Operating System Software Includes four essential subsystem managers 1. Memory Manager 2. Processor Manager 3. Device Manager 4. File Manager Network Manager (5th subsystem manager) In all modern operating systems Assumes responsibility for networking tasks 1.33 Silberschatz, Galvin and Gagne ©2013 33 Operating System Concepts – 9th Edition OS consist of a manager that manage it’s resources User issuing a command by using User Command interface (text or GUI) This model of a non-network OS shows 4 subsystem managers supporting the User Interface. 1.34 Silberschatz, Galvin and Gagne ©2013 34 Operating System Concepts – 9th Edition Each manager: Works closely with other managers Performs a unique role Manager tasks: Monitor its resources continuously Enforce policies determining: Who gets what, when, and how much Allocate the resource (when appropriate) Deallocate the resource (when appropriate) 1.35 Silberschatz, Galvin and Gagne ©2013 35 Operating System Concepts – 9th Edition (1) Main Memory Management In charge of main memory Random Access Memory (RAM) Responsibilities include: Preserving space in main memory occupied by operating system Checking validity and legality of memory space request as needed. Setting up memory tracking table Tracks usage of memory by sections Needed in multiuser environment Deallocating memory to reclaim it 1.36 Silberschatz, Galvin and Gagne ©2013 36 Operating System Concepts – 9th Edition (2) Processor Management In charge of allocating Central Processing Unit (CPU) Tracks process status An instance of program execution Two levels of responsibility: Handle jobs as they enter the system Handled by Job Scheduler Manage each process within those jobs Handled by Process Scheduler 1.37 Silberschatz, Galvin and Gagne ©2013 37 Operating System Concepts – 9th Edition Program Process Process Deadlock Protection Descriptor Resource Scheduling Synchronization Manager CPU Other Resources Process Manager 1.38 Silberschatz, Galvin and Gagne ©2013 38 Operating System Concepts – 9th Edition (3) Device Management In charge of monitoring all resources Devices, channels, and control units Responsibilities include: Choosing most efficient resource allocation method Printers, ports, disk drives, etc. Based on scheduling policy Allocating the device Starting device operation Deallocating the device 1.39 Silberschatz, Galvin and Gagne ©2013 39 Operating System Concepts – 9th Edition (4) File Management In charge of tracking every file in the system Data files, program files, compilers, application programs Responsibilities include: Enforcing user/program resource access restrictions Uses predetermined access policies Controlling user/program modification restrictions Read-only, read-write, create, delete Allocating resource Opening the file Deallocating file (by closing it) 1.40 Silberschatz, Galvin and Gagne ©2013 40 Operating System Concepts – 9th Edition (5) Network Manager Operating systems with networking capability Fifth essential manager Convenient way for users to share resources Retains user access control Resources include: Hardware (CPUs, memory areas, printers, tape drives, modems, and disk drives) Software (compilers, application programs, and data files) 1.41 Silberschatz, Galvin and Gagne ©2013 41 Operating System Concepts – 9th Edition Network systems have a Network Manager that assumes responsibility for networking tasks while working harmoniously with every other manager. 1.42 Silberschatz, Galvin and Gagne ©2013 42 Operating System Concepts – 9th Edition Subsystem Manager - Resources Processor Memory Main CPU Manager Manager Memory Keyboard Program Device File File Printer Manager Manager Data File Disk Drive Every subsystem manager is Compiler Modem responsible for their own tasks and each of them needs to Monitor cooperate with one another 1.43 Silberschatz, Galvin and Gagne ©2013 43 Operating System Concepts – 9th Edition Types of Operating Systems http://www.futurelab.net/sites/default/files/upload/HarvardCOmputer_JS.jpg http://www.t555t.com/vb/t60772.html 1.44 Silberschatz, Galvin and Gagne ©2013 44 Operating System Concepts – 9th Edition Types of Operating Systems Early System No operating system Machines run from a console with display lights, toggle switches, input device, and printer Programmer acts as an operator Setup included loading the compiler, source program, saving compiled program, and loading and linking One-user system Serial processing Weakness: CPU idle – waste CPU time 1.45 Silberschatz, Galvin and Gagne ©2013 45 Operating System Concepts – 9th Edition (A brief list of platforms and sample OS listed in alphabetical order) 1.46 Silberschatz, Galvin and Gagne ©2013 46 Operating System Concepts – 9th Edition Five categories Batch of Operating Systems Interactive Real-Time Hybrid Embedded Two distinguishing features Response time How data enters into the system 1.47 Silberschatz, Galvin and Gagne ©2013 47 Operating System Concepts – 9th Edition (1) Batch Systems Input relied on punched cards or tape Same jobs are collected and executed as one batch Reduce setup time – Resident monitor or batch monitor is introduced First rudimentary / basic operating system. initial control in monitor control transfers to job when job completes control transfers back to monitor Use automatic job sequencing – automatically transfers control from one job to another. 1.48 Silberschatz, Galvin and Gagne ©2013 48 Operating System Concepts – 9th Edition Problems: How does the monitor know (a) about the nature of the job (e.g., Fortran versus Assembly) or (b) which program to execute? How does the monitor distinguish (a) job from job? (b) data from program? Solution: Job Control Language (JCL) – a scripting language to instruct the system on how to run a batch job or start a subsystem. 1.49 Silberschatz, Galvin and Gagne ©2013 49 Operating System Concepts – 9th Edition Punch Card 1.50 Silberschatz, Galvin and Gagne ©2013 50 Operating System Concepts – 9th Edition Punch Card Machines Punch Tape Reader 1.51 Silberschatz, Galvin and Gagne ©2013 51 Operating System Concepts – 9th Edition (2) Interactive Systems – Faster turnaround than batch systems – Slower than real-time systems – Introduced to provide fast turnaround when debugging programs – Time-sharing software developed for operating system 1.52 Silberschatz, Galvin and Gagne ©2013 52 Operating System Concepts – 9th Edition IBM Mainframe IBM Engineer Ed Horton records data from an IBM Another data mainframe center worker is computer, which will preparing to replace many of the remove the excess servers in the data servers. center that stretches out behind him. 1.53 Silberschatz, Galvin and Gagne ©2013 53 Operating System Concepts – 9th Edition (3) Real-time systems (RTOS) Reliability is key Fast and time limit sensitive Used in time-critical environments Space flights, airport traffic control, high-speed aircraft Industrial processes Sophisticated medical equipment Distribution of electricity Telephone switching Must be 100% responsive, 100% of the time 1.54 Silberschatz, Galvin and Gagne ©2013 54 Operating System Concepts – 9th Edition Two types of real-time system depending on the consequences of missing the deadline: Hard real-time system Soft real-time system Secondary storage Limited utility in limited or absent, data industrial control or stored in short-term robotics. memory, or read-only memory (ROM) Useful in applications (multimedia, virtual Not supported by reality) requiring general-purpose advanced operating- operating systems. system features. Total system failure if deadline Suffer performance degradation, missed. but not total system failure. 1.55 Silberschatz, Galvin and Gagne ©2013 55 Operating System Concepts – 9th Edition (4) Hybrid systems Combination of batch and interactive Appear to be interactive Users access system, fast responses Accept and run batch programs in the back ground Condition: when interactive load is light Take advantage from free time between high-low demand usage Many large computer system are hybrids 1.56 Silberschatz, Galvin and Gagne ©2013 56 Operating System Concepts – 9th Edition (5) Embedded systems Computers placed inside other products Adds features and capabilities Operating system requirements Perform specific set of programs Not interchangeable among systems Small kernel and flexible function capabilities 1.57 Silberschatz, Galvin and Gagne ©2013 57 Operating System Concepts – 9th Edition Example of Embedded System: Household appliances, automobiles, digital music players, 1.58 Silberschatz, Galvin and Gagne ©2013 58 Operating System Concepts – 9th Edition Self-Test: What embedded systems might be available for the car? Security System 1.59 Silberschatz, Galvin and Gagne ©2013 59 Operating System Concepts – 9th Edition 1.11 Computing Environments Traditional Computing Mobile Computing Distributed Systems Client-Server Computing Peer-to-Peer Computing Virtualization Cloud Computing Real-Time Embedded Systems Operating System Concepts – 9th Edition 1.60 Silberschatz, Galvin and Gagne ©2013 1.11.1 Computing Environments - Traditional Stand-alone general purpose machines But blurred as most systems interconnect with others (i.e., the Internet) Portals provide web access to internal systems Network computers (thin clients) are like Web terminals Mobile computers interconnect via wireless networks Networking becoming ubiquitous – even home systems use firewalls to protect home computers from Internet attacks Operating System Concepts – 9th Edition 1.61 Silberschatz, Galvin and Gagne ©2013 1.11.2 Computing Environments - Mobile Handheld smartphones, tablets, etc What is the functional difference between them and a “traditional” laptop? Extra features – more OS features (GPS -- Waze) Allows new types of apps like augmented reality Use IEEE 802.11 wireless, or cellular data networks for connectivity Leaders are Apple iOS and Google Android Operating System Concepts – 9th Edition 1.62 Silberschatz, Galvin and Gagne ©2013 1.11.3 Computing Environments – Distributed Collection of separate, possibly heterogeneous, systems networked together Network is a communications path, TCP/IP most common Local Area Network (LAN) Wide Area Network (WAN) Metropolitan Area Network (MAN) Personal Area Network (PAN) Network Operating System provides features to allow sharing of data between systems across a network. Communication scheme allows systems to exchange messages Illusion of a single system Operating System Concepts – 9th Edition 1.63 Silberschatz, Galvin and Gagne ©2013 1.11.6Virtualization Allows operating systems to run applications within other OSes Vast and growing industry Emulation used when the source CPU type is different from the target type (i.e., PowerPC to Intel x86) Generally slowest method When computer language not compiled to native code – Interpretation Virtualization – OS natively compiled for CPU, running guest OSes also natively compiled Consider VMware running WinXP guests, each running applications, all on native WinXP host OS VMM (virtual machine Manager) provides virtualization services Operating System Concepts – 9th Edition 1.64 Silberschatz, Galvin and Gagne ©2013 Virtualization on Laptops and Destops A VMM allow the user to install multiple operating systems to run application written for operating systems other than the native host. Apple laptop running Mac OS X host Windows as a guest Developing apps for multiple OSes without having multiple systems Testing applications without having multiple systems Executing and managing compute environments within data centers Operating System Concepts – 9th Edition 1.65 Silberschatz, Galvin and Gagne ©2013 Virtualization Architecture Structure Figure 1.20 VMware Operating System Concepts – 9th Edition 1.66 Silberschatz, Galvin and Gagne ©2013 VM: Advantages/Disadvantages Advantages : Provides full protection for system resources because each virtual machine is separated from another VM. Suitable for R&D in OS because system development is done on VM, not on physical machine which may disrupt the operation of computer system. Disadvantages : Difficult to implement because need to implement an exact copy of the real machine. a virtual machine is less efficient than a real machine because it accesses the hardware indirectly 1.67 Silberschatz, Galvin and Gagne ©2013 67 Operating System Concepts – 9th Edition Example: Java Virtual Machine (JVM) A Java Virtual Machine (JVM) is a set of computer software programs and data structures that use a virtual machine model for the execution of other computer programs and scripts. operate on Java bytecode JVM consists of: Class Loader: load class file for Java program and Java API to be executed. Java Interpreter: a software that interprets byte-code to machine language of a host computer. 1.68 Silberschatz, Galvin and Gagne ©2013 68 Operating System Concepts – 9th Edition JVM Java Program Class Loader Java API Java Interpreter OS (Solaris, Linux, Win 95/NT) Hardware (Sparc, Pentium, X86) 1.69 Silberschatz, Galvin and Gagne ©2013 69 Operating System Concepts – 9th Edition 1.12 Open-Source Operating Systems Operating systems made available in source-code format rather than just binary closed-source Counter to the copy protection and Digital Rights Management (DRM) movement Started by Free Software Foundation (FSF), which has “copyleft” GNU Public License (GPL) Examples include GNU/Linux and BSD UNIX (including core of Mac OS X), and many more Can use VMM like VMware Player (Free on Windows), Virtualbox (open source and free on many platforms - http://www.virtualbox.com) Use to run guest operating systems for exploration Operating System Concepts – 9th Edition 1.70 Silberschatz, Galvin and Gagne ©2013 Migration of OS Concepts and Features Mainframes Minicomputers Microcomputers Network Computers 1.71 Silberschatz, Galvin and Gagne ©2013 71 Operating System Concepts – 9th Edition OS Development in 2000s Primary design features support: Multimedia applications Internet and Web access Client/server computing Computer systems requirements Increased CPU speed High-speed network attachments (Fiber Optics, Wireless) Increased number and variety of storage devices Virtualization Single server supports different operating systems (you can choose which operating system to use when you start the server) 1.72 Silberschatz, Galvin and Gagne ©2013 72 Operating System Concepts – 9th Edition Ex tra Self-Test: Answer: D Answer: A 1.73 Silberschatz, Galvin and Gagne ©2013 73 Operating System Concepts – 9th Edition End of Chapter 1 Operating System Concepts – 9th Edit9on Silberschatz, Galvin and Gagne ©2013