Basic Concepts of Operating Systems
Total Page:16
File Type:pdf, Size:1020Kb
✐ ✐ “26341˙CH01˙Garrido” — 2011/6/2 — 12:58 — page1—#3 ✐ ✐ © Jones & Bartlett Learning, LLC © Jones & Bartlett Learning, LLC NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION Chapter© Jones & 1 Bartlett Learning, LLC © Jones & Bartlett Learning, LLC NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION Basic Concepts of © JonesOperating & Bartlett Learning, Systems LLC © Jones & Bartlett Learning, LLC NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION © Jones & Bartlett Learning, LLC © Jones & Bartlett Learning, LLC NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION 1.1 ©Introduction Jones & Bartlett Learning, LLC © Jones & Bartlett Learning, LLC NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION The operating system is an essential part of a computer system; it is an intermediary component between the application programsand the hardware. The ultimate purpose of an operating system is twofold: (1) to provide various services to users’ programs © Jones & Bartlettand (2) toLearning, control the LLC functioning of the computer© system Jones hardware & Bartlett in an Learning, efficient and LLC NOT FOR SALEeffective OR manner.DISTRIBUTION NOT FOR SALE OR DISTRIBUTION Thischapter presentsthe basicconceptsand the abstract views of operating sys- tems. This preliminary material is important in understanding more clearly the com- plexities of the structure of operating systems and how the various services are provided. General and brief referencesto Unix and Windowsare included throughout the chapter. © Jones & Bartlett Learning,Appendix LLC A presents a detailed explanation© Jones & of theBartlett Linux commands.Learning, LLC NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION 1.1.1 Software Components A program is a sequence of instructions that enables a computer to execute a specific task. Before a program executes, it has to be translated from its original text form (source© Jones program) & Bartlett into a Learning, machine language LLC program. The program© thenJones needs & Bartlett to be Learning, LLC linkedNOT andFOR loaded SALE into OR memory. DISTRIBUTION NOT FOR SALE OR DISTRIBUTION The software components are the collection of programsthat execute in the com- puter. Theseprogramsperform computationsand control, manage, and carry out other important tasks. There are two general types of software components: © Jones & Bartlett• System Learning, software LLC © Jones & Bartlett Learning, LLC NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION • Application software 1 © Jones & Bartlett Learning, LLC. NOT FOR SALE OR DISTRIBUTION. ©✐ Jones & Bartlett Learning, LLC © Jones & Bartlett Learning, LLC ✐ NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION ✐ ✐ ✐ ✐ “26341˙CH01˙Garrido” — 2011/6/2 — 12:58 — page2—#4 ✐ ✐ © Jones & Bartlett Learning, LLC © Jones & Bartlett Learning, LLC NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION 2 Chapter 1 Basic Concepts of Operating Systems System© Jones software & Bartlettisthe setof Learning, programsthat LLC control the activitiesand functionsof© Jones the & Bartlett Learning, LLC variousNOT hardware FOR components,SALE OR programmingDISTRIBUTION tools and abstractions, andNOT other FOR utilities SALE OR DISTRIBUTION to monitor the state of the computer system. This software forms an environment for the programmersto develop and execute their programs(collectively known asapplication software). There are actually two types of users: application programmers and end users. The most important part of system software is the operating system (OS) that © Jones directly& Bartlett controls Learning, and manages LLC the hardware resources© of Jones the computer. & Bartlett The OSLearning, also LLC NOT FORprovides SALE a OR set ofDISTRIBUTION services to the user programs. The mostNOT common FOR examples SALE of OR operating DISTRIBUTION systems are Linux, Unix, Windows, MacOS, and OS/2. Application software are the user programs and consists of those programs that solve specific problems for the users and execute under the control of the operating system. Application programsare developed by individualsand organizationsfor solvingspecific © Jones & Bartlett Learning,problems. LLC © Jones & Bartlett Learning, LLC NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION 1.2 Operating Systems An operating© Jones system & Bartlett (OS) is aLearning, large and complex LLC set of system programs© Jones that control & Bartlett Learning, LLC the variousNOT operationsFOR SALE of a OR computer DISTRIBUTION system and provide a collection of servicesNOT FOR to other SALE OR DISTRIBUTION (user) programs. The purpose of an operating system involves two key goals: • Availability of a convenient, easy-to-use, and powerful set of services that are provided to the users and the application programs in the computer system © Jones & Bartlett• Management Learning, of the computerLLC resources in the most© Jones efficient & manner Bartlett Learning, LLC NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION Application and system programmers directly or indirectly communicate with the op- erating system in order to request some of these services. The services provided by an operating system are implemented as a large set of system functions that include scheduling of programs, memory management, device © Jones & Bartlett Learning,management, LLC file management, network© management, Jones & Bartlett and other Learning, more advanced LLC services NOT FOR SALE OR DISTRIBUTIONrelated to protection and security. TheNOT operating FOR SALE system OR is also DISTRIBUTION considered a huge resource manager and performs a variety of services as efficiently as possible to ensure the desired performance of the system. Figure 1.1 shows an external view of a computer system. It illustrates the pro- grammers and end users communicating with the operating system and other system software.© Jones & Bartlett Learning, LLC © Jones & Bartlett Learning, LLC TheNOT most FOR important SALE activeOR DISTRIBUTION resource in the computer system is theNOT CPU. FOR Other SALE OR DISTRIBUTION important resources are memory and I/O devices. Allocation and deallocation of all resources in the system are handled by various resource managers of the operating system. General-purpose operating systems support two general modes of operation: (1) user © Jones &mode Bartlett and (2) Learning, kernel mode, LLC which is sometimes called the© supervisor,Jones & protected,Bartlett Learning, or priv- LLC NOT FORilege SALE mode. OR A userDISTRIBUTION process will normally execute in userNOT mode. FOR Some SALE instructions, OR DISTRIBUTION such aslow-level I/O functionsand memory accesstospecial areaswhere the OS maintains © Jones & Bartlett Learning, LLC. NOT FOR SALE OR DISTRIBUTION. ©✐ Jones & Bartlett Learning, LLC © Jones & Bartlett Learning, LLC ✐ NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION ✐ ✐ ✐ ✐ “26341˙CH01˙Garrido” — 2011/6/2 — 12:58 — page3—#5 ✐ ✐ © Jones & Bartlett Learning, LLC © Jones & Bartlett Learning, LLC NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION 1.2 Operating Systems 3 © Jones & Bartlett Learning, LLC © Jones & Bartlett Learning, LLC End Application NOT FOR SALEusers OR DISTRIBUTIONprograms NOT FOR SALE OR DISTRIBUTION Application Other system programmers programs © Jones & Bartlett Learning, LLC © Jones & Bartlett Learning, LLC NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION Operating System system programmers © Jones & Bartlett Learning, LLC © JonesHardware & Bartlett Learning, LLC system NOT FOR SALE OR DISTRIBUTION NOT FOR SALE OR DISTRIBUTION Figure 1.1 An external view of a computer system. © Jones & Bartlett Learning, LLC © Jones & Bartlett Learning, LLC itsNOT data FOR structures, SALE can OR execute DISTRIBUTION only in kernel mode. As such, theNOT OS in FOR kernel SALE mode OR DISTRIBUTION has direct control of the computer system. © Jones1.2.1 & Bartlett Operating Learning, System LLC Interfaces © Jones & Bartlett Learning, LLC NOT FOR SALEUsers OR and DISTRIBUTION application programmers can communicateNOT with FOR an operating SALE OR system DISTRIBUTION through itsinterfaces.There are three general levelsof interfacesprovided by an operating system: • Graphical user interface (GUI) © Jones & Bartlett Learning, LLC © Jones & Bartlett Learning, LLC NOT FOR SALE OR DISTRIBUTION• Command line interpreter (alsoNOT called FOR the SALE shell) OR DISTRIBUTION • System-call interface Figure 1.2 illustrates the basic structure of an operating system and shows the three© Jones levels & of Bartlett interfaces, Learning, which are found LLC immediately above the© kernel. Jones The & highest Bartlett Learning, LLC levelNOT is FOR the graphical SALE OR user DISTRIBUTION interface (GUI), which allows I/O interactionNOT FOR with SALE a user OR DISTRIBUTION through intuitive icons, menus, and other graphical objects. With these objects, the user interacts with the operating system in a relatively easy and convenient manner— for example, using the click of a mouse to select an option or command. The most common GUI examplesare the Windowsdesktopand the X-Window in Unix. © Jones & BartlettThe Learning, user at this LLC level is completely separated© fromJones any & intrinsic Bartlett detail Learning, about the LLC NOT FOR SALEunderlying OR DISTRIBUTION system. This level of operating system interfaceNOT FOR is not SALE considered OR anDISTRIBUTION essential part of the operating system; it is rather an add-on system software component. © Jones & Bartlett