1_Introduction to Operating System and Types of OS.pdf
Document Details
Uploaded by GentlestOrientalism
Tags
Full Transcript
Introduction to Operating System and Types of OS What is an Operating System ? ⚫ An Operating System (OS) is a program that manages the computer hardware. ⚫ It also provides a basis for application programs and acts as an intermediary between a user and computer hardware. ⚫ compu...
Introduction to Operating System and Types of OS What is an Operating System ? ⚫ An Operating System (OS) is a program that manages the computer hardware. ⚫ It also provides a basis for application programs and acts as an intermediary between a user and computer hardware. ⚫ computer system can be divided roughly into four components:- ⚫ hardware ⚫ operating system ⚫ application program ⚫ users Abstract view of the components of a computer system. ⚫ The hardware is nothing but the CPU, memory and I/O devices that provides the basic computing resources. ⚫ The OS controls and co-ordinates the use of the hardware among the various application programs for the various users. ⚫ The Application Programs such as word-processor excel compilers and web browsers define the ways in which these resources are used to Types of OS: Batch Systems: Memory layout for a simple batch system. ⚫ This type of OS was developed when computers were in their primary stage. ⚫ The OS was very simple and memory resident. ⚫ Its major task :-transfer control automatically from one job to the next job. ⚫ A batch is a sequence of user jobs. ⚫ A computer operator forms a batch by arranging user jobs in a sequence and inserting special marker to indicate the start and end of the batch. ⚫ After forming a batch operator submits it to the Batch OS. Multi-programmed Systems: What is Multiprogramming? Ability to run multiple programs simultaneously is known as multiprogramming. It increases the CPU utilization, by organizing jobs so that CPU always has one to execute. ⚫ In this, OS keeps several jobs in memory simultaneously. ⚫ The OS Selects and executes one job in memory. ⚫ When one job needs to wait OS switches CPU to another job. ⚫ CPU is never idle as long as at least one job needs to execute. ⚫ Selecting a process for loading into memory is what is known as job scheduling. ⚫ Selecting a job for execution is known as CPU Scheduling. Time-Sharing Systems: ⚫ Time-sharing or Multitasking is a logical extension of multiprogramming. ⚫ This type of OS allows many users to share the computer resources simultaneously. ⚫ Since each action or command is in a time shared system is very short very little CPU time is needed for each user. ⚫ It uses CPU scheduling and multiprogramming to provide each user with a small portion of time shared computer. ⚫ These are more complex than multi-programmed OS. Multiprocessor Systems: ⚫ The OS that supports multiple processors are known as multiprocessor or parallel or tightly coupled systems. ⚫ Such systems have more than one processor in close communication, sharing the computer bus, clock, memory and peripheral devices. Multiprocessor systems normally use ⚫ Symmetric Multiprocessing (SMP) or ⚫ Asymmetric Multiprocessing (ASMP). Symmetric Multiprocessing (SMP) :- ⚫ In SMP each processor runs identical copy of OS. ⚫ These copies communicate with one another as needed. ⚫ In SMP all processors are peers. ⚫ No master-slave relationship exists between processors. ⚫ Each processor concurrently runs a copy of the OS. ⚫ An SMP system requires careful handling of I/O to ensure that data reach the appropriate processor and to avoid overloading of any processor that may result in inefficiencies. ⚫ Asymmetric Multiprocessing (ASMP). ⚫ In ASMP each processor is assigned a specific task. ⚫ Master processor controls the system. ⚫ The other either look to the master for instructions or have predefined tasks. ⚫ It means this scheme defines master-slave relationship. ⚫ The master processor schedules and ⚫ Multiprocessor systems have three main advantages Increased throughput- by increasing the number of processors we can get more work done in less time. Economy of Scale- Multiprocessor systems can save more money than multiple single processor system because they can share peripherals mass storage and power supplies. ⚫ Increased reliability- A proper distribution of functions among several processors reduces chance of system failure even though some processor fails. Distributed Systems: ⚫ The Systems that shares computational tasks and provides rich set of features to users are known as distributed systems. ⚫ These systems depend on networking for their Networks are of two types- ⚫ Client-Server Systems: ⚫ Peer-to-peer systems: Client-Server Systems: ⚫ In this type of systems there is one centralized system called server system that satisfy the requests of other systems called client systems. The general structure of client-server system The Server systems are classified as- Compute-Server systems: It provides an interface to which clients can send requests to perform an action. In response server executes client requests and send results back to clients. File-Server systems: It provides a file-system interface where clients can create, update, delete and read files. Peer-to-peer systems: ⚫ In this type of network there is no master. ⚫ A computer running a network OS acts autonomously from all other computers on the network. Clustered Systems: ⚫ It is a system that composed of two or more PCs that shares storage and closely linked via LAN. ⚫ It is usually performed to provide high availability. ⚫ In this type of systems a layer of clustered software runs on the cluster nodes. ⚫ If the monitored machine fails the monitoring machine can take ownership of its storage and restarts the applications that were running on the failed machine. ⚫ The failed machine can remain down, but users and clients of the application can see only brief interruption in service. Types of clustered systems: Asymmetric clustering: ⚫In this one machine is in hot stand-by mode while the other is running the applications. ⚫The hot stand-by host/machine continuously monitors the active server. ⚫If that server fails, the hot stand-by host becomes the active server. Symmetric clustering: ⚫In this two or more hosts are running applications and they are monitoring each other. ⚫ This mode is more efficient as it uses all available hardware. But requires more than one application be available to run. ⚫ Parallel clustering: ⚫ It allows multiple hosts to access the same data on the shared storage. ⚫ Since most OS lack support for simultaneous data access by multiple hosts. ⚫ parallel clusters are usually accomplished by special versions of software and special releases of applications. Real-Time Systems: ⚫ It is a special purpose OS. ⚫ It is used when rigid time requirements have been placed on the operation of a processor or flow of data. ⚫ It has well-defined, fixed time constraints. Processing must be done within the defined constraints or the system will fail. ⚫ Real-Time OS comes in two flavors hard and soft. ⚫ A hard real time OS guarantees that critical tasks be completed on time. Currently no existing OS support hard real-time OS. ⚫ A soft real-time OS are less restrictive. In this a critical real-time task gets priority over the other tasks and retain that priority until it completes. UNIX and LINUX are the only OS that support soft real-time OS.