* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Operating Systems
Survey
Document related concepts
Mobile operating system wikipedia , lookup
Plan 9 from Bell Labs wikipedia , lookup
Copland (operating system) wikipedia , lookup
Security-focused operating system wikipedia , lookup
Process management (computing) wikipedia , lookup
Spring (operating system) wikipedia , lookup
Distributed operating system wikipedia , lookup
Burroughs MCP wikipedia , lookup
Transcript
Operating Systems At its simplest level the operating system does two things: It manages the hardware and software resources of the computer system. The resources include such things as the processor, memory, storage and I/O. It provides a stable, consistent way for applications to deal with the hardware without having to know all the details of the hardware. User Input Program Output Applications Software Service Request Service Response Operating System Hardware Instructions Processing Results Computer Hardware Operating Systems perform a wide range of functions that can be loosely grouped as follows: 1. 2. 3. Resource Allocation Managing Processes & Files Providing a User Interface Operating systems can be divided into two basic types. Single-process systems Multiple-process systems Multiple-process operations can be organised in three different ways o multiuser o multitasking o multiprocessor Each of the different types of operating systems allows the computer to be utilised in a number of different modes: Interactive Batch Real-time 1 Allocate hardware resources CPU Time Time in the CPU is divided into time slices which are measured in milliseconds. Each task the CPU does is assigned a certain number of time slices. When time expires, another task gets a turn. The first task must wait until it has another turn. Since time slices are so small, you usually can't tell that any sharing is going on. Tasks can be assigned priorities so that high priority (foreground) tasks get more time slices than low priority (background) tasks. Memory Memory must be managed also by the operating system. All those rotating turns of CPU use leave data waiting around in buffers. Care must be taken not to lose data!! One way to help out the traffic jam is to use virtual memory. This includes disk space as part of main memory. While it is slower to put data on a hard disk, it increases the amount of data that can be held in memory at one time. When the memory chips get full, some of the data is paged out to the hard disk. This is called swapping. Windows uses a swap file for this purpose. Storage A more technical task is that of disk management. Under some operating systems your hard disk can be divided up, or partitioned into several virtual disks. The operating system treats each virtual disk as though it were a physically separate disk. Input and Output Flow control is also part of the operating system's responsibilities. The operating system must manage all requests to read data from disks or tape and all writes to these and to printers. To speed up the output to printers, most operating systems allow for print spooling, where the data to be printed is first put in a file. This frees up the processor for other work in between the times data is going to the printer. A printer can only handle so much data at a time. Without print spooling you'd have to wait for a print job to finish before you can do anything else. With it you can request several print jobs and go on working. The print spool will hold all the jobs and process them in turn. 2 File and Process Managagement Keeping track of what files are where, is a major job. So an operating system comes with basic file management commands. A user needs to be able to create and delete directories for storing files. A user needs to copy, move, delete, and rename files. This is the group of operating system functions that the user utilises the most. Directories are used to store information about files and to organise files into related groups. File information stored in a directory includes name, type, location, size, ownership, access controls and time stamps. File security A file-management system provides facilities to prevent the loss, corruption and unauthorised access to data stored in files. These include ownership and access controls and multiuser file access controls. Process Control Processes (also called tasks) are the basic unit of software to which resources are allocated. Each process has a process control block (PCB) that contains information such as the current state of the process. Generally a process can be in one of three states: running, ready or blocked. In multiple-process systems, the operating system is designed so that it can appear to work on several tasks simultaneously. Tasks, in turn, can be made up of several threads that can be worked on separately. System Performance A user or administrator can check to see whether the computer or network is getting overloaded. System performance would include response time ( how long it takes for the computer to respond when data is entered) and CPU utilization (comparing the time the CPU is working to the time it is idle.) 3 User Interface Interfaces Application User The operating system functions as an interface on two levels. First, the operating system interfaces software with hardware. Programs call the operating system to handle most of the details concerned with controlling the computer hardware. An application program interface (API) allows the operating system to run the same application on different hardware combinations. Second, the operating system interfaces users with the computer system. The interface may be either a command line interface or a graphical user interface (GUI). An interface between the user and the kernel is called a shell. It acts as an interpreter or translator. In other words, the shell accepts commands issued by the user, interprets these commands, and executes the appropriate programs. System Security Some system security is part of the operating system, though additional software can add more security functions. Single-user systems have to prevent the internals of the operating system from being accidentally or deliberately modified. For multiple users who are not all allowed access to everything, there must be a logon or login procedure where the user supplies a user ID and a secret password. An administrator must set up the permissions list of who can have access to what programs and what data. Glossary Multitasking: Only one CPU is involved, but it switches from one program to another so quickly that it gives the appearance of executing all of the programs at the same time. Multiuser: Refers to computer systems that support two or more simultaneous users. Multiprocessor: A computer system in which two or more processors have common access to main storage.