Book: Dinosaurs? & Dinosaur Wars Frederick P. Brooks' Mythical Man-Month (1975). Description of the software crises - likens large scale programming to a tar pit Opera&ng Systems No scene from prehistory is quite so vivid as that of the mortal struggles of Introduc&on great beasts in the tar pits. In the mind's eye one sees dinosaurs , mammoths, and saber toothed tigers struggling against the grip of the tar . The fiercer the struggle, the more entangling the tar , and no beast is so strong or so skillful but that he ultimately sinks. Large-scale programming has over the past decade been such a tar pit , and CSCI 4730 / CSCI 6730 many great and powerful beasts have thrashed violently in it. Most have emerged with running systems - few have met goals, schedules, and budgets. Maria Hybine?e 1 Maria Hybinette, UGA Maria Hybinette, UGA Evolu&on of Textbook Questions (2 slides) • What is an Operating Systems (OS)? • What does an OS do? • What is an OS and what is it not? 1983 1998 2004 1983 • How do I run an OS? • How does an Operating System run? • What is the basic structure? 2008 • Computer System Component Architecture 2013 Maria Hybinette, UGA Maria Hybinette, UGA https://galvin.info/history-of-operating-system-concepts-textbook/
Questions? Poll? Desktop and Mobile OS • What desktop/laptop OS do you have? • What are the major operating system • Which desktop/laptop OSs are you familiar with? components? • What do you think the market share (%) is (portion of different OSs)? • What are basic computer system – Windows – Mac (Unix derivative) organizations? – Linux (Unix derivative) – Other • How do you communicate with the • What about the mobile OS market share? operating systems? – iOS (UNIX) – Android (Linux based) • What services are (or need to be) – Window – Other provided? • Are they different? Maria Hybinette, UGA Maria Hybinette, UGA Popularity: OS Market Share Usage Share: Desktop vs. Smartphones Desktop (left) vs. Mobile (right) • % that run an OS – at a par&cular &me. • From late 2016 – mobile started to dominate the desktop market share. • Landscape is changing, mobile plaWorms are star&ng to dominate https://www.netmarketshare.com/ Based on page views : January 2017 Maria Hybinette, UGA Maria Hybinette, UGA https://en.wikipedia.org/wiki/Usage_share_of_operating_systems
What is an Opera&ng System What is an Opera&ng System CPU: Scheduling Processes on CPU Browser DVD Player gcc Disk: Read And Write Files vi Memory: Manage Running Processes Data GPU: renders images/animation for display – Operating System that can also accelerate other aspects of computations – such as financial modeling. Communication: Message Send and Receive Hardware • So1ware between applica7ons and hardware • So1ware between applica&ons and hardware – Hide hardware complexity – Hide hardware complexity – Manages resources: – Manages resources: • Make finite resources infinite • Make finite resources infinite – Provide protec7on and isola7on – Provide protec7on and isola7on Maria Hybinette, UGA Maria Hybinette, UGA Image Courtesy: Kai Li, Princeton Image Courtesy: Ada Gavrilovska, G-Tech Where is the OS? What is an Operating System? Computer System Layers • An intermediary between a user of a Computer system can be divided computer and its computer hardware. roughly in four components: • A hardware manager … • Hardware user user user 1 2 n • A protector • Operating system • Application programs … compiler assembler text editor • Users • Goals: System and Application Programs – Make the computer system convenient to use. Operating System – Use the computer hardware in an efficient manner. Computer Hardware – Combination of the above. – Handhelds (convenience), Mainframes/Servers (efficiency) Maria Hybinette, UGA Maria Hybinette, UGA
Computer System Layers Computer System Layers Computer system can be divided Computer system can be divided roughly in four components: roughly in four components: … … • Hardware • Hardware: user user user user user user 1 2 n 1 2 n • Operating system: – provides basic computer resources: – Controls and coordinates … … use of hardware among • CPU, Memory, I/O Devices compiler assembler text editor compiler assembler text editor various applications and System and Application Programs System and Application Programs users. Operating System Operating System Computer Computer Hardware Hardware Maria Hybinette, UGA Maria Hybinette, UGA Computer System Layers Computer System Layers Computer system can be divided Computer system can be divided roughly in four components: roughly in four components: … … • Hardware user user user • Hardware user user user 1 2 n 1 2 n • Operating system • Operating system • Application programs • Application programs … … compiler assembler text editor compiler assembler text editor – define the ways in which • Users System and Application Programs System and Application Programs the system resources are – People, machines, other used to solve the computers computing problems of the Operating System Operating System users • Word processors, Computer Computer compilers, web browsers, Hardware Hardware database systems, video games Maria Hybinette, UGA Maria Hybinette, UGA
Computer System Layers Between Each of the Layers: Interfaces • Device Drivers Computer system can be divided roughly in four components: – Hardware … specific • Hardware user user user 1 2 n • Operating system so[ware • Application programs … • System Calls compiler assembler text editor • Users System and Application Programs – Gateway to Operating System ”Kernel Space” • Shell Computer Hardware – User Interface Maria Hybinette, UGA Maria Hybinette, UGA What " Makes up” the Operating What Does Operating Systems System? Do? • Hardware à Drivers -- Operating System – Kernel • A Space/Time Controller: à Applications à Users • [ Space ] It allocates resources • Surprise! No universally accepted definition! – A GRAY fuzzy border – Manages all resources – Decides between conflicting requests for • � Everything a vendor ships when you order an operating system � used to be a good efficient and fair resource use approximation … But it varies wildly also bloated • [ Time ] It controls execution of running • Operating System is just the � Kernel � programs (processes) – It is the one program that runs at all times on the computer – Controls execution of programs to prevent – everything else is either a • system program (ships with the operating system) or errors and improper use of the computer an • application program Maria Hybinette, UGA Maria Hybinette, UGA
Visual of the Time-Line of the Overview: The Computer Startup Booting Sequence (more detailed) Process • A bootstrap program (initial program) is loaded at power-up or reboot (it itself is called by an instruction at a specific � known address � – Stored in firmware in ROM/ EEROM – Stored on a chip on the mother board ( � parent board � ) • Initializes all aspects of system • At some later point the operating system kernel is loaded (e.g., Visualizing the booting sequence - please read the below web from disk) and starts execution page for more detail (HW). • Pentium initial bootstrap program that loads the OS is called the First instruction executed (Intels) : 0xFFFFFFF0 (reset vector) system Basic Input Output First instruction is a jump to BIOS entry point System or BIOS. Maria Hybinette, UGA Maria Hybinette, UGA http://duartes.org/gustavo/blog/post/how-computers-boot-up Booting from hard disk CMOS/BIOS Configuration Utility Disk is divided into 1+ partitions: one file system per partition Partition Table Entire Disk: MBR Partition Partition … Partition Free Space Management File System: Boot block Super Block i-list Data blocks for files, directories, etc. i-node i-node i-node … i-node Maria Hybinette, UGA Maria Hybinette, UGA
Recommend
More recommend