0% found this document useful (0 votes)
13 views14 pages

Lect 05 OS Basics

The document discusses the structure of operating systems, emphasizing a layered approach where each layer is built on lower layers, facilitating debugging but adding overhead. It contrasts different OS structures, including UNIX, microkernel, and modular designs, highlighting their benefits and drawbacks. Additionally, it explains why applications are OS-specific due to unique system calls and the role of the Application Binary Interface (ABI).

Uploaded by

f20212684
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views14 pages

Lect 05 OS Basics

The document discusses the structure of operating systems, emphasizing a layered approach where each layer is built on lower layers, facilitating debugging but adding overhead. It contrasts different OS structures, including UNIX, microkernel, and modular designs, highlighting their benefits and drawbacks. Additionally, it explains why applications are OS-specific due to unique system calls and the role of the Application Binary Interface (ABI).

Uploaded by

f20212684
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

OPERATING SYSTEMS CS F372

BIJU K RAVEENDRAN & TEAM

LECT #05: OS BASICS


OS Structure - 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
– This approach simplifies debugging and system
verifications.
• Difficulty of Layered approach
– Careful definition of the layer is needed.
– Less efficient than other types(Each layer adds overhead)

January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 2


Layered OS

January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 3


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
January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 4
UNIX System Structure

January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 5


UNIX Kernel Space

January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 6


Linux System Structure

Monolithic
with Modular
Design

January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 7


Microkernel System Structure
• Moves as much from the kernel into “user” space
• Communication takes place between user modules using message
passing
• Kernel consist of only essential components
• The kernel will be very small
• Main function of the Micro kernel is to provide communication
facility (using Message passing)
• Benefits:
– Easier to extend a microkernel
– 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
January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 8
Microkernel System Structure

January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 9


Monolithic Vs Micro Kernel

January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 10


Modules
• 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
– Linux, Solaris
January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 11
Solaris Modular Approach

January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 12


Hybrid Systems
• Most modern OSs are actually not one pure model
– Hybrid combines multiple approaches to address
performance, security, usability needs
– Linux and Solaris kernels in kernel address space
are monolithic and are modular for dynamic
loading of functionality
– Windows mostly monolithic, plus microkernel
for different subsystem personalities

January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 13


Why Applications are OS Specific?
• Apps compiled on one system usually not executable on other OS
• Each OS provides its own unique system calls, file formats etc..
• Apps can be multi-operating system
– Written in interpreted language like Python, Ruby, and
interpreter available on multiple OSs
– App written in language that includes a VM containing the
running app (like Java)
– Use standard language (like C), compile separately on each OS
to run on each
• Application Binary Interface (ABI) is architecture equivalent of API,
defines how different components of binary code can interface for
a given operating system on a given architecture, CPU, etc .
January 16, 2025 Biju K Raveendran @ BITS Pilani Goa 14

You might also like