Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to Operating Systems

Similar presentations


Presentation on theme: "Introduction to Operating Systems"— Presentation transcript:

1 Introduction to Operating Systems

2 Overview Definitions Types of Operating Systems
Computer System Overview Operating System Structures Evolution of Operating Systems

3 Definition An operating system (OS) is a software program that manages the hardware and software resources of a computer. An Operating System is the basic minimum software that is needed for a computer to be operational -Examples of operating systems for personal computers include Microsoft Windows, Mac OS, Unix and Linux (e.g. Red Hat, Ubuntu)

4 These services include, but are not limited to:
The lowest level of any operating system is its kernel. This is the first layer of software loaded into memory when a computer boots or starts up. The kernel provides access to various common core services to all other system and application programs. These services include, but are not limited to: disk access memory management task scheduling and access other hardware devices.

5 Definition contd… An Operating System (OS), is low-level software that enables a user and higher-level application software to interact with a computer’s hardware and the data and other programs stored on the computer. An OS performs basic tasks, such as recognizing input from the keyboard, sending output to the display screen, keeping track of files and directories on the disk, and controlling peripheral devices such as printers.

6 What is an Operating System?
A basic computer consists of: One or more processors Main memory Disks Printers Various input/output devices. Managing all these varied components requires a layer of software – the Operating System (OS).

7 The Three Elements of an OS
User Interface – The part of the OS that you interface with. Kernel – The core of the OS. Interacts with the BIOS (at one end), and the UI (at the other end). File Management System – Organizes and manages files.

8 Computer Hardware Organization

9 Reasons for studying Operating Systems
To learn how computers work To learn how to manage complexity through appropriate abstractions (hiding underlying details e.g. disk operation, networks) To learn about system design e.g. performance VS simplicity Because Operating systems are key components in many systems e.g. cell phones, home appliances etc Combines concepts from many other areas of Computer Science: Architecture, Languages, Data Structures, Algorithms, etc.

10 Where does the OS fit in?

11 Goals of an Operating System
Control/execute application programs. Make the computer system convenient to use. Ease the solving of user problems. Use the computer hardware in an efficient manner.

12 Dimensions of Operating Systems
Multiuser – Two or more users work with the computer at the same time Multitasking – Two or more processes running at the same time. Multithreading – Two or more parts of the same process running at the same time. The book says that most modern operating systems are multi-user. Not true.

13 Types of Operating Systems
Real time OS Single user / single tasking OS Single user / multitasking OS Multi user / multitasking The book says that most modern operating systems are multi-user. Not true.

14 a) Real-time operating system
Very fast small OS Built into a device Respond quickly to user input MP3 players, Medical devices

15 b) Single user/Single tasking OS
One user works on the system Performs one task at a time MS-DOS and Palm OS Take up little space on disk Run on inexpensive computers

16 c) Single user/Multitasking OS
User performs many tasks at once Most common form of OS Windows XP and OS X Require expensive computers Tend to be complex Teaching tip It is true that multi-tasking operating systems are complex. However both XP and OS X make the multitasking process painless for the user.

17 d) Multi user/Multitasking OS
Many users connect to one computer Each user has a unique session Maintenance can be easy Requires a powerful computer E.g. UNIX, Linux, and VMS Teaching tip Multi-user Multitasking OS's are found on supercomputers, mainframes and minicomputers. Through Linux, a PC can also support user sessions and terminal connections.

18 Multi user/Multi tasking OS

19 Types of User Interfaces
User interface refers to the way a user interacts with a computer Major types user interfaces are: Graphical User Interface (GUI) Command Line Interface (CLI)

20 a) Graphical user interface (GUI)
Most common interface E.g. Windows, OS X, Gnome, KDE Uses a mouse to control objects Uses a desktop metaphor Shortcuts open programs or documents Task switching Dialog boxes allow directed input Insider information The first commercial GUI was the Xerox Star. Teaching Tip There are several types of dialog boxes. Any errors are displayed in a dialog box. This box is system modal - it requires a response before returning to the OS. Save and print boxes are application modal - The box must be dealt with before returning to the application. However, other OS tasks can be performed.

21 Graphical User Interface

22 b) Command Line Interface
Older interface E.g. DOS, Linux, UNIX User types commands at a prompt User must remember all commands Included in all GUIs Teaching tip Demonstrate the command line interface in Windows by running cmd. In the command line interface use ping and ipconfig as commands that cannot be run in the GUI.

23 Command Line Interface

24 Operating System Functions
Control of Computer Hardware Provide a user interface Run programs File management – creation , storage etc Application Management

25 Services Provided by an OS
Facilities for program creation editors, compilers, debuggers etc. Program execution loading in memory, I/O and file initialization. Access to I/O and files deals with the specifics of I/O and file formats. System access resolves conflicts for resource contention. protection in access to resources and data.

