Presentation is loading. Please wait.

Presentation is loading. Please wait.

Quick Introduction to OS

Similar presentations


Presentation on theme: "Quick Introduction to OS"— Presentation transcript:

1 Quick Introduction to OS
DEPARTMENT OF COMPUTER SCIENCE AND SOFTWARE ENGINEERING CONCORDIA UNIVERSITY Quick Introduction to OS by-Istiaque Shahriar Quick Introduction to OS January 17, 2007

2 Quick Introduction to OS
Outline Computers and Software General System Software Resource Abstraction Resource Sharing System Software and OS OS Evaluation Batch Systems Timesharing Systems Real Time OS Distributed OS Web OS Modern OS Genesis Basic OS Organization Quick Introduction to OS

3 Computers and Software
Two major groups of software: Application software: Designed to solve a specific problem (eg. MS Word) System software: provides a general programming environment. For application software it provides The functions to be used The mechanisms to share the hardware in an orderly fashion. Sharing Increases overall performance (by allowing different application software to use different parts or resources of the computer at the same time). Decreases the time for execution of a collection of programs Operating system is a subset of the system software. Quick Introduction to OS

4 System Software: General Applications
Runtime system for a programming language (API) Usually implemented in C libraries (Unix, Windows): Standard input/output (I/O) library – procedures to perform buffered input/output on a stream of data; The math library – functions to perform various mathematical computations; Graphics libraries – functions to render images on a bitmapped display Window system – software that provides a virtual terminal to an application program. Database Management System (DBMS) – stores and manipulate information (data) on storage devices (e.g. disks) and retrieved at the time of need. Operating system – interacts directly with the hardware to provide an interface to other system software and with application software whenever it wants to use system’s (computer’s) resources. An OS is application domain independent; provides resource abstraction and management; provides resource sharing (through strict resource management policies). Provides convenient environment for the Users Quick Introduction to OS

5 Operating System Aspects
Key aspects of the OS: Resource Abstraction Resource Sharing What is Resource? The OS treats any entity as a resource if it satisfies following characteristics: A process must request that entity from the OS. A process must suspend its operation until the entity is allocated to it. Anything like CPU cycle, Main memory, printer….. Quick Introduction to OS

6 Resource Abstraction Aspects
Similar resources can be abstracted to a common abstract resource interface (i.e. system software may abstract floppy disks, hard-disks and CD-ROMs into a single abstract disk interface). Abstraction generalizes the hardware behavior but restricts the flexibility. With abstraction, certain operations become easier to perform, other may become impossible (such as specific hardware control). Different hardware components that a program may use are referred to as resources. Any particular resource, such as a HDD has a generic interface that defines how the programmer can make the resource perform a desired operation. An abstraction can be made to be much simpler than the actual resource interface. Quick Introduction to OS

7 Resource Sharing Aspects
Abstract and physical resources may be shared among a set of concurrently executing programs. Two kinds of resource sharing: Space multiplexed sharing Resource can be divided in two or more distinct units, which units units can be used independently. Different executing programs, or processes can allocate exclusive control of different units of a resource at the same time e.g. Main memory and HDD. Time multiplexed sharing The resource is not spatially divisible. A process is allocated exclusive control of the entire resource for a short period of time. After specified time has elapsed, the resource is de-allocated from the process and allocated to another. Quick Introduction to OS

8 Abstract View of System Components
Quick Introduction to OS

9 Quick Introduction to OS
System Software and OS Quick Introduction to OS

10 Operating Systems Evolution
Computers with no operating system (Only Operators) Programming in machine language. Lack of I/O devices. OS rudiments Programming done in assembly. Some basic I/O devices (may be punch card readers). Some I/O control modules, assembler, debugger, loader, linker (limited). Batch processing systems – serve a collection of jobs, called a batch, from a queue: Job – predefined sequence of commands, programs and data combined into a single unit. The user doesn’t interact with programs while they operate. Batch – preferably of similar type of jobs Quick Introduction to OS

11 Operating Systems Evolution
Multiprogramming OS– the technique of loading multiple programs into space multiplexed memory while time-multiplexing the processor. Timesharing systems. Real time operating systems. Distributed operating systems. Multiprogramming systems common features Multitasking – multiple processes sharing machine resources. Hardware support -for memory protection and I/O devices. Multi-user and multi-access support (through time sharing mechanisms). Interactive user interface. Quick Introduction to OS

12 Batch Systems’ Aspects
Processor scheduling: FIFO. Memory management: Memory is divided in two parts: system memory and program memory (for programs). I/O management – no special problems, since a job has exclusive access to the I/O devices. File management – a critical issue in multiprogramming batch systems. Quick Introduction to OS

13 Timesharing Systems’ Aspects
Support for multiprogramming and multi-user. Processor scheduling Time slicing. Memory management Protection and inter-process communication support. I/O management Support for protection and sharing between users. File management Protection support and sharing support between users. Quick Introduction to OS

14 Real Time Operating Systems’ Aspects
Used whenever a large number of external events have to be treated in a short or limited interval of time. Main goal Minimization of the response time to serve the external events. Processor scheduling: Priority based preemptive. Why?? Memory management: Concurrent processes are loaded into memory. Support for protection and inter-process communication. I/O management Critical in time. Processes dealing with I/O are directly connected to the interrupt vectors. Soft Real time system Hard Real time system Quick Introduction to OS

15 Distributed Operating Systems’ Aspects
Distribute the computation among several physical processors Loosely coupled system – each processor has its own local memory; processors communicate with one another through various communications lines, such as high-speed buses or telephone lines Advantages of distributed systems Resources Sharing Computation speed up – load sharing Reliability Communications App Distributed OS Multiple computers connected via a network Quick Introduction to OS

16 Web Operating Systems’ Aspects
WebOS is a university project at University of California, Berkeley. WebOS provides basic operating system services needed to build applications that are: geographically distributed; highly available; incrementally scalable; dynamically reconfiguring. WebNFS – bringing the file system to the Internet. Features: Is based on TCP/IP. Works through firewalls. Read-ahead for faster data access. Write-behind for faster data writes over internet. Print sharing and queue management. Centralized server administration. Quick Introduction to OS

17 Basic Operating System Organization
Basic functions - device management, process and resource management, memory management, file management Operating System Process and Resource Manager File Manager Memory Device Computer Hardware Processor (s) Main Memory Devices Quick Introduction to OS

18 Quick Introduction to OS
References Garry Nutt, “Operating Systems – A Modern Perspective”, Second Edition, Wesley, 2002 WebNFS, Technical Overview, Sun Microsystems, WebOS: Operating System Services for Wide Area Applications, Quick Introduction to OS


Download ppt "Quick Introduction to OS"

Similar presentations


Ads by Google