Modern Operating Systems
B.Ramamurthy
Chapter 2, Section 2.4
Topics
New developments and influences
Microkernel Architecture
Multithreading
Symmetric Multiprocessing
Distributed Systems
Object-oriented design
Windows NT architecture
Traditional Unix Kernel
Summary
New Developments
Hardware : increased machine speed,
high speed network attachments,
increased size of memory storage, lower
cost
Application : multimedia, internet,
intranet, Web computing, client/server
computing
Software : Object Oriented design and
programming
Influences on OS
Wide range of design approaches:
1. Microkernel architecture
2. Multithreading
3. Symmetric multiprocessing
4. Distributed Operating Systems
5. Object-oriented design
Microkernel Architecture
Essential services such as address space management,
interprocess communications, and basic scheduling are
done by the kernel.
For the rest of the services special servers are designed
separately.
Flexibility in design and for support of distributed
system.
Highly suited for customizing services for various
environments.
Example: Mach system, CTRX realtime kernel for 8051
Multithreading
A thread is dispatchable unit of work.
Many threads can execute the code in the same
process space.
Code for multithread should be re-entrant :
What is reentracy?
Also known as lightweight process since the
overhead in thread switching and control is
much less compared to process control
switching.
Example: Windows NT , Solaris
Symmetric
Multiprocessing (SMP)
Many of today’s systems have multiple
microprocessors
The architecture is known as SMP if the
processors share the same main memory and
IO space and can be used interchangeably. (do
the same functions)
For performance and reliability (availability,
maintainability, scalability, fault-tolerance).
Ex: Windows NT and Solaris
Distributed Systems
A distributed system is a collection of
independent computers that appear to the users
of the system as a single computer.
In this age of geographically distributed data
sources and clients this model works very well.
Question is : network connected, networktransparent, network-centric model, or clusters?
Object Oriented Design
Lends discipline to the process of extending
small kernels.
Customization of the operating system
without disrupting system integrity.
Forms the basis for remote location of
services, mobility, accountability, security
etc.
Supports Client-server paradigm of computing.
Example: Windows NT
Features of Windows NT (
Fig.2.13)
User mode and Kernel mode : Separation
of user and kernel functions.
Modified microkernel architecture.
Windows NT Executive: Executive services
HAL : Hardware Abstraction Layer :
abstract unberlying machine (alpha, intel,
etc.)
System services (user interface)
Features of Traditional
Unix kernel
User level kernel level
System call subsystem
User programs may access kernel thru’
libraries or directly thru’ system calls:
Which one preferred and why?
File Subsystem, Process Control
subsystem
Study Fig 2.17 (modern unix kernel
functions)
Summary
Major OS Topics include: Process
management, File management,
scheduling, IO management, concurrency,
memory management, security.
Keep up with recent developments.
Distribution of services and resources is
an very critical topic.