* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Introduction to operating systems
Library (computing) wikipedia , lookup
MTS system architecture wikipedia , lookup
Plan 9 from Bell Labs wikipedia , lookup
Distributed operating system wikipedia , lookup
Mobile operating system wikipedia , lookup
Security-focused operating system wikipedia , lookup
Burroughs MCP wikipedia , lookup
Spring (operating system) wikipedia , lookup
Process management (computing) wikipedia , lookup
Copland (operating system) wikipedia , lookup
Introduction to Operating Systems What is an operating system? Examples How do many programs run at the same time, with one processor? What is an operating system? A short definition of an operating system: An operating system is a collection of system programs that manage the resources of a computer and control the running of user programs. Why do we need an operating system? An operating system from a programmer’s point of view is a program that adds a variety of new instructions and features, beyond those of the instruction set. An operating system is implemented largely in software. Examples UNIX/Linux Windows 98 Windows NT Windows XP BEOS DOS Kernel – – Central part of the operating system. All hardware requests go through the kernel as system calls Shell – The interfaces for the applications programs and users, with the operating system. Interrupts Where the normal running of a program is interrupted by an event. Generated: – – – – By computers hardware e.g. key press Within the CPU by unexpected event, e.g divide-byzero. By external events, e.g. from interface cards By software to perform pre-defined routines in ROM or RAM, e.g. routines in BIOS or user defined routines in RAM- software interrupts. Process manager deals with – – – – hardware/software interrupts. Processor errors Scheduling tasks Communication between tasks Memory Management – – – Allocate memory Ensures processes (see next week’s lecture) stay memory boundaries Controlling virtual memory I/0 System – – Communicates with peripherals and hardware components Co-ordinates i/o systems such as interrupts and direct memory access Files system – – – Organises and accesses files Maintains on a multi-user system user file quotas Controls file/record access Application Program Interface – – Provides systems services for applications An interface between the applications and the operating system. User interface – – – Allows the user access to programs Allows the user to view and change system settings. A consistent interface between the user and the operating system. Single user/task system Simplest system Single machine running one application at a time. Has it’s own resources (e.g. printer). Multiprogramming/Multi-tasking System How do many programs run at the same time, with one processor? Short answer: They do not! They just appear to by running one program at a time, but for a short period of time. Most modern operating systems have the ability to execute several programs at once, although there is usually only one processor in the system. This is multiprogramming and is made possible by rapidly switching the processor between programs. Interrupting the processor periodically, gives the programs control of the processor for a short period. This switching is triggered by a piece of hardware called the interval timer, which generates an interrupt (a time-out interrupt) when the programmed period has elapsed. The interrupt handler, then saves the context of the processor. The context is the contents of registers that may be overwritten by other programs. Control is passed over to the dispatcher/low-level scheduler. The dispatcher searches a set of potentially 'runnable' program using a scheduling algorithm to select a suitable program to run next. The context of the processor, which existed when that program last ran, is restored to the registers.