PROJECT REPORT ON OPERATING SYSTEM: PRESENTED BY- LADUKISHORE SAHOO REGD.NO-IPCC/ERO0162965 ICAI BBSR BRANCH PROJECT REPORT ON OPERATING SYSTEM CONTAINS: CONTAINS INTRODUCTION OF OPERATING SYSTEM HISTORY OF OPERATING SYSTEM GENERATIONS OF OPERATING SYSTEM MEANING OF OPERATING SYSTEM OBJECTIVES OF OPERATING SYSTEM FUNCTIONS OF OPERATING SYSTEM TYPES OF OPERATING SYSTEM CLASSIFICATION OF OPERATING SYSTEM INTRODUCTION : INTRODUCTION The 1960’s definition of an operating system is “the software that controls the hardware”. However, today, due to microcode we need a better definition. The most important program that runs on a computer Every general-purpose computer must have an operating system to run other programs. For large systems, the operating system has even greater responsibilities and powers. It is like a traffic cop . Some examples of operating systems are UNIX, Mach, MS-DOS, MS-Windows, Windows/NT, Chicago, OS/2, MacOS, VMS, MVS, and VM. HISTORY OF OS: HISTORY OF OS Historically operating systems have been tightly related to the computer architecture, it is good idea to study the history of operating systems from the architecture of the computers on which they run. Today, all multi-purpose computers from desktop to mainframe use an operating system. Consumer electronics devices increasingly use an OS, whereas in the past, they used custom software that provided both OS and application functionality. In the mid-1960s, operating systems became essential to manage disks, complex timesharing and multitasking systems. GENERATIONS OF OS: GENERATIONS OF OS The 1940's - First Generations The 1950's - Second Generation The 1960's - Third Generation Onward 1960’s-Fourth Generation MEANING OF OS : MEANING OF OS An Operating System (OS) is an interface between hardware and user which is responsible for the management and coordination of activities and that acts as a host for computing applications run on the machine. An operating system ( OS ) is software, consisting of programs and data, that runs on computers and manages computer hardware resources and provides common services for efficient execution of various application software. Objectives of OS : Objectives of OS To hide details of hardware by creating abstraction To allocate resources to processes (Manage resources) Provide a pleasant and effective user interface Functions of OS : Functions of OS Command Interpretation Peripheral Management Memory Management Process Management File Management Resources Management Security management Types of Operating System : Types of Operating System There are two types of operating system as follows:- Single User Operating System (for example MS- DOS) Multi User Operating System (for example Linux, Windows, etc.) Slide 10: MS-DOS Microsoft Windows 3.1 and 3.11 Microsoft Windows 98 Windows 98 SE Microsoft Windows 2000 Windows 7 Mac OS9 Microsoft Windows XP Microsoft Windows ME Classification of OS: Classification of OS Multi-user Operating System Multitasking Operating System Multiprocessing Operating System Multithreading Operating System Real Time Operating System Distributed Operating System Embedded Operating System Multi-user OS: Multi-user OS Multi-user operating system allows concurrent access by multiple users of a computer. Time-sharing systems and most batch processing systems for mainframe computers are multi-user systems. An example is a Linux server where multiple remote users have access to the shell prompt at the same time Multiprocessing OS: Multiprocessing OS Multiprocessing, in general, refers to the utilization of multiple CPUs in a single computer system. Multiprocessing operating systems enable several programs to run concurrently. Linux is one of the most widely used multiprocessing systems, but there are many others, including OS/2 for high-end PCs. Operating system must allocated resources to competing processes in a reasonable manner. It is also called parallel processing Multitasking OS: Multitasking OS Multitasking allows more than one program to run concurrently. Multitasking is a method by which multiple tasks, also known as processes, share common processing resources such as a CPU. In multitasking, only one CPU is involved, but it switches from one program to another so quickly that it gives the appearance of executing all the programs at the same time. Multithreading OS: Multithreading OS Multithreading allows different parts of a single program to run concurrently. Multithreading is the ability of an operating system to execute different parts of a program, called threads, simultaneously. Multithreading is generally done in Java programming . Real Time OS: Real Time OS 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 object of real-time operating systems is their quick and predictable response to events. They either have an event-driven or a time-sharing design. An event-driven system switches between tasks based of their priorities while time-sharing operating systems switch tasks based In clock interrupts. Some of the examples are C Executive, CCP, ect. Distributed OS: Distributed OS Distributed Operating System is an operating system that manages a group of independent computers and makes them appear to be a single computer is known as a distributed operating system. 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. Embedded OS: Embedded OS The operating systems designed for being used in embedded computer systems are known as embedded operating systems. They are designed to operate on small machines like PDAs with Less autonomy. They are able to operate with a limited number of resources. They are very compact and extremely efficient by design. Windows CE, FreeBSD and Minix 3 are some examples of embedded operating systems.