UNIX operating system
The UNIX system structure consists of the following components -
2. Commands and utilities
The layers of the system structure can be viewed as shown in figure.
|Digram for Unix Opertating system|
The hardware at the center of the diagram provides the operating system with its basic services. The layer above the physical hardware is the kernel.
The kernel is that part of the operating system that interacts directly with the hardware. It isolates itself from the user programs and the programs are independent of the hardware. This makes the UNIX system to run on different machines. The kernel provides the file system, CPU scheduling, memory management and other operating system functions through system calls.
Programs such as shell (sh) and editors (vi and ed) shown in the outer layers interact with the kernel by invoking a well defined set of system calls. The system calls instruct the kernel to do various operations for the calling program and exchange data between the kernel and the program. In the same layer several programs exist. They are commands (who, we, grep, comp), system libraries and private user programs (a.out).
The outermost layer in the figure consists of other application programs and the standard C compiler, cc, that invokes a C preprocessor, two-pass compiler, assembler and loader. UNIX application programs are built upon the kernel and the kernel's system calls. The kernel provides the services upon which all application programs rely and it defines those services.