Presentation is loading. Please wait.

Presentation is loading. Please wait.

OPERATING SYSTEMS Prof. Sujata Rao Lesson 3. Agenda 1. What is an operating system? 2. How have operating systems evolved? 3. Functions of Operating System.

Similar presentations


Presentation on theme: "OPERATING SYSTEMS Prof. Sujata Rao Lesson 3. Agenda 1. What is an operating system? 2. How have operating systems evolved? 3. Functions of Operating System."— Presentation transcript:

1 OPERATING SYSTEMS Prof. Sujata Rao Lesson 3

2 Agenda 1. What is an operating system? 2. How have operating systems evolved? 3. Functions of Operating System ? 4. Types of Operating System ? 5. Why study operating systems? Introduction to Operating Systems29.07.2011 2

3 1. What is an Operating System? Connector between an application & hardware Software that converts hardware into a useful form for applications To define precisely… Users Hardware Operating System Applications compilers databases word processors CPU memory I/O devices 29.07.2011 3

4 Definition Set of programs containing instructions that co-ordinate all the activities among  computer hardware resources and  the application software which enables the hardware to conduct the essential activity. 29.07.2011 4

5 Roles of an OS Role #1  Provide standard Library (ie. abstract resources) Role #2  Resource coordinator (ie. manager) 29.07.2011 5

6 Role #1 Provide standard Library (ie. abstract resources) Abstract Resource?  e.g., CPU, memory, disk etc Advantages of standard library  Allow applications to reuse common facilities  Make different devices of similar type look the same  Provide higher-level abstractions Challenges  What are the correct abstractions?  How much of hardware should be exposed? 29.07.2011 6

7 Role #2: Resource coordinator (ie. manager) Advantages of resource coordinator  Virtualizes resource so multiple users or applications can share  Protect applications from one another  Provide efficient and fair access to resources Challenges  What are the correct mechanisms?  What are the correct policies? 29.07.2011 7

8 OS Functionality ? OS must adapt to both user expectations and technology changes Change abstractions provided to users Change algorithms to implement those abstractions Change low-level implementation to deal with hardware Current operating systems driven by evolution 29.07.2011 8

9 2. Evolution of the OS Two distinct phases of history  Phase 1: Expensive Computers Goal: Use computer’s time efficiently Maximize throughput (I.e., jobs per second) Maximize utilization (I.e., percentage busy)  Phase 2: Inexpensive Computers Goal: Use people’s time efficiently Minimize response time 29.07.2011 9

10 First commercial systems 1950s Hardware  Enormous, expensive, and slow  Input/Output: Punch cards and line printers Goal of OS  Get the hardware working  Single operator/programmer/user runs and debugs interactively OS Functionality  Standard library only (no sharing or coordination of resources)  Monitor that is always resident; transfer control to programs 29.07.2011 10

11 First commercial systems Advantages  Worked and allowed interactive debugging Problems  Inefficient use of hardware (throughput and utilization) 29.07.2011 11

12 O/s for Batch Processing Goal of OS: Better throughput and utilization Batch: Group of jobs submitted together  Operator collects jobs; orders efficiently; runs one at a time Advantages  Amortize setup costs over many jobs  Operator more skilled at loading tapes  Keep machine busy while programmer thinks  Improves throughput and utilization Problems  User must wait until batch is done for results  Machine idle when job is reading from cards and writing to printers 29.07.2011 12

13 O/s for Spooling Goal of OS  Improve performance by overlapping I/O with CPU execution Hardware  Mechanical I/O devices much slower than CPU  Read 17 cards/sec vs. execute 1000s instructions/sec 29.07.2011 13

14 Spooling: Simultaneous Peripheral Operations On-Line 1. Read card punches to disk 2. Compute (while reading and writing to disk) 3. Write output from disk to printer OS Functionality  Buffering and interrupt handling Problem  Machine idle when job waits for I/O to/from disk 29.07.2011 14

15 Multiprogrammed Batch Systems Observation: Spooling provides pool of ready jobs Goal of OS  Improve performance by always running a job  Keep multiple jobs resident in memory  When job waits for disk I/O, OS switches to another job OS Functionality  Job scheduling policies  Memory management and protection Advantage: Improves throughput and utilization Disadvantage: Machine not interactive 29.07.2011 15

