Introduction to OS (concept, evolution, some keywords)

Slides:



Advertisements
Similar presentations
Introduction CSCI 444/544 Operating Systems Fall 2008.
Advertisements

1/16/2008CSCI 315 Operating Systems Design1 Introduction Notice: The slides for this lecture have been largely based on those accompanying the textbook.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
An Introduction to Operating Systems. Definition  An Operating System, or OS, is low-level software that enables a user and higher-level application.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
 What is OS? What is OS?  What OS does? What OS does?  Structure of Operating System: Structure of Operating System:  Evolution of OS Evolution of.
Operating Systems.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 1 Introduction Read:
CS 1308 Computer Literacy and the Internet. Introduction  Von Neumann computer  “Naked machine”  Hardware without any helpful user-oriented features.
Chapter 1 CS 3204: Introduction. CS 3204: Operating Systems2 What is an Operating System (OS) ? Definition 1: An OS is the interface between the hardware.
Chapter 2 (PART 1) Light-Weight Process (Threads) Department of Computer Science Southern Illinois University Edwardsville Summer, 2004 Dr. Hiroshi Fujinoki.
المحاضرة الاولى Operating Systems. The general objectives of this decision explain the concepts and the importance of operating systems and development.
Operating System Concepts Chapter One: Introduction What is an operating system? Simple Batch Systems Multiprogramming Systems Time-Sharing Systems Personal-Computer.
INVITATION TO COMPUTER SCIENCE, JAVA VERSION, THIRD EDITION Chapter 6: An Introduction to System Software and Virtual Machines.
1.1 Operating System Concepts Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
Lecture 8: 9/19/2002CS149D Fall CS149D Elements of Computer Science Ayman Abdel-Hamid Department of Computer Science Old Dominion University Lecture.
Chapter 1 (PART 1) Introduction to OS (concept, evolution, some keywords) Department of Computer Science Southern Illinois University Edwardsville Summer,
Operating System Principles And Multitasking
We will focus on operating system concepts What does it do? How is it implemented? Apply to Windows, Linux, Unix, Solaris, Mac OS X. Will discuss differences.
Operating System Concepts Part II Department of Computer Science Southern Illinois University Edwardsville Spring, 2009 Dr. Hiroshi Fujinoki
CPSC 171 Introduction to Computer Science System Software and Virtual Machines.
Chapter 1 (PART 2) Operating System Concepts Department of Computer Science Southern Illinois University Edwardsville Spring, 2016 Dr. Hiroshi Fujinoki.
Operating Systems.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
1.1 Sandeep TayalCSE Department MAIT 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming Batched Systems Time-Sharing Systems.
Operating Systems. Categories of Software System Software –Operating Systems (OS) –Language Translators –Utility Programs Application Software.
CS4315A. Berrached:CMS:UHD1 Introduction to Operating Systems Chapter 1.
Welcome to CS314 Operating Systems A Quick Tour for Introduction to OS Department of Computer Science Southern Illinois University Edwardsville Spring,
Uniprocessor Process Management & Process Scheduling Department of Computer Science Southern Illinois University Edwardsville Spring, 2016 Dr. Hiroshi.
Operating System Concepts with Java – 7 th Edition, Nov 15, 2006 Silberschatz, Galvin and Gagne ©2007 Chapter 0: Historical Overview.
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real.
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real.
Applied Operating System Concepts
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Where are being used the OS?
Introduction to Operating System (OS)
Chapter 1: Introduction
CS 286 Computer Organization and Architecture
Chapter 1: Introduction
TYPES OFF OPERATING SYSTEM
Chapter 1: Introduction
Operating System Concepts
Chapter 1: Introduction
Introduction to Operating Systems
Introduction to Operating Systems
Chapter 1: Introduction
Chapter 1: Introduction
Operating System Introduction.
Chapter 1: Introduction
The Main Features of Operating Systems
Uniprocessor Process Management & Process Scheduling
Introduction to OS (concept, evolution, some keywords)
Chapter 1: Introduction
Welcome to CS314 Operating Systems A Quick Tour for Introduction to OS
Department of Computer Science
Welcome to CS314 Operating Systems A Quick Tour for Introduction to OS
Process/Code Migration and Cloning
Operating System Overview
Department of Computer Science
Operating System Concepts
Threads: Light-Weight Processes
Operating System Concepts
Operating System Concepts
Light-Weight Process (Threads)
Uniprocessor Process Management & Process Scheduling
Function of Operating Systems
Chapter 1: Introduction
Presentation transcript:

