Operating System Definitions intro history Layers of Computing

  • Slides: 18
Download presentation
Operating System Definitions, intro, history

Operating System Definitions, intro, history

Layers of Computing Systems Communications Applications Operating Systems Programming Hardware Information

Layers of Computing Systems Communications Applications Operating Systems Programming Hardware Information

Operating systems layer Operating system

Operating systems layer Operating system

Types of software • Application software – is written to address our specific needs

Types of software • Application software – is written to address our specific needs to solve problems in the real world. – Ex: Word processing programs, games, inventory control systems, automobile, diagnostic programs, and missile guidance programs • System software – manages a computer system at a fundamental level and interacts directly with the hardware – provides the tools and an environment in which application software can be created and run. (e. g. library of graphics software that renders images on a display) – Ex: utility software (antivirus software, backup software and disk tools), device drivers (drivers for keyboards, printers, scanners, digital cameras and external storage devices) and firmware (BIOS (Basic Input/Output system) on PC, timing and control systems for washing machines and etc) • Operating system (the core of system software) – manages computer resources, such as memory and input/output devices, – provides an interface through which a human can interact with the computer.

What is OS • glue – that holds the hardware and software together. •

What is OS • glue – that holds the hardware and software together. • software foundation – on which all other software rests, allowing us to write programs that interact with the machine. • policeman (traffic warden) – an operating system organizes the efficient flow of programs through a computer system.

What is what? • Categorize into application software and system software – – –

What is what? • Categorize into application software and system software – – – – – Opera (Web Browser) Assembler My. SQL (Database Software) Microsoft Powerpoint (Presentation Software) i. Tunes (Music / Sound Software) DOS (Disk Operating System) World of Warcraft (Game Software) Adobe Photoshop (Graphics Software) Disk cleaners (remove any unnecessary files) Disk defragmenters (re-organize file fragments on a hard disk drive to increase performance)

OS Roles • Coordinates access to physical resources – CPU, memory, disk, i/o devices,

OS Roles • Coordinates access to physical resources – CPU, memory, disk, i/o devices, etc. • Provides services – Protection – Scheduling – Memory management – File systems – Synchronization – etc.

OS as Government • Makes lives easy – Promises everyone whole machine (dedicated CPU,

OS as Government • Makes lives easy – Promises everyone whole machine (dedicated CPU, infinite memory, …) – Provides standardized services (standard libraries, window systems, …) • Makes lives fair – Arbitrates competing resource demands • Makes lives safe – Prevents accidental or malicious damage by one program to another

“pulling yourself up by your own bootstraps, ” • booting the computer. 1. Turn-on

“pulling yourself up by your own bootstraps, ” • booting the computer. 1. Turn-on PC 2. Computer hardware loads a small set of system instructions stored in permanent memory (ROM). 3. These instructions load a larger portion of system software from secondary memory, usually a magnetic disk. 4. Eventually all key elements of the operating system software loaded, start-up programs are executed, the user interface is provided, and the system is ready for use.

Important OS topics • Multiprogramming - is the technique of keeping multiple programs in

Important OS topics • Multiprogramming - is the technique of keeping multiple programs in main memory at the same time; these programs compete for access to the CPU so that they can execute • Memory management - The act of keeping track of how and where programs are loaded in main memory • Process management - The act of keeping track of information for active processes • CPU scheduling – The act of determining which process in memory is given access to the CPU so that it may execute

Development of OS paradigms (History) • • Phase 0: User at console Phase 1:

Development of OS paradigms (History) • • Phase 0: User at console Phase 1: Batch processing Phase 2: Interactive time-sharing Phase 3: Personal computing

Phase 0: User at Console • How things work – One program running at

Phase 0: User at Console • How things work – One program running at a time – No OS, just a sign-up sheet for reservations – Each user has complete control of machine • Advantages – Interactive! – No one can hurt anyone else • Disadvantages – Reservations not accurate, leads to inefficiency – Loading/ unloading tapes and cards takes forever and leaves the machine idle

Phase 1: Batch processing • How things work – Sort jobs and batch those

Phase 1: Batch processing • How things work – Sort jobs and batch those with similar needs to reduce unnecessary setup time – Resident monitor provides “automatic job sequencing”: it interprets “control cards” to automatically run a bunch of programs without human intervention • Advantages – Good utilization of machine -> efficient • Disadvantages – Loss of interactivity – One job can screw up other jobs, need protection

Phase 1: Batch processing • The term batch evolved to mean a system in

Phase 1: Batch processing • The term batch evolved to mean a system in which programs and system resources are coordinated and executed without interaction between the user and the program.

Phase 2: Interactive time-sharing • How things work – Multiple users per single machine

Phase 2: Interactive time-sharing • How things work – Multiple users per single machine – OS with multiprogramming and memory protection • Advantages – Interactivity – Sharing of resources • Disadvantages – Does not always provide reasonable response time

Phase 3: Personal Computing • How things work – One machine person – OS

Phase 3: Personal Computing • How things work – One machine person – OS with multiprogramming and memory protection • Advantages – Interactivity – Good response times • Disadvantages – Sharing is harder

Seminars: flipped classroom • Topics for the seminar • Kernel (what is it, different

Seminars: flipped classroom • Topics for the seminar • Kernel (what is it, different structures) – http: //www. systhread. net/texts/200510 kdiff. php • Core utility and system software – https: //en. wikipedia. org/wiki/List_of_Microsoft_ Windows_components

Bibliography • Dale, Computer Science Illuminated, Chapter 10, 11, end of the book exercises

Bibliography • Dale, Computer Science Illuminated, Chapter 10, 11, end of the book exercises • J. Brookshear, An Overview of Computer Science 11 th ed (intro txt) - (Pearson, 2012) BBS • Randy Wang, Operating Systems, System Calls, and Buffered I/O • http: //study. com/academy/lesson/systemssoftware-utility-software-device-drivers-firmware -gui. html