The kernel is further separated into a series of interfaces and device drivers, which have been added and expanded over the years as UNIX has evolved.
We can view the UNIX operating system as being layered as shown in Figure Next
Size: 882.88 KB
Language: en
Added: Jun 03, 2021
Slides: 10 pages
Slide Content
Operating System 14 UNIX and Kernel Based OS Prof Neeraj Bhargava Vaibhav Khanna Department of Computer Science School of Engineering and Systems Sciences Maharshi Dayanand Saraswati University Ajmer
Operating System Design and Implementation Design and Implementation of OS not “ solvable ” , but some approaches have proven successful Internal structure of different Operating Systems can vary widely Start the design by defining goals and specifications Affected by choice of hardware, type of system User goals and System goals User goals – operating system should be convenient to use, easy to learn, reliable, safe, and fast System goals – operating system should be easy to design, implement, and maintain, as well as flexible, reliable, error-free, and efficient
Operating System Design and Implementation (Cont.) Important principle to separate Policy : What will be done? Mechanism : How to do it? Mechanisms determine how to do something, policies decide what will be done The separation of policy from mechanism is a very important principle, it allows maximum flexibility if policy decisions are to be changed later (example – timer) Specifying and designing an OS is highly creative task of software engineering
Non Simple Structure -- UNIX UNIX – limited by hardware functionality, the original UNIX operating system had limited structuring. The UNIX OS consists of two separable parts Systems programs The kernel Consists of everything below the system-call interface and above the physical hardware Provides the file system, CPU scheduling, memory management, and other operating-system functions; a large number of functions for one level
Traditional UNIX System Structure The kernel is further separated into a series of interfaces and device drivers, which have been added and expanded over the years as UNIX has evolved. We can view the UNIX operating system as being layered as shown in Figure Next
Traditional UNIX System Structure Beyond simple but not fully layered
Layered Approach The operating system is divided into a number of layers (levels), each built on top of lower layers. The bottom layer (layer 0), is the hardware; the highest (layer N) is the user interface. With modularity, layers are selected such that each uses functions (operations) and services of only lower-level layers
Kernel based OS Everything below the system-call interface and above the physical hardware is the kernel. The kernel provides the file system, CPU scheduling, memory management, and other operating system functions through system calls. Taken in sum, that is an enormous amount of functionality to be combined into one level. Systems programs use the kernel-supported system calls to provide useful functions, such as compilation and file manipulation.
Kernel based OS System calls define the programmer interface to UNIX; the set of systems programs commonly available defines the user interface. The programmer and user interfaces define the context that the kernel must support. Several versions of UNIX have been developed in which the kernel is partitioned further along functional boundaries. The AIX operating system, IBM's version of kernel based OS separates the kernel into two parts. Mach, from Carnegie Mellon University, reduces the kernel to a small set of core functions by moving all nonessentials into systems and even into user-level programs. What remains is a microkernel operating system implementing only a small set of necessary primitives.
Assignment Briefly Explain the Layered Architecture of UNIX.