Operating System PCC-CS403 - XI

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 16

Operating System PCC-CS403

Operating System Structure


• Simple structure
– MS-DOS and UNIX started as small, simple and limited
systems
 Layered approach
 The OS is broken into layers; lowest=hardware,
highest=GUI
 A typical layer has routines that can be invoked by higher
ones
 Advantage: modularity (which simplifies debugging)
 A layer doesn’t need to know how lower-level operations
are implemented, only what they do
Operating System Structure
Problems:
– Layers can use only lower-level ones, so they must be well
defined
• For ex., the device driver for the backing store (disk space used by
virtual-memory algorithms) must be at a lower level than the
memory-management routines, because memory management
requires the ability to use the backing store.
– Layered implementation are less efficient than other types

Nowadays fewer layers with more functionality are being


designed
A layered operating system
Microkernel
• All nonessential components are removed from
the components and are implemented as system
and user programs
• The smaller kernel provides minimal process and
memory management
• Advantages:
– Ease of extending the OS
– The OS is easier to port from one hardware design to
another
– More reliability: a failed user service won’t affect the OS
Microkernel
• Main function of the micro kernel is to provide
a communication facility between the client
program and the various services that are also
running in user space
• For example, if the client program wishes to
access a file, it must interact with the file
server indirectly through the microkernel
Virtual Machines
• The fundamental idea behind a virtual
machine is to abstract the hardware of a single
computer (the CPU, memory, disk drives,
network interface cards, and so forth) into
several different execution environments,
thereby creating the illusion that each
separate execution environment is running its
own private computer
Virtual Machines
• The layered approach is taken to its logical
conclusion in the concept of a virtual memory
• It treats hardware and the operating system
kernel as though they were all hardware
• A virtual machine provides an interface
identical to the underlying bare hardware
• The OS creates the illusion of multiple
processes, each executing on its own processor
with its own virtual memory
Virtual Machines
• The resources of the physical computer are
shared to create the virtual machines
– CPU scheduling can create the appearance that
users have their own processor
– Spooling and a file system can provide virtual card
readers and virtual line printers
– A normal user time-sharing terminal serves as
virtual operators console
System models. (a) Non-virtual machine. (b)
Virtual machine
Virtual Machines
• The virtual-machine concept provides complete
protection of system resources since each virtual
machine is isolated from all other virtual machines.
This isolation, however, permits no direct sharing of
resources

• A virtual-machine system is a perfect vehicle for


operating systems research and development. System
development is done on the virtual machine, instead of
on a physical machine and so does not disrupt normal
system operation
Virtual Machines
• The virtual machine concept is difficult to
implement due to the effort required to
provide an exact duplicate to the underlying
machine
VMware Architecture
JVM
• The Java Virtual Machine
Java consists of:
– programming language specification
– application programming interface (API)
– virtual machine specification
Java portability across platforms

Program.class
P

Unix Java Java hardware


Platform platform

Windows Java
Platform

You might also like