Introduction to OS (concept, evolution, some keywords) CS 314 Operating Systems Chapter 1 (PART 1) Introduction to OS (concept, evolution, some keywords) Department of Computer Science Southern Illinois University Edwardsville Spring, 2019 Dr. Hiroshi Fujinoki E-mail: hfujino@siue.edu Chapter_One/001

CS 314 Operating Systems Two Primary Roles of Operating Systems We discussed this subject in the previous PPT slides, but we go deeper into the technical details. (1) A middleman between you (as a user) and computer hardware (2) The government in your computer (the agent that allocate resources) Operating systems as extended machine Keyword #1 Operating systems as resource manager Keyword #2 Chapter_One/002

CS 314 Operating Systems     Operating systems as extended machine Low-level commands (e.g., “OUT 06 1A FE”)  High-level commands (e.g., “READ” call)  OS Computer Hardware User(s) High-level outputs (e.g., “Hello”)  Raw output (“41 4B 5C 20”)  Chapter_One/003

CS 314 Operating Systems Operating System as Extended Machine www.osinfoblog.com/post/7/the-operating-system-as-an-extended-machine/ learntechnologytips.blogspot.com/2012/05/what-is-operating-system-extended.html Chapter_One/004A

CS 314 Operating Systems Operating System as Extended Machine Computer System High-level commands OS Computer Hardware User Low-level Commands A human user can manipulate computer Hardware through operating system Chapter_One/004B

CS 314 Operating Systems Hardware Computer Operating System as Extended Machine Extended Machine High-level commands OS Computer Hardware Hardware Computer User(s) “Extended machine” is an imaginary hardware computer that can be manipulated directly by high-level commands Chapter_One/005

