1.53k likes | 3.51k Views
Introduction To Operating System. 1. What is Operating System?. An operating system is a program that controls the execution of application and acts as an interface between the user of a computer and the computer hardware. 2. What is software?. What is System Software?.
E N D
What is Operating System? An operating system is a program thatcontrols the execution of application andacts as an interface between the user of acomputer and the computer hardware. 2
What is software? What is System Software? What is Application Software? What is memory? Types of Memory? What is processor? 3
System software is computer software designed to operate thecomputer hardware and to provide and maintain a platform forrunning application software. Application software, also known as software application, applicationor app, is computer software designed to help the user to perform asingular or multiple related specific tasks. Typical examples are word processors, spreadsheets, media players and database applications. Memory is the electronic holding place for instructions and data thatyour computer's microprocessors can reach quickly. A processor is the logic circuitry that responds to and processes thebasic instruction that drive a computer. The term processor hasgenerally replaced the term central processing unit(CPU). The processor in a personal computer or embedded in small devices is often called a microprocessor. 4
The speed is measured in Megahertz or MHz. A singleMHz is a calculation of 1 million cycles per second (or computer instructions), so if you have a processorrunning at 2000 MHz, then your computer is running at2000,000,000 cycles per second, which in more basic terms is the amount of instructions your computer can carry out. Another important abbreviation is Gigahertzor GHz. A single GHz or 1 GHz is the same as 1000 MHz . Sounds a bit confusing, so here is a simple conversion : 1000 MHz (Megahertz) = 1GHz (Gigahertz) = 1000,000,000 Cycles per second (or computer instructions). 5
Introduction Amodern computerconsistsone ormoreprocessor,mainmemory, disks, printers, a keyboard, a display, networkinterface and various other input/output(I/O) devices.Typically complex system. Managing all these components and using them optimally isa very challenging job. For this reason, computers are equipped with a layer ofsoftware called the operating system. Job of OS is to provide user programs with a better, simpler,cleaner, model of the computer and to handle managing all the resources . 6
Most users will have had some experience with differentOS. Such as Windows, Linux( we will learn in currentsemester), Mac. Appearance will be different of each OS but functionalitywill remain almost same. Like accessing email, webbrowser, read/ write docs. The program that users interact with, usually called Shellwhen it is text based and the GUI(Graphical User Interface) Actually icon on desktop, it is not part of Operating systembut with help of icons to get its work done. 7
Music Player Web Browser E-Mail Reader Software User Mode User Interface program Operating System Kernel Mode Hardware 8
In fig. we can see hardware at bottom, it consists of chips,boards, disks, a keyboard, a monitor, and many more. On the top of hardware is software. Computers have two modes of operations: Kernel modeand user mode. The OS is most fundamental piece of software and runs inKernel mode(Supervisor mode). In this mode, it has complete access to all the hardware andcan execute any instruction the machine is capable ofexecuting. Rest of software will run in User node. 9
The user interface program, shell or GUI, is the lowest levelof user node software, and allows the user to start otherprogram, such as web browser, e-mail reader, or music player. An important difference between the OS and normalsoftware(user node) is that if a user does not like a particulare-mail reader, he or she is free to get a different one or writehis own. If he choose to write, he is not free to write his own clockinterrupt handler, which is part of OS and is protected byhardware against attempts by users to modify. That means user can not modify any code. 10
In many system there are programs that run in user mode butafter all it is helping to OS or perform privileged functions. For example, you want to change your password of anyapplication. This application is not part of OS and also not run inKernel mode. But it carries out a sensitive function and has to be protected in aspecial way. In some system, it is considered to be the OS(file system) andrun in user space. Some times it is very hard to draw a boundary because someprogram run in Kernel mode and some in User mode. 11
Operating System differ from user program in ways other thanwhere they reside. They are very large, huge, complex, and long-lived. The source code of OS like Linux or Windows is about morethan five million lines of Code. They are very hard to write and having written on, the owner isnot happy to throw and start to again because it takes long time. 12
Operating System as a UI(User Interface) Every General purpose computer consists of the hardware,OS, System program, application programs. The hardware consists of memory, CPU, ALU,I/O devices,peripheral device and storage device. System program consists of compilers, loaders, editors. OSetc. The application program consists of business program, database program. 13
Users Editor Loader Application and Utilities Compiler Operating System Computer Hardware 14
Every computer must have an OS to run other programs.The Operating system control and co-ordinates the use ofthe hardware among the various system programs andapplication program for a various users. It simply providesan environment which other program can do useful work. The Operating system is a set of special program that run ona computer system that allows it to work properly. Itperform basic task such as recognizing input from the keyboard, keeping track of files and directories on the disk, sending output to the display screen and controlling devices. 15
Purpose of OS OS is designed to serve two basic purposes: (1). It control the allocation and use of the computingsystem’s resources among the various users and disks. (2). It provides an interface between the computer hardwareand the programmer that simplifies and makes feasible for coding, creation, debugging of application programs. 16
OS support tasks 1. Provides the facilities to create, modification of program and data files using an editor. 2. Access to the compiler for translating the user program from high level language to machine language. 3. Provide a loader program to move the compiled program code to computer’s memory for execution. 4. Provide routings that handle the details of I/O programming. 17
Operating System as Resource Manager( GTU, 4 Marks) Acomputerisasetofresourcesforthemovement,storageand processing of data and for the control of these function.The OS is responsible for managing these resource. Main resources that are managed by the operating system. Aportion of the operating system is in main memory. Thisincludes the Kernel, which contains the most frequently usedfunctions in operating system and at a given time, otherportions of OS currently in use. 18
I/O devices, printers, Keyboard etc I/O Controller Operating System I/O Controller Software I/O Controller O/S Processor Processor Programs Data 19
Main resource that are managed by the operating system. Aportion of the operating system is in main memory. This includesthe Kernel, which contains the most frequently used function in the operating system and at a given time, other portion of the OS currently in use. The remainder of main memory contains other user programand data. The allocation of main memory is controlled by the OS and memory management hardware in the processor. The operating system decides when I/O device can be used by aprogram in execution and controls the access to and use of files. 20
Evolution Of Operating System An operating system may process its workload serially orconcurrently. That is resource of the computer system may be dedicated to a single program until its completion or they may bedynamically reassigned among a collection of active program in different stages of execution. 21
History of Operating System The history of OS is inextricably linked with history anddevelopment of various generation of computer system. (1) Zeroth Generation-Mechanical Parts (2) First Generation(1945-1955)-Vacuum Tubes (3) Second Generation(1955-1965)- Transistor (4) Third Generation(1965-1980)-Integrated Circuits (5) Fifth Generation(1980-Present)- Large Scale Integration 22
Zeroth Generation The first digital computer was designed by CharlesBabbage. It had a mechanical design where wheels, gears, cogsetc. This computer was slow and unreliable, this designcould not really become very popular. There was no question of any OS of any kind of thismachine. 23
First Generation After few years, a solution evolved which was electronic ratherthan mechanical. These machines were huge and their continued use generated agreat deal of heat. The vacuum tubes also used to get burnt very fast. For onecomputer to run, at least 10,000 to 20,000 tubes could bewasted. The programming was done only in machine language so that isnot easy for normal people at this time. And also, this wasneither an assembly language nor any higher level language. So it was not friendly to both the users and programmers. 24
Vacuum Tubes 25
Second Generation: Transistor and Batch System The introduction of the transistor in the mid-1950s changedpicture. Computer become reliable and small in size. For first time, there was a clear separation between designers, programmers, analyst, operators and maintenance personnel. These machines now called mainframes , it locked in airconditioned rooms by staff or professional operator to run them. Large companies, major government or universities canafford the multimillion dollar computer. 27
To run a Job(i.e. program or set of programs), a programmer will write aprogram first( on paper or FORTAN[Formula Translating System] orassembler), then punch it on cards. He/she would then bring the card deck down to input room and hand it toone of the operators and wait until the output was ready. When the computer finished whatever job it was currently running, anoperator will go to the printer and tear off the o/p and carry to the output room, so that programmer can collect output later. Programmer take one of the card decks that had been bought from theinput room and read it in. If the FORTRAN compiler was needed, the operator have to get it from afile cabinet and read it in. Much computer time was wasted while operators were walking around themachine room. 28
Spooling Acronym for simultaneous peripheral operation on line. Spoolingrefers to putting jobs in a buffer, a special area in memory or on a disk where device can access them when it is ready. Spooling is useful because device access data at different rates.The buffer provides a waiting station where data can rest while the slower device catches up. Computer can perform I/O in parallel with computation, itbecomes possible to have the computer read a deck of cards to a tape, drum or disk and to write out to a tape printer while it wascomputing, this process is called spooling. 29
The most common spooling application is print spooling. In printspooling, documents are loaded into a buffer and then printer pulls them off the buffer at its own rate. Spooling is also used for processing data at remote sites. TheCPU sends the data via communication path to a remote printer. Spooling overlaps the I/O of one job with the computation of other jobs. one difficulty with simple batch system is that the computer stillneeds to read the deck of cards before it can begin to execute job. This means that the CPU is idle during these relatively slowoperations. 30
Advantages of Spooling The spooling operation uses a disk as a very large buffer. Spooling is however capable of overlapping I/O operation of onejob with processor operations for another job 31
OS Services An operating system provides services to programsand to the users of those programs. It provide an environment for the execution of programs. The services provided by one operating system isdifferent than other operating system. Operating system makes the programming taskseasier. The common services provided by the operating system is listed. 32
OS Services Types of services that an operating system provides for readingand writing records.These services fall in the category. Information Management(IM). From systems programmer’spoint of view, the operating system can be considered to be a collection of many such callable programs or services categorized under three major heads Information Management(IM). Process Management(PM). Memory Management(MM). 33
Types of OS (1) Mainframe Operating System Mainframe computers differ from personalcomputers in terms of their I/O capacity. A mainframe with 1000 disks and millions of gigabytes of data. Mainframe are also making something of a comebackas high-end web servers, servers for large-scale electronic commerce sites and servers for businessto business transaction. 40
The operating system for mainframes are heavily orientedtoward processing many jobs at once, most of which need huge amount of I/O. They typically offer three kind of service Batch processing Transaction processing Timesharing processing 41
A batch system is one that processes routing jobs without anyinteractive user present. Claim processing in an insurance company or sales reporting forchain of store is typically done in batch mode. Transaction processing system handle large numbers of smallrequests, for example, check processing at a bank or airline reservation. Each unit of work is small, but the system must handle hundredor thousands per second. Timesharing systems allow multiple remote users to run jobs oncomputer at once, such as querying a big database. 42
Server Operating Systems Server operating system runs on servers, which are either verylarge personal computers, workstation or mainframes. They serve multiple users at once over a network and allow theuser to share hardware and software resources. Servers can provide print service, file service or web service. Internet providers run many server machines to support theircustomers and websites use servers to store the WebPages andhandle the incoming requests. Example of server OS are Solaris, Linux,Windows server 200x. 43
Multiprocessor OS To connect multiple CPU into a single system depending onhow they are connected and what is shared, these systems arecalled parallel computers, multicomputer, or multiprocessors. They need special operating system with special features forcommunication, connectivity and consistency. In recent time, multicore chips for personal computers, evenconventional desktop and notebook operating system are starting to deal with at least small scale multiprocessors and the numbercores is likely to day by day. 44
Personal computer OS Personal computer OS job is to provide a good interface to singleuser. Modern operating system support multiprogramming supportdozens of programs started up at boot time. They are widely used for word processing, spreadsheet andinternet access. Examples of Personal computer OS are Window 98, Window2000, Linux etc. Little bit training or introduction require for using personalcomputer operating system. 45
Real time OS Real time OS characterized by having time as a keyparameter. For example, in industrial process control system, real timecomputer have to collect data about the production process and use it to control machine in factory. 46
Embedded OS Continuing on down to smaller and smaller systems, we come topalmtop computers and embedded systems. A palmtop or PDA(personal Digital Assistant) is a smallcomputer that fits in pocket and perform little function such as accessing electronic access site and memo pad Embedded systems run on the computers that control devicesthat are not generally thought of as computers, such as TV sets, microwave ovens, and mobile telephones. These often have some characteristics of real-time systems butalso have size, memory, and power restrictions that make them special. Examples of such operating systems are PalmOS and Windows CE (Consumer Electronics). 47
Smart Card OS The smallest operating systems run on smart cards, whichare credit card-sized devices containing a CPU chip. They have very severe processing power and memoryconstraints. Some of them can handle only a single function, such as electronic payments, but others can handle multiplefunctions on the same smart card. Often these are proprietary systems. 48