16 Inexpensive Peripherals 1970’ s Hardware  Expensive mainframes, but inexpensive keyboards and monitors  Enables text editors and interactive debuggers Goal of OS  Improve user’s response time OS Functionality  Time-sharing: switch between jobs to give appearance of dedicated machine  More complex job scheduling  Concurrency control and synchronization Advantage  Users easily submit jobs and get immediate feedback 29.07.2011 16

17 Inexpensive Personal Computers 1980s Hardware  Entire machine is inexpensive  One dedicated machine per user Goal of OS  Give user control over machine OS Functionality  Remove time-sharing of jobs, protection, and virtual memory Advantages  Simplicity  Works with little main memory  Machine is all your own (performance is predictable) Disadvantages  No time-sharing or protection between jobs 29.07.2011 17

18 Inexpensive, Powerful Computers 1990s + Hardware  PCs with increasing computation and storage  Users connected to the web Goal of OS  Allow single user to run several applications simultaneously  Provide security from malicious attacks  Efficiently support web servers OS Functionality  Add back time-sharing, protection, and virtual memory 29.07.2011 18

19 Current Systems Conclusion: OS changes due to both hardware and users Current trends  Multiprocessors  Networked systems  Virtual machines OS code base is large  Millions of lines of code  1000 person-years of work Code is complex and poorly understood  System outlives any of its builders  System will always contain bugs  Behavior is hard to predict, tuning is done by guessing 29.07.2011 19

20 OS Components Kernel: Core components of the OS Process scheduler  Determines when and for long each process executes Memory manager  Determines when and how memory is allocated to processes  Decides what to do when main memory is full File system  Organizes named collections of data in persistent storage Networking  Enables processes to communicate with one another 29.07.2011 20

21 3. Functions of an O/s i. Providing a user interface a) Command Line Interface b) Graphic User Interface ii. Managing Programs a) Single -User Multitasking b) Multi-User & Multi Tasking iii. Managing Memory  Swapping, Paging & Thrashing iv. Scheduling jobs - Spooling 29.07.2011 21

22 3. Functions of an O/s v. Configuring Devices- with the help of device drivers vi. Establishing an internet connection vii. Controlling a Network viii. Monitoring Performances ix. Providing File Management x. Administering security 29.07.2011 22

23 4. Types of O/s Stand Alone O/s A complete O/s which works on a Desktop, Laptop, Palmtop, Mobile etc. They can work with or without another operating system Network O/s O/s that is made to support a network of computers. Embedded O/s O/s for small devices enabled for wireless communication. 29.07.2011 23

24 4. Stand Alone O/s Dos Windows Mac Unix Linux 29.07.2011 24

25 4. Network O/s Windows NT Windows 2003 family Unix Linux Solaris Novell Netware 29.07.2011 25

26 Embeded O/s Windows CE ( windows for Communication & Entertainment) Palm O/s Blackberry Embeded Linux Symbian O/s 29.07.2011 26

27 5. Why study Operating Systems? Build, modify, or administer an operating system Understand system performance  Behavior of OS impacts entire machine  Challenge to understand large, complex system  Tune workload performance  Apply knowledge across many areas Computer architecture, programming languages, data structures and algorithms, and performance modeling 29.07.2011 27

28 DOS Command Screen Command Line DOS Prompt 29.07.2011 28

29 Internal DOS Commands.. A: - Change current directory path to the floppy disk drive C: - Change current directory path to the hard disk drive DIR - Display current directory (show all files and sub- directories). MD - Make a new directory, eg: MD C:\EMAIL CD - Change current directory, eg. CD C:\EMAIL 29.07.2011 29

30 The Command Line Two commands, “time” and “date”, were entered with primitive results… 29.07.2011 30

31 GUI - Notice the difference… …when one click on the taskbar gives you this. 29.07.2011 31

32 DOS commands COPY - Copy file(s) from one place to another. Del - Delete/erase a file Any other text on the input line after the file name, is passed to the program. Ex. "Copy help.txt help.bak",  the text, "help.txt” & “ help.bak" is passed to the copy program which will in this case use it to specify source and destination files for copy function. 29.07.2011 32

33 29.07.2011 33


Download ppt "OPERATING SYSTEMS Prof. Sujata Rao Lesson 3. Agenda 1. What is an operating system? 2. How have operating systems evolved? 3. Functions of Operating System."

Similar presentations


Ads by Google