Chapter 2.2 Operating-System StructuresChapter 2: Operating-System StructuresFocus on Chapter 2.25. System ProgramsSystem Programs – Overview by Category6 Operating System Design and ImplementationOperating System Design and Implementation (Cont.)Advantages / Disadvantages of OS written in Higher Level Languages7 Operating System Structure Simple Structure7.1 Simple StructureMS-DOS Layer Structure7.1 Simple Structure (continued)UNIX System Structure7.2 Layered ApproachLayered Design Approach - AdvantagesLayered Design Approach - DisadvantagesLayered Operating System7.3 Microkernel System Structure DesignMicrokernel System Structure Design7.4 Modular System Structural DesignSolaris Modular Approach8 Virtual MachinesVirtual Machines (Cont.)Virtual Machines – Sharing DiskVirtual Machines - ImplementationVirtual Machines (cont) – Benefits:VMwareVMware ArchitectureThe Java Virtual MachineThe Java Virtual Machine (JVM) - implementation9. Operating System GenerationSystem BootingSlide 33End of Chapter 2Chapter 2.2 Operating-System Chapter 2.2 Operating-System StructuresStructuresModified Considerably by your Instructor352.2Silberschatz, Galvin and Gagne ©2005Operating System ConceptsChapter 2: Operating-System StructuresChapter 2: Operating-System Structures(Continued from Chapter 2.1 slides)System ProgramsOperating System Design and ImplementationOperating System StructureVirtual MachinesOperating System GenerationSystem Boot2.3Silberschatz, Galvin and Gagne ©2005Operating System ConceptsFocus on Chapter 2.2Focus on Chapter 2.2Is the Structure of an operating system.Will start off by looking at ‘system programs.’To start of discussing systems programs, we need to recall the hardware hierarchy.2.4Silberschatz, Galvin and Gagne ©2005Operating System Concepts5. System Programs5. System ProgramsLet’s recall the architectural hierarchy: (going ‘up’…)HardwareOperating system sits on top of the hardware and is very hardware dependent in many places.System Programs A number are conveniences for us, as in supplying user interfaces to system callsMany are quite complex and low levelA number of these are utilities to assist us too.Application Programs.Programs that provide functionality to the users.Let’s look at some typical categories of system programs as well as some samples.2.5Silberschatz, Galvin and Gagne ©2005Operating System ConceptsSystem Programs – Overview by System Programs – Overview by CategoryCategoryFile manipulation Used to create, delete, copy, print, list, move, etc.Status informationPrograms ask for time, number of users, sometimes request debugging information; File modificationCreate, modify, search, etc. May include text editors, search algorithms for files, etc.Programming language supportCompilers, debuggers, interpreters…Program loading and executionLoaders, linkage editors, absolute / relocatable loaders, overlay loaders, and moreCommunicationsCreating virtual connections among processes, users, and computing systems.Browse web pages, electronic mail, remote log in, transfer files, etc.Application programsMost computing systems also have programs to solve useful problems, such as word processors, text formatters, spreadsheets, compilers, database systems, etc.Most users’ view of the operation system is defined by system programs and the application programs, not the actual system callsApplication programs have little or no knowledge of underlying system calls when their programs request service.2.6Silberschatz, Galvin and Gagne ©2005Operating System Concepts6 Operating System Design and Implementation6 Operating System Design and ImplementationNo simple solution to design / implement an operating system.Hardware influences the design and the type of systembatch, time shared, multi-user, etc.But in general no cookbook design approach.A highly-creative, very complex, exacting undertaking! Two general groups of goals to consider in considering a design of an operating system. User goals andSystem goalsUser Goals: utility, learnability, usability, reliability, speed, – but there’sno solid agreement on how to achieve these.System Goals: Same: reliable, flexible, efficient, etc. – but no solid agreement on how these requirements can be specifically met.2.7Silberschatz, Galvin and Gagne ©2005Operating System ConceptsOperating System Design and Implementation (Cont.)Operating System Design and Implementation (Cont.)Most older operating systemswritten in assembler language, such as MSDOS, which (written in 8088 assembler language), This version of DOS was only available on the Intel family of CPUsTended to be very architecture dependent (register number, size, etc.)Modern systems are normally Almost totally written in C or C++ with some special routines written in assembler language (super efficient speeds)Higher level language implementation offers many advantages over assembler-constructed systems. Among these are:faster construction, ease of understanding and relative ease of debuggingAlso easier to recompile when changed, and port to other hardware.Higher level language construction disadvantages: reduced speed and increased storage capacities but with modern technologies, these are not significant.2.8Silberschatz, Galvin and Gagne ©2005Operating System ConceptsAdvantages / Disadvantages of OS written Advantages / Disadvantages of OS written in Higher Level Languagesin Higher Level LanguagesBut:Improvement in algorithm usage and data structures can improve performance better than programming in assembler languages. And, Only a small part of the operating system is absolutely critical to overall performance (memory manager and CPU scheduling).Parts of these can be fine-tuned with selective assembler coding.So we can see that most operating systems are written essentially in higher level languages.This has been the case for many years now.2.9Silberschatz, Galvin and Gagne ©2005Operating System Concepts7 Operating System Structure 7 Operating System Structure Simple Structure Simple Structure In this section, we’ll look at some approaches to structuring an operating system.Before we go into Virtual Machines, we will consider different structural
View Full Document