References Operating System Concepts ABRAHAM SILBERSCHATZ, PETER BAER GALVIN, and GREG GAGNE
What is the Operating system? An operating system is a program that manages a computer’s hardware. It also provides a basis for application programs and acts as an intermediary between the computer user and the computer hardware. Operating systems may vary depending on the application as follows: Mainframe operating systems are designed primarily to optimize utilization of hardware. Personal computer (PC) operating systems support complex games, business applications, and everything in between. Operating systems for mobile computers provide an environment in which a user can easily interface with the computer to execute programs.
What is the Operating system? (continue) Thus, some operating systems are designed to be convenient, others to be efficient, and others to be some combination of the two.
What Does An Operating System Do? a.Manage the computer resources: The task of looking after the computer is given to the computer itself, and in particular to the operating system. This must manage use of the CPU, allocation of memory, access to disk drives, control of printers and modems, and so on. All the input/output functions of the computer are controlled by the operating system. b.Interact with the user: For a computer to be of use its user must have some means of interacting with it. It is the operating system's task to provide a means of doing this which is easy, consistent, flexible and structured c.Run applications: The application packages, such as word processors or spreadsheets, are what the user really wants to use. The operating system provides a means of executing them, and provides the programs with tools and services. These include commands which the application can use to fetch data from a hard disk, or to send data to a printer. With graphical operating systems, the application also utilizes the menu facilities and windows design offered by the operating system.
Parts of an Operating System a.Kernel: is the one program running at all times on the computer. This has the task of loading the applications into memory, making sure they do not interfere with one another and allowing them to share use of the CPU efficiently. The kernel also handles file storage to and from secondary storage devices such as hard disks and optical drives. Therefore the kernel handles: 1)Loading and Unloading application from memory. 2)Scheduling the tasks to run on the CPU. 3)Memory Management. 4)File Management 5)Data Security.
b.System Programs: which are associated with the operating system but are not necessarily part of the kernel. This part of the operating system provides all the basic facilities that run in the background without user interaction. For example, 1)Print spool services 2)Cryptographic password management. 3)File management services Parts of an Operating System (continue)
c.User Interface: This part of the operating system is directing what you see on the screen (via the device driver) and reacting to your key presses and other inputs. The user interface could be a basic command line interface, as you might find on a server, or it might be a full blown Graphical User Interface (GUI) such as the Mac OS X, Windows or Linux. Parts of an Operating System (continue)
d.Device Drivers: Every piece of hardware that makes up the computer or connected to it, will have a device driver that allows the operating system to control and communicate with it. There could be hundreds of device drivers pre-installed with the operating system, and the right ones for that particular computer set-up is loaded on boot-up. The exact detail of which device driver is needed by the operating system is kept in a file - in Windows, the file is called the 'registry' and in Linux the details will be stored as a number of 'configuration files'. Makers of printers, graphics tablets, scanners, digital cameras and so on, will normally provide device drivers for each make of operating system. A device driver for Windows is different from the device driver for Linux. Parts of an Operating System (continue)
Computer System Organization 1.Computer system operation A modern general-purpose computer system consists of one or more CPUs and a number of device controllers connected through a common bus that provides access to shared memory. Each device controller is in charge of a specific type of device (for example, disk drives, audio devices, or video displays). The CPU and the device controllers can execute in parallel, competing for memory cycles. To ensure orderly access to the shared memory, a memory controller synchronizes access to the memory. For a computer to start running when it is powered up or rebooted, it needs to have an initial program to run called bootstrap program, tends to be simple. Typically, bootstrap program is stored within the computer hardware in read- only memory ( ROM ) or electrically erasable programmable read-only memory ( EEPROM ), known by the general term firmware.
1.Computer system operation (continue) The Function of Bootstrap program. a.It initializes all aspects of the system, from CPU registers to device controllers to memory contents. b.It loads the operating system kernel into the memory and starts executing it. Computer System Organization