26 Computer System Components
Hardware – provides basic computing resources (CPU, Memory, I/O devices, Communication). Operating System – controls and coordinates use of the hardware among various application programs for various users. System & Application Programs – ways in which the system resources are used to solve computing problems of the users (E.g. Word processors, Compilers, Web browsers, Database systems, Video games). Users – (People, Machines, other computers).

27 Hierarchical view of computer system

28 Static View of System Components

29 Dynamic View of System Components

30 Layers of a Computer System
End User Programmer Application Programs Utilities Operating- System Designer Operating-System Computer Hardware

31 Views of an Operating System
There are three classical views (in literature): Resource Manager – manages and allocates resources. Control program – controls the execution of user programs and operations of I/O devices. Command Executer – Provides an environment for running user commands. But one more modern view: the Operating System as a Virtual Machine.

32 1. Resource Manager Resource Manager:
Manages and protects multiple computer resources: CPU, Processes, Internal/External memory, Tasks, Users, Communication channels, Handles and allocates resources to multiple users or multiple programs running at the same time and space (e.g., processor time, memory, I/O devices). Decides between conflicting requests for efficient and fair resource use (e.g., maximize throughput, minimize response time).

33 OS as a Resource Manager

34 2. Control Program Control Program:
Manages all the components of a complex computer system in an integrated manner. Controls the execution of user programs and I/O devices to prevent errors and improper use of computer resources. Looks over and protects the computer: Monitor, Supervisor, Executive, Controller, Master, Coordinator ….

35 3. Command Executor Command Executor:
Interfaces between the users and machine. Supplies services/utilities to users. Provides the users with a convenient CLI (Command Language Interface), also called a Shell (in UNIX & LINUX), for entering the user commands.

36 History of Operating Systems
An operating system (OS) is a software program that manages the hardware and software resources of a computer. The OS performs basic tasks, such as controlling and allocating memory, prioritizing the processing of instructions, controlling input and output devices, facilitating networking, and managing files.

37 Structure of Operating System (Contd…):
System programs This layer consists of compilers, Assemblers, linker etc. Application programs This is dependent on users need. Ex. Railway reservation system, Bank database management etc.,

38 Evolution of OS The evolution of operating systems went through seven major phases. Six of them significantly changed the ways in which users accessed computers through the open shop, batch processing, multiprogramming, timesharing, personal computing, and distributed systems. In the seventh phase the foundations of concurrent programming were developed and demonstrated in model operating systems.

39 Evolution of OS (contd..)
Major Phases Technical Innovations Operating Systems Open Shop The idea of OS IBM 701 open shop (1954) Batch Processing Tape batching, First-in, first-out scheduling. BKS system (1961) Multi- programming Processor multiplexing, Indivisible operations, Demand paging, Input/output spooling, Priority scheduling, Remote job entry Atlas supervisor (1961), Exec II system (1966)

40 Evolution of OS (contd..)
Timesharing Simultaneous user interaction, On-line file systems Multics file system (1965), Unix (1974) Concurrent Programming Hierarchical systems, Extensible kernels, Parallel programming concepts, Secure parallel languages RC 4000 system (1969), 13 Venus system (1972), 14 Boss 2 system (1975). Personal Computing Graphic user interfaces OS 6 (1972) Pilot system (1980) Distributed Systems Remote servers WFS file server (1979) Unix United RPC (1982) 24 Amoeba system (1990)

41 a) User View of OS The user's view of the computer varies according to the mode being used. Most computer users sit in front of a PC, consisting of a monitor/keyboard/ mouse, and system unit. Such a system is designed for one user to monopolize its resources. (single user mode) The goal is to maximize the work (or play) that the user is performing. In this case the operating system is designed mostly for ease of use with some attention paid to performance and none paid to resource utilization.

42 In other cases, a user sits at a terminal connected to a mainframe or mini computer. Other users are accessing the same computer through other terminals. These users share resources and may exchange information. (multi-user) The OS in such cases is designed to maximize resource utilization to assure that all available CPU time, memory, and I/0 are used efficiently and that no individual user takes more than her fair share.

43 Some computers have little or no user view
Some computers have little or no user view. For example, embedded computers in home devices and automobiles may have numeric keypads and may turn indicator lights on or off to show status, but they and their operating systems are designed primarily to run without user intervention.

44 b) System View From the computer's point of view, the OS is the program most intimately involved with the hardware. In this context, we can view an operating system as a resource allocator A computer system has many resources that may be required to solve a problem: CPU time, memory space, file-storage space, I/0 devices, and so on.

45 b) System View contd… The operating system acts as the manager of these resources. Facing numerous and possibly conflicting requests for resources, the operating system must decide how to allocate them to specific programs and users so that it can operate the computer system efficiently and fairly. As we have seen, resource allocation is especially important where many users access the same mainframe or minicomputer.

46 TASKS 1) Explain the relationship between OS and Computer architecture
1) Write notes on History of Operating Systems


Download ppt "Introduction to Operating Systems"

Similar presentations


Ads by Google