Download presentation
1
Ms Manpreet Kaur, Assistant Professor, DIAS
Operating System SOFTWARE Ms Manpreet Kaur, Assistant Professor, DIAS
2
Ms Manpreet Kaur, Assistant Professor, DIAS
3
Ms Manpreet Kaur, Assistant Professor, DIAS
Operating Systems An operating system is the most essential system software that manages the operation of a computer. Without an operating system, it is not possible to use the computer. The computer is useless unless it is provided essential software that makes it ready to use. An operating system is software which makes a computer ready to use by a process called booting. What booting exactly means.- When we switch on computer, the instructions stared in ROM are automatically executed. These instructions help computer to load an operating system from external storage device (disk) to internal storage (RAM). This process of loading of operating system from disk to RAM is called booting. Ms Manpreet Kaur, Assistant Professor, DIAS
4
Ms Manpreet Kaur, Assistant Professor, DIAS
Operating Systems Operating System is a software, which makes a computer to actually work. It is the software the enables all the programs we use. The OS organizes and controls the hardware. OS acts as an interface between the application programs and the machine hardware. Examples: Windows, Linux, Unix and Mac OS, etc., Two primary objectives of an OS are: § Making a computer system convenient to use § Managing the resources of a computer system Ms Manpreet Kaur, Assistant Professor, DIAS
5
Logical Architecture of a Computer System
The operating system layer hides the details of the hardware from the programmer and provides the programmer with convenient interface for using the system Ms Manpreet Kaur, Assistant Professor, DIAS
6
Logical Architecture of a Computer System
The structure of OS consists of 4 layers: Hardware Hardware consists of CPU, Main memory, I/O Devices, etc, Software (Operating System) Software includes process management routines, memory management routines, I/O control routines, file management routines. 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., Ms Manpreet Kaur, Assistant Professor, DIAS
7
Functions Of Operating System
Memory management Process management Device management Information management Protection Error Handling Ms Manpreet Kaur, Assistant Professor, DIAS
8
Functions Of Operating System
Memory management Process management Device management Information management Protection Error Handling The o/s keeps track of the memory, what parts are in use and by whom. Ms Manpreet Kaur, Assistant Professor, DIAS
9
Functions Of Operating System
Memory management Process management Device management Information management Protection Error Handling The o/s keeps track of processors and the status of processes. It decides who will have a chance to use the processor. Ms Manpreet Kaur, Assistant Professor, DIAS
10
Functions Of Operating System
Memory management Process management Device management Information management Protection Error Handling The o/s keeps track of the devices, channels, control units and decides what is an efficient way to allocate the device. Ms Manpreet Kaur, Assistant Professor, DIAS
11
Functions Of Operating System
O/S keeps track of the information, its location, use, status etc. and decides who gets use of the resources, enforce protection requirements Memory management Process management Device management Information management Protection Error Handling Ms Manpreet Kaur, Assistant Professor, DIAS
12
Functions Of Operating System
An o/s is to protect the user from unauthorized access of his files or data. And also it should protect itself from users Memory management Process management Device management Information management Protection Error Handling Ms Manpreet Kaur, Assistant Professor, DIAS
13
Functions Of Operating System
Memory management Process management Device management Information management Protection Error Handling An o/s must respond to errors by taking the appropriate actions. Ms Manpreet Kaur, Assistant Professor, DIAS
14
Types of Operating Systems
Many types of operating systems are available for computers which can be divided into the following two types: Single-user Operating Systems Multi-user Operating Systems Ms Manpreet Kaur, Assistant Professor, DIAS
15
Single-user Operating Systems
These operating systems are used mainly for computers having only one terminal (stand-alone PCs). MS DOS (Microsoft Disk Operating System) and PC DOS (Personal Computer Disk Operating System) are the two important single user operating systems. Both systems are almost identical and are simply called DOS. OS/2 and Windows NT are other popular single-user multi-tasking operating systems for microcomputers. Ms Manpreet Kaur, Assistant Professor, DIAS
16
Single-user Operating Systems
i) MS DOS MS DOS, developed by Microsoft Inc. in 1981, is the most widely used operating system of IBM-compatible microcomputers. The latest version (identification number of a release of software) of MS DOS is 7. ii) PC DOS PC DOS is essentially the same operating system as MS DOS but is developed and supplied by IBM for its personal computers. Ms Manpreet Kaur, Assistant Professor, DIAS
17
Multi-user Operating Systems
These operating systems are used for those computers (micro to mainframe) which have many terminals (multi-user systems). The popular operating systems used for multi-user systems are UNIX, NetWare, MVS, OS/400, VMS and Linux. AT&T at Bell Laboratories initially developed UNIX in Unix is a highly successful operating system for multi-user systems. Actually, it is more popular among scientific and engineering users rather than business users. A version of UNIX that runs on PCs is XENIX. It was developed by Microsoft Corporation in It is compatible with AT&T’s System V definition. UNIX System V Release 4 is the latest version of UNIX. Ms Manpreet Kaur, Assistant Professor, DIAS
18
Multi-user Operating Systems
Following are the popular operating systems used for multi-user systems: i) NetWare NetWare is a group of network operating systems developed by Novell, Inc. that provides multi-user capabilities. ii) MVS (Multiple Virtual Storage) MVS is one of the most complex multi-user operating systems ever developed for IBM mainframes. In MVS, each job (time-sharing user or batch program) is assigned its own virtual storage space. iii) OS/400 OS/400 is the IBM’s operating system for its AS/400 computer. iv) VMS (Virtual Memory Storage) VMS operating system is used on DEC’s VAX series of minicomputers. v) Linux Linux is a 32-bit UNIX-like operating system that has been developed recently for microcomputers It is the world’s first free operating system developed and maintained by thousands of people worldwide. Ms Manpreet Kaur, Assistant Professor, DIAS
19
Operating System Techniques
1. Multiprogramming Multiprogramming is a process by which a single CPU works on two or more programs simultaneously. Using this technique, an operating system keeps a CPU busy. Multiprogramming allows a processor to handle either multiple batch jobs at a time (batch multiprogramming) or multiple interactive jobs shared among multiple users (time sharing multiprogramming). Time-sharing is a technique that allows a CPU to simultaneously support the activities of several users by allocating fixed time slots (in milliseconds). Examples of operating systems that support multiprogramming are OS/2, UNIX and Macintosh System Multiprocessing Multiprocessing refers to the use of two or more CPUs to perform a coordinated task simultaneously. For example, MVS, VMS and Windows NT support multiprocessing. 3. Multitasking Multitasking refers to an ability of operating system to execute two or more tasks concurrently. In multitasking environment, a user opens new applications without closing the previous ones and the information can be easily moved among a number of applications. For example, Windows NT and OS/2 operating systems use this technique. Ms Manpreet Kaur, Assistant Professor, DIAS
20
Ms Manpreet Kaur, Assistant Professor, DIAS
Batch Processing: In Batch processing same type of jobs batch (BATCH- a set of jobs with similar needs) together and execute at a time. The OS was simple, its major task was to transfer control from one job to the next. The job was submitted to the computer operator in form of punch cards. At some later time the output appeared. The OS was always resident in memory. Common Input devices were card readers and tape drives. Ms Manpreet Kaur, Assistant Professor, DIAS
21
Batch Processing (Contd…):
Common output devices were line printers, tape drives, and card punches. Users did not interact directly with the computer systems, but he prepared a job (comprising of the program, the data, & some control information). OS User program area Ms Manpreet Kaur, Assistant Professor, DIAS
22
Ms Manpreet Kaur, Assistant Professor, DIAS
Multiprogramming: Multiprogramming is a technique to execute number of programs simultaneously by a single processor. In Multiprogramming, number of processes reside in main memory at a time. The OS picks and begins to executes one of the jobs in the main memory. If any I/O wait happened in a process, then CPU switches from that job to another job. Hence CPU in not idle at any time. Ms Manpreet Kaur, Assistant Professor, DIAS
23
OS Features Needed for Multiprogramming
I/O routine supplied by the system. Memory management – the system must allocate the memory to several jobs. CPU scheduling – the system must choose among several jobs ready to run. Allocation of devices. Ms Manpreet Kaur, Assistant Professor, DIAS
24
Multiprogramming (Contd…):
OS Job 1 Job 2 Job 3 Job 4 Job 5 Figure dipicts the layout of multiprogramming system. The main memory consists of 5 jobs at a time, the CPU executes one by one. Advantages: Efficient memory utilization Throughput increases CPU is never idle, so performance increases. Ms Manpreet Kaur, Assistant Professor, DIAS
25
Uniprogramming Vs Multiprogramming
Uniprogramming: Only one job is processed at a time and all system resources are available exclusively for the job until its completion Multiprogramming: Interleaved execution of two or more different and independent programs by a computer Types of Multiprogramming: Multiprogramming with fixed tasks (MFT): Fixed number of jobs can be processed concurrently Multiprogramming with variable tasks (MVT): Number of jobs can vary Area occupied by each job residing simultaneously in the main memory is known as a memory partition Ms Manpreet Kaur, Assistant Professor, DIAS
26
Uniprogramming System
Only one job is processed by the system at a time and all the system resources are exclusively available for the job until it completes Ms Manpreet Kaur, Assistant Professor, DIAS
27
Multiprogramming System
Ms Manpreet Kaur, Assistant Professor, DIAS
28
Ms Manpreet Kaur, Assistant Professor, DIAS
Time Sharing Systems: Time sharing, or multitasking, is a logical extension of multiprogramming. Multiple jobs are executed by switching the CPU between them. In this, the CPU time is shared by different processes, so it is called as “Time sharing Systems”. Time slice is defined by the OS, for sharing CPU time between processes. Examples: Multics, Unix, etc., Ms Manpreet Kaur, Assistant Professor, DIAS
29
Ms Manpreet Kaur, Assistant Professor, DIAS
Time Sharing Systems: Simultaneous interactive use of a computer system by many users in such a way that each one feels that he/she is the sole user of the system User terminals connected to the same computer simultaneously Uses multiprogramming with a special CPU scheduling algorithm Short period during which a user process gets to use CPU is known as time slice, time slot, or quantum CPU is taken away from a running process when the allotted time slice expires Ms Manpreet Kaur, Assistant Professor, DIAS
30
Advantages of Time-sharing Systems
Reduces CPU idle time Provides advantages of quick response time Offers good computing facility to small users Ms Manpreet Kaur, Assistant Professor, DIAS
31
Ms Manpreet Kaur, Assistant Professor, DIAS
Desktop Systems Personal computers – computer system dedicated to a single user. I/O devices – keyboards, mice, display screens, small printers. User convenience and responsiveness. Can adopt technology developed for larger operating system’ often individuals have sole use of computer and do not need advanced CPU utilization of protection features. May run several different types of operating systems (Windows, MacOS, UNIX, Linux) Ms Manpreet Kaur, Assistant Professor, DIAS
32
Ms Manpreet Kaur, Assistant Professor, DIAS
Multiprocessing System with two or more CPUs having ability to execute multiple processes concurrently Multiple CPUs are used to process either instructions from different and independent programs or different instructions from the same program simultaneously Types of multiprocessing: Tightly-coupled: Single system-wide primary memory shared by all processors Loosely-coupled: Each processor has its own local memory Ms Manpreet Kaur, Assistant Professor, DIAS
33
Multiprocessing System
Ms Manpreet Kaur, Assistant Professor, DIAS
34
Ms Manpreet Kaur, Assistant Professor, DIAS
Parallel Systems Multiprocessor systems with more than on CPU in close communication. Tightly coupled system – processors share memory and a clock; communication usually takes place through the shared memory. Advantages of parallel system: Increased throughput Economical Increased reliability graceful degradation fail-soft systems Ms Manpreet Kaur, Assistant Professor, DIAS
35
Parallel Systems (Cont.)
Symmetric multiprocessing (SMP) Each processor runs and identical copy of the operating system. Many processes can run at once without performance deterioration. Most modern operating systems support SMP Asymmetric multiprocessing Each processor is assigned a specific task; master processor schedules and allocated work to slave processors. More common in extremely large systems Ms Manpreet Kaur, Assistant Professor, DIAS
36
Symmetric Multiprocessing Architecture
Ms Manpreet Kaur, Assistant Professor, DIAS
37
A Distributed Operating System
A distributed operating system manages a group of independent computers and makes them appear to be a single computer. The development of networked computers that could be linked and communicate with each other, gave rise to distributed computing. Distributed computations are carried out on more than one machine. When computers in a group work in cooperation, they make a distributed system. Ms Manpreet Kaur, Assistant Professor, DIAS
38
Ms Manpreet Kaur, Assistant Professor, DIAS
Distributed Systems 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 Ms Manpreet Kaur, Assistant Professor, DIAS
39
Distributed Systems (cont)
Requires networking infrastructure. Local area networks (LAN) or Wide area networks (WAN) May be either client-server or peer-to-peer systems. Ms Manpreet Kaur, Assistant Professor, DIAS
40
General Structure of Client-Server
Ms Manpreet Kaur, Assistant Professor, DIAS
41
Ms Manpreet Kaur, Assistant Professor, DIAS
RTOS Ms Manpreet Kaur, Assistant Professor, DIAS
42
Ms Manpreet Kaur, Assistant Professor, DIAS
Real Time System A system is said to be Real Time if it is required to complete it’s work & deliver it’s services on time. Example – Flight Control System All tasks in that system must execute on time. Non Example – PC system Ms Manpreet Kaur, Assistant Professor, DIAS
43
Ms Manpreet Kaur, Assistant Professor, DIAS
Real-Time Systems Often used as a control device in a dedicated application such as controlling scientific experiments, medical imaging systems, industrial control systems, and some display systems. Well-defined fixed-time constraints. Real-Time systems may be either hard or soft real-time. Ms Manpreet Kaur, Assistant Professor, DIAS
44
Ms Manpreet Kaur, Assistant Professor, DIAS
Hard Real Time Systems Hard Real Time System Secondary storage limited or absent, data stored in short term memory, or read-only memory (ROM) Conflicts with time-sharing systems, not supported by general-purpose operating systems. Failure to meet deadlines is fatal example : Flight Control System Ms Manpreet Kaur, Assistant Professor, DIAS
45
Ms Manpreet Kaur, Assistant Professor, DIAS
Soft Real Time Systems Soft Real Time System Limited utility in industrial control of robotics Useful in applications (multimedia, virtual reality) requiring advanced operating-system features. Late completion of jobs is undesirable but not fatal. System performance degrades as more & more jobs miss deadlines Online Databases Ms Manpreet Kaur, Assistant Professor, DIAS
46
Ms Manpreet Kaur, Assistant Professor, DIAS
Real-Time Systems Often used as a control device in a dedicated application such as controlling scientific experiments, medical imaging systems, industrial control systems, and some display systems. Well-defined fixed-time constraints. Real-Time systems may be either hard or soft real-time. Ms Manpreet Kaur, Assistant Professor, DIAS
47
Real-time Operating System
A real-time operating system is a multitasking operating system that aims at executing real-time applications. Real-time operating systems often use specialized scheduling algorithms so that they can achieve a deterministic nature of behavior. The main objective of real-time operating systems is their quick and predictable response to events. They have an event-driven or time-sharing design and often aspects of both. An event-driven system switches between tasks based on their priorities or external events while time-sharing operating systems switch tasks based on clock interrupts. Ms Manpreet Kaur, Assistant Professor, DIAS
48
Real-Time Systems (Cont.)
Hard real-time: Secondary storage limited or absent, data stored in short term memory, or read-only memory (ROM) Conflicts with time-sharing systems, not supported by general-purpose operating systems. Soft real-time Limited utility in industrial control of robotics Useful in applications (multimedia, virtual reality) requiring advanced operating-system features. Ms Manpreet Kaur, Assistant Professor, DIAS
49
Ms Manpreet Kaur, Assistant Professor, DIAS
Types of OS: Operating System can also be classified as,- Single User Systems Multi User Systems Ms Manpreet Kaur, Assistant Professor, DIAS
50
Ms Manpreet Kaur, Assistant Professor, DIAS
Single User Systems: Provides a platform for only one user at a time. They are popularly associated with Desk Top operating system which run on standalone systems where no user accounts are required. Example: DOS Ms Manpreet Kaur, Assistant Professor, DIAS
51
Ms Manpreet Kaur, Assistant Professor, DIAS
Multi-User Systems: Provides regulated access for a number of users by maintaining a database of known users. Refers to computer systems that support two or more simultaneous users. Another term for multi-user is time sharing. Ex: All mainframes and are multi-user systems. Example: Unix Ms Manpreet Kaur, Assistant Professor, DIAS
52
Multi-user vs. Single-user
A multi-user operating system allows multiple users to access a computer system concurrently. Time-sharing system can be classified as multi-user systems as they enable a multiple user access to a computer through the sharing of time. Single-user operating systems, as opposed to a multi-user operating system, are usable by a single user at a time. Being able to have multiple accounts on a Windows operating system does not make it a multi-user system. Rather, only the network administrator is the real user. But for a Unix-like operating system, it is possible for two users to login at a time and this capability of the OS makes it a multi-user operating system. Ms Manpreet Kaur, Assistant Professor, DIAS
53
Ms Manpreet Kaur, Assistant Professor, DIAS
Multitasking Interleaved execution of multiple jobs (often referred to as tasks of same user) in a single-user system Computer systems used for multitasking are uniprocessor systems (having only one CPU) Treated differently from multiprogramming that refers to interleaved execution of multiple jobs in a multi- user system Ms Manpreet Kaur, Assistant Professor, DIAS
54
Multi-tasking vs. Single-tasking
When only a single program is allowed to run at a time, the system is grouped under a single-tasking system. However, when the operating system allows the execution of multiple tasks at one time, it is classified as a multi-tasking operating system. Multi-tasking can be of two types: pre-emptive. In pre-emptive multitasking, the operating system slices the CPU time and dedicates one slot to each of the programs. Unix-like operating systems such as Solaris and Linux support pre-emptive multitasking. Cooperative multitasking is achieved by relying on each process to give time to the other processes in a defined manner. MS Windows prior to Windows 2000 used to support cooperative multitasking. Ms Manpreet Kaur, Assistant Professor, DIAS
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.