CS 314 Operating Systems = Definition Extended Machine = An imaginary computer (as a hardware computer) that can be manipulated directly by high-level user commands by abstraction offered by an operating system (this is for your quiz #1 in the next week) Chapter_One/006

CS 314 Operating Systems Operating systems as resource manager A computer System Program A Program B Program C Program D Request resources Request resources Resources CPU Network Memory Disk Keyboard Etc. Chapter_One/007

CS 314 Operating Systems Operating systems as resource manager (continued) Important Fact Any physical computer resources (CPU, memory, keyboard, disk, etc) can not be assigned to multiple programs at a given time. Example CPU Memory CPU A physical CPU can not be assigned to more than one program at a time Program A Program B Chapter_One/008

CS 314 Operating Systems Operating systems as resource manager (continued) CPU A physical CPU can not be assigned to more than one program at a time Memory Program A Program B Question We know that we can run multiple application programs in Windows XP at the same time. How is this possible, then? Chapter_One/009

CS 314 Operating Systems Multi-tasking Operating systems as resource manager (continued) Chapter_One/010

CS 314 Operating Systems Operating systems as resource manager (continued) Question We know that we can run multiple application programs in Windows OS at the same time. How is this possible, then? Answer By process management, called “context switching”. Context Switching Time Program A Program B Program C Chapter_One/011

CS 314 Operating Systems Operating systems as resource manager (continued) Program A Program B Program C Looks like all three running At the same time Time Program A Program B Program C Chapter_One/012

CS 314 Operating Systems Operating systems as resource manager (continued) Time Program A Program B Program C Switching the processor from a program to another It is called “context switching” (A part of OS process management) Chapter_One/013

CS 314 Operating Systems Operating systems as resource manager (continued) In the previous example, we discussed process management as an example of resource management, similar (but different) resource management is performed for every and each resource available in a computer system Examples Memory management (how much for which program? Printer spooling (= assign the order of printer use) Deadlock avoidance for other I/O devices - Everyone got a little I/O resource but not enough - Everyone waits for other forever We will discuss all these topics. Chapter_One/014

CS 314 Operating Systems Evolution of operating systems (1) What is the oldest operating system? (2) Why we do not use the oldest operating system any more? (3) How operating systems evolved? (4) How is our Windows XP different from those classical OS? We will see the answers for these questions! (and you can answer these questions in Quiz #1 next week ) Chapter_One/015

CS 314 Operating Systems Evolution of operating systems  Pre-Operating Systems  Batch Systems  Multitasking Operating Systems  Timesharing Operating Systems (our UNIX programming projects) Chapter_One/015B

CS 314 Operating Systems Evolution of operating systems (continued)  Pre-Operating Systems (no OS) Computer System CPU Memory Process it (run the program) User Program Outputs User Program User(s) Chapter_One/016

CS 314 Operating Systems  Pre-Operating Systems (no OS) Major Properties Advantages No process manager Only one user application program at a time No resource manager We don’t need it. No automatic program loader/starter You are the one who does this. (Yes, you did read this correctly, there are some advantages) Hardware resources are all yours No one can disturb you (= extremely fast!) Memory space for OS is not needed Chapter_One/017

CS 314 Operating Systems  Pre-Operating Systems (no OS) Disadvantages (There are many, but what was the most serious one?) A user can not leave the computer room and relax in his/her office Price of computer hardware was extremely expensive - Once your program is finished, you have to save the outputs and cleanup the computer system immediately. Basically you work as a slave for the computer system (not as a user)  Solution is “batch system” Chapter_One/018

CS 314 Operating Systems  Batch Systems Computer System CPU Memory A User Programs A Computer System B CPU Process it (run the program) C D Program Loader Outputs E User Program User(s) Memory Chapter_One/019

CS 314 Operating Systems  Batch Systems Major Properties The program loader monitors progress of program execution As soon as a program is completed, the program loader loads the next As long as programs (“jobs”) exists, a computer keeps running Advantages Disadvantages A computer system continues to execute programs, one at a time (you no longer have to manually load programs) What if your program has a bug? Computer does not fix it for you CPU utilization could be low Chapter_One/020

CS 314 Operating Systems  Multitasking and Timesharing OS User Programs A Computer System B CPU C D Process Scheduler Program Loader Outputs E A B C D User(s) Memory the process scheduler assigns a processor to each program (decides how long a program can hold the processor) Chapter_One/021

CS 314 Operating Systems  Multitasking and Timesharing OS Multitasking & Timesharing User Programs A Computer System B CPU C Process Scheduler D Program Loader E D C B A user Memory Chapter_One/022

CS 314 Operating Systems  Multitasking and Timesharing OS Chapter_One/022

CS 314 Operating Systems  Multitasking and Timesharing OS Multiple programs can be in memory at the same time While a program does not need the CPU, CPU can be assigned to another program CPU utilization will be improved Advantage A small program that was submitted after big ones could finish before the big ones Average waiting time will be improved Advantage It’s not “interactive” Disadvantage Chapter_One/023

CS 314 Operating Systems  Multitasking and Timesharing OS User Programs A Computer System B B stops and it leaves the system CPU B is placed at the end of queue C D Program Loader E A B C D If B has a bug Memory Chapter_One/024

CS 314 Operating Systems  Multitasking and Timesharing OS Multitasking & Timesharing Multiple programs can be in memory at the same time While a program does not need the CPU, CPU can be assigned to another program CPU utilization will be improved Advantage A small program that was submitted after big ones could finish before the big ones Average waiting time will be improved Advantage It’s “interactive” Advantage Chapter_One/025

(in an interactive way) CS 314 Operating Systems  Multiprogramming (= “multitasking”) and Timesharing OS Multitasking & Timesharing User Programs A Computer System B can be restarted (in an interactive way) B CPU C D Program Loader E D C B A user interact Memory user Chapter_One/026

CS 314 Operating Systems Summary of this presentation In this presentation, we have covered the following key concepts in OS:  Two primary roles of OS  Context switching  Batch system  Multiprogramming  Time sharing Extended machine and resource manager Provide users with pseudo-parallelism The most primitive operating system Improve CPU utilization and execution time Allows users interactive operations Chapter_One/027