Operating-System Structure
1. Simple Structure
- MS-DOS - Written to provide the most functionality in the least space
- Not divided into modules
- Although MS-DOS has some structure, its interfaces and levels of functionality are not well separated
2. 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
- #UNIX - limited by hardware functionality, the original UNIX operating system had limited structuring. The UNIX OS consists of two separable parts
- 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
|
UNIX System Structure |
3. Microkernel System Structure
- Moves as much from the kernel into "user" space
- Communication takes place between user modules using message passing
- Benefits:
- Easier to extend a mocrokernel
- Easier to port the operating system to new architectures
- More reliable (less code is running in kernel mode)
- More secure
- Detriments:
- Performance overhead of user space to kernel space communication
|
Mac OS X Structure |
Mac OS X is mixed structure (with Mach Microkernel and BSD kernel and kernel extension)
4. Modules
|
Solaris Modular Approach |
- Most modern operating systems implement kernel modules
- Uses object-oriented approach
- Each core component is separate
- Each talks to the others over known interfaces
- Each is loadable as needed within the kernel
- Overall, similar to layers but with more flexible
Virtual Machines
참고 : Operating System Concepts by WILEY
댓글 없음:
댓글 쓰기