0% found this document useful (0 votes)
217 views13 pages

Operating Systems (An Introduction) : Chester Rebeiro IIT Madras

The document provides an overview of operating systems, including their key functions and types. It discusses how operating systems provide abstraction, resource management, and allow applications to share hardware resources. It also briefly describes the layers in a system from applications to hardware and mentions the xv6 operating system as an example for educational purposes.

Uploaded by

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

Operating Systems (An Introduction) : Chester Rebeiro IIT Madras

The document provides an overview of operating systems, including their key functions and types. It discusses how operating systems provide abstraction, resource management, and allow applications to share hardware resources. It also briefly describes the layers in a system from applications to hardware and mentions the xv6 operating system as an example for educational purposes.

Uploaded by

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

Operating Systems

(An Introduction)
Chester Rebeiro
IIT Madras
The Layers in Systems

Applications

Operating Systems

Computer Organization

VLSI

Transistors

2
OS usage

• Hardware Abstraction
turns hardware into something that applications can use

• Resource Management
manage system’s resources

3
A Simple Program
What is the output of the following program?

How is the string displayed on the screen?

4
Displaying on the Screen
“Hello World” +
coordinates, color,
depth, etc

Monitor
ld”
or
W
e llo Processor
“H

Main Memory
(RAM) Graphics Card

• Can be complex and tedious


• Hardware dependent

Without an OS, all programs need to take care of every nitty gritty detail

5
Operating Systems
provide Abstraction
App

system call
(write to STDOUT)

Operating System device


driver

• Easy to program apps


– No more nitty gritty details for programmers
• Reusable functionality
– Apps can reuse the OS functionality
• Portable
– OS interfaces are consistent. The app does not change when hardware changes

6
OS as a Resource Manager
• Multiple apps but limited hardware
Apps

Operating Systems

Allows sharing of hardware!!

7
OS as Resource Manager
• OS must manage CPU, memory, network, secondary
storage (hard disk), etc…
• Resource management
– allows multiple apps to share resources
– protects apps from each other
– Improves performance by efficient utilization of resources

8
Sharing the CPU
App1 App2 App3 App4

Who uses the CPU?


App1 App2 App3 App4

time

pre9
Sharing Memory
App1 App2 App3 App4

Main Memory

Which App uses which memory?

10
Share but Isolate

App1 App2 App3 App4

Share resources but keep applications isolated from each other

11
Operating Systems Types
• Application Specific
– Embedded OS
• eg. Contiki OS, for extremely memory constraint environments
– Mobile OS
• Android, iOS, Ubuntu Touch, Windows Touch
– RTOS
• QNX, VxWorks, RTLinux
– Secure Environments
• SeLinux, SeL4
– For Servers
• Redhat, Ubuntu, Windows Server
– Desktops
• Mac OS, Windows, Ubuntu

12
xv6
• Designed for pedagogical reasons
• Unix like (version 6)
– Looks very similar to modern Linux operating systems
• Theory classes : xv6
– Well documented, easy to understand

https://pdos.csail.mit.edu/6.828/2012/xv6.html 13

You might also like