0% found this document useful (0 votes)
39 views

Lec4 CS604 Pps

Uploaded by

Ibrahim Choudary
Copyright
© © All Rights Reserved
Available Formats
Download as PPS, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views

Lec4 CS604 Pps

Uploaded by

Ibrahim Choudary
Copyright
© © All Rights Reserved
Available Formats
Download as PPS, PDF, TXT or read online on Scribd
You are on page 1/ 28

Operating

Systems
Lecture 4
Agenda for Today
 Review of previous lecture
 Operating system structures
 Operating system design and
implementation
 UNIX/Linux directory structure
 Browsing UNIX/Linux directory structure
 Useful UNIX/Linux commands
 Recap of the lecture
14 September 2019 © Copyright Virtual University of
Pakistan
UNIX System
Structure

14 September 2019 © Copyright Virtual University of


Pakistan
Layered Approach
 The OS is broken up into a number of
layers
 Bottom layer is hardware and the topmost
layer ( layer N) is the user interface
 A typical layer consists of data structures
and a set of routines to service the layer
above it
 THE operating system by Dijkstra
 IBM’s OS/2
14 September 2019 © Copyright Virtual University of
Pakistan
Layered Approach …

14 September 2019 © Copyright Virtual University of


Pakistan
Layered Approach …
 Modularity
 Each layer uses functions and services of
only lower layers
 Simplifies debugging and system
verification.
 The major difficulty with layered approach
is careful definition of layers, because a
layer can only use the layers below it
 Less efficient than other approaches
14 September 2019 © Copyright Virtual University of
Pakistan
Microkernel
 Structures the operating system by
removing all non-essential components
from the kernel and implementing them as
system and user level programs
 Smaller kernel
 Main function is to provide a
communication facility between client
programs and the various services that are
also running in the user space.
14 September 2019 © Copyright Virtual University of
Pakistan
Microkernel …
 Easier to extend the OS—new services are
added to user space and consequently do not
require modification of the kernel and/or its
recompilation
 Easier to maintain operating system code
(enhancement, debugging, etc.)
 OS is easier to port from one hardware to
another
 More security and reliability
 Mach, MacOS X Server, QNX, OS/2, and
Windows NT © CopyrightPakistan
14 September 2019 Virtual University of
Windows NT Client-
Server Structure

14 September 2019 © Copyright Virtual University of


Pakistan
Virtual Machines
 CPU scheduling and virtual memory
techniques used to emulate hardware of
the underlying machine, on which user can
install an operating system that the virtual
machine supports
 On a time-sharing system with virtual
machine support, users may be working on
different operating systems
 Pioneered by IBM VM operating system
that ran CMS, a single-user interactive
operating system
14 September 2019 © Copyright Virtual University of
Pakistan
Virtual Machines …
 Difficult to implement.
 System development done without
disrupting normal system operation.

14 September 2019 © Copyright Virtual University of


Pakistan
Virtual Machines …

Non Virtual
14 September 2019 Machine© Copyright Virtual UniversityVirtual
of Machine
Pakistan
VMWare on Windows

14 September 2019 © Copyright Virtual University of


Pakistan
VMWare on Windows

14 September 2019 © Copyright Virtual University of


Pakistan
Java Virtual Machine

14 September 2019 © Copyright Virtual University of


Pakistan
System Design and
Implementation
 Design Goals
 User: operating system should be
convenient to use, easy to learn, reliable,
safe, and fast.
 System designer and administrator:
operating system should be easy to
design, implement, and maintain, as well
as flexible, reliable, error-free, and
efficient.
14 September 2019 © Copyright Virtual University of
Pakistan
System Design and
Implementation …
 Mechanism: determine how to do
something
 Policy: determine what will be done
 Separation of mechanism and policy is
important for flexibility.

14 September 2019 © Copyright Virtual University of


Pakistan
System Design and
Implementation …
Implementation in:
 Assembly language
 Higher level languages:
 Easier to code
 Compact code
 Easier to port

14 September 2019 © Copyright Virtual University of


Pakistan
Introduction to UNIX
and Linux
 Written by Dennis Ritchie and Ken Thomsom in at
Bell Labs in 1969
 Initially written in assembly language and a high-
level language called B. Later converted from B to
C language.
 Linux written by Linus Torvalds (an undergraduate
student at the Univ. of Helsinki, Finland) in 1991.
 Most popular operating systems
 Internet runs on UNIX and Linux
14 September 2019 © Copyright Virtual University of
Pakistan
UNIX/Linux File
System
 UNIX has a hierarchical file system
structure consisting of a root directory
with other directories and files hanging
under it
 In a command-line user interface, typed
commands are used to navigate the system
 Directories and files are specified by
filenames
 cs604/assignments/assign1.c
 /home/students/haroon/courses/cs604
14 September 2019 © Copyright Virtual University of
Pakistan
Browsing Directory
Structure
/ The root directory is the directory that
contains all other directories. When a
directory structure is displayed as a
tree, the root directory is at the top.
/bin This directory holds binary executable
files that are essential for correct
operation of the system
/boot This directory includes essential
system boot files including the kernel
14 September 2019 © Copyright Virtual University of
image . Pakistan
Browsing Directory
Structure …
/dev This directory contains the devices
available to on the machine

/etc Linux uses this directory to store


system configuration files
/home This is where every user on a Linux
system has a personal directory
/lib Shared libraries and kernel modules
are stored
14 September 2019 in this
© Copyright directory
Virtual University of
Pakistan
Browsing Directory
Structure …
/root The home directory for the
superuser
/sbin Utilities used for system
administration (halt, ifconfig, fdisk,
etc.) are stored in this directory
/tmp Used for storing temporary files.
Similar to C:\Windows\Temp.

14 September 2019 © Copyright Virtual University of


Pakistan
Browsing Directory
Structure …
/usr Typically a shareable, read-only
directory. Contains user
applications and supporting files
for those applications.
/var This directory contains variable
data files such as logs (/var/log),
mail (/var/mail), and spools
(/var/spool) among other things.
14 September 2019 © Copyright Virtual University of
Pakistan
UNIX/Linux Directory
Hierarchy
/

bin dev home … sbin usr

faculty … students

14 September 2019 © Copyright Virtual University of


Pakistan
UNIX/Linux Directory
Hierarchy
students

ali … nadeem … munir

personal … courses

14 September 2019 cs401 …


© Copyright Virtual University of cs604
Pakistan
Recap
 Review of previous lecture
 Operating system structures
 Operating system design and
implementation
 UNIX/Linux directory structure
 Recap of the lecture

14 September 2019 © Copyright Virtual University of


Pakistan
Operating
Systems
Lecture 4

14 September 2019 © Copyright Virtual University of


Pakistan

You might also like