Operating System Introduction (Ch 1.1-1.8, 2.1-2.8)

Slides:



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

CS 345 Computer System Overview
Prof. B. I. Khodanpur HOD – Dept. of CSE R. V. College of Engineering
Operating System Introduction (Ch 1). Topics What is an OS? OS History OS Concepts OS Structures.
Operating System Introduction. Topics What is an OS? OS History OS Concepts OS Structures.
Course Overview Introduction Computer System Structures
Operating Systems: Software in the Background
Operating System Structure. Announcements Make sure you are registered for CS 415 First CS 415 project is up –Initial design documents due next Friday,
© 2004, D. J. Foreman 1 CS350 Operating Systems. © 2004, D. J. Foreman 2 Administrivia  Assignments ■ Homework on most chapters ■ Approximately 8 lab.
Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating.
Operating System I Introduction.
Operating Systems BTEC IT Practitioners.
Operating Systems - Introduction S H Srinivasan
Operating System Introduction (Ch 1). Topics What is an OS? OS History OS Concepts OS Structures.
CENG334 Introduction to Operating Systems Erol Sahin Dept of Computer Eng. Middle East Technical University Ankara, TURKEY URL:
Operating Systems Introduction. Topics F What is an OS? F OS History F OS Concepts F OS Structures.
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
Xuan Guo Chapter 1 What is UNIX? Graham Glass and King Ables, UNIX for Programmers and Users, Third Edition, Pearson Prentice Hall, 2003 Original Notes.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Operating System Introduction. Topics F What is an OS? F OS History F OS Concepts F OS Structures.
Topic 1 – What is an OS? 1 CS502 Spring 2006 What is an Operating System? Characteristics –Large, complex set of programs –Long-lived, evolutionary –Worked.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Chapter 2: Operating-System Structures Modified from the text book.
Operating System Introduction. Topics What is an OS? OS History OS Concepts OS Structures.
Introduction. Why Study OS? Understand model of operation –Easier to see how to use the system –Enables you to write efficient code Learn to design an.
Linux Basics CS 302. Outline  What is Unix?  What is Linux?  Virtual Machine.
Ceng Operating Systems
Chapter 10 – UNIX. History In late 1960s, two employees of Bell Labs (Ken Thompson & Dennis Ritchie) designed a new operating system to overcome the constraints.
Operating systems CHAPTER 7.
Operating System A program that controls the execution of application programs An interface between applications and hardware 1.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 2: System Structures.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
Operating Systems CS3502 Fall 2014 Dr. Jose M. Garrido
 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.
CS 1308 Computer Literacy and the Internet. Introduction  Von Neumann computer  “Naked machine”  Hardware without any helpful user-oriented features.
Operating Systems Lecture 4. Agenda for Today Review of previous lecture Operating system structures Operating system design and implementation UNIX/Linux.
WEEK 1 COURSE INTRODUCTION INTRODUCTION TO OPERATING SYSTEMS OPERATING SYSTEM STRUCTURES Operating Systems CS3013 / CS502.
Chapter 2: Operating-System Structures. 2.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 14, 2005 Operating System.
Introduction to Operating Systems Chapter 1. cs431 -cotter2 Lecture Objectives Understand the relationship between computing hardware, operating system,
2001 Networking Operating Systems (CO32010) 1. Operating Systems 2. Processes and scheduling 3.
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 1 Introduction Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc.
Slide 3-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 3.
Operating System What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. An operating.
OSes: 3. OS Structs 1 Operating Systems v Objectives –summarise OSes from several perspectives Certificate Program in Software Development CSE-TC and CSIM,
INFORMATION SYSTEM-SOFTWARE Topic: OPERATING SYSTEM CONCEPTS.
Operating System Introduction. Topics What is an OS? OS History OS Concepts OS Structures.
10/8: Software What is software? –Types of software System software: Operating systems Applications Creating software –Evolution of software development.
OS, , Part I Operating - System Structures Department of Computer Engineering, PSUWannarat Suntiamorntut.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
UNIX & Windows NT Name: Jing Bai ID: Date:8/28/00.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
1 Operating System (CS – 772) Instructor: Nasir Minhas Assistant Professor UIIT PMAS – UAAR
CENG334 Introduction to Operating Systems 1 Erol Sahin Dept of Computer Eng. Middle East Technical University Ankara, TURKEY URL:
Operating Systems.
2.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition System Programs (p73) System programs provide a convenient environment.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Introduction to Operating Systems Concepts
Computer System Structures
Operating System & Application Software
Unit OS2: Operating System Principles
Chapter 3: Windows7 Part 1.
MODERN OPERATING SYSTEMS Third Edition ANDREW S
Objective Understand the concepts of modern operating systems by investigating the most popular operating system in the current and future market Provide.
Chapter 2: System Structures
Operating Systems Lecture 4.
B.Ramamurthy Chapter 2 : Appendix
Outline Chapter 2 (cont) OS Design OS structure
Outline Operating System Organization Operating System Examples
System calls….. C-program->POSIX call
Objective Understand the concepts of modern operating systems by investigating the most popular operating system in the current and future market Provide.
Presentation transcript:

Operating System Introduction (Ch , )

Topics What is an OS? OS History OS Concepts OS Structures

Let’s Get Started! What are some OSes you know? –Guess if you are not sure Pick an OS you know: –What are some things you like about it? –What are some things you don’t like about it?

What is an Operating System? Applications System Programs Hardware Physical Devices Microprogramming Machine Language Operating System CompilersEditorsShell Bank ProgramReservationGame

What is an Operating System? An Extended Machine (Top-down) –Transforming - new resource + ex: WinXP device manager A Resource Manager (Bottom-up) –Multiplexing - illusion of several resources + ex: browse the web AND read –Scheduling - deciding who gets what when + ex: compile fast OR edit fast Why have an OS? –Convenient and Efficient + Programming hardware difficult + Idle hardware “wasteful”

Topics What is an OS?(done) OS History(next) OS Concepts OS Structures

OS History Helps understand key requirements –Not one brilliant design + (despite what Gates or Torvalds might say) –Fixed previous problems, added new ones –Tradeoffs Closely tied to: –Hardware history –User history

Hardware History Comments? Change!

OS History Supplement to book My version is a brief narrative

Hardware Very Expensive Humans Cheap Single program execution (no OS) Hardwire “programming” Programming slow, not “offline”! –Punch cards

Hardware Very Expensive Humans Cheap Punch cards Fortran or assembler Waste computer time walking! –Batch programs on tape

Hardware Very Expensive Humans Cheap Programs read in from tape Two applications: –Scientific –Data processing CPU idle during I/O! –Multiprogramming with partitions –Spooling as jobs finished

Hardware is Cheap Humans Expensive Turn around time 1/2 day Programmer time wasted! “Sigh. In the good old days….” –Time-sharing –Multics (sorta) –New problems + response time + thrashing + file-systems

Hardware Very Cheap Humans Very Expensive Personal computers –Network operating systems –Distributed operating systems OSes today –size + small == 1 million + large == 10 million –need to evolve quickly + hardware upgrades, new user services, bug fixes –efficient and/or modular kernels

Windows History 1988, v1 –split from joint work with IBM OS/2 –Win32 API 1990, v3.1 –Server and Workstation versions 1997, v4 –Win95 interface –Graphics to kernel –More NT licenses sold than all Unix combined

Windows History 2000 v5, called “Windows 2000” –Micro-kernel –Multi-user (with terminal services) Four versions (all use same core code) –Professional + desktop –Server and Advanced Server + Client-server application servers –Datacenter Server + Up to 32 processors, 64 GB RAM

Windows Today Microsoft has 80% to 90% of OS market –mostly PC’s (although desktop PCs quite powerful!) Aiming at robust, server market –network, web and database Platforms –Intel 386+ only Lines of code ( –WinNT 4 million –Win million –WinXP 40 million

Linux History Open Source –Release Early, Release Often, Delegate –“The Cathedral or the Bazaar” Bday 1991, Linus Torvalds, processor –v.01, limited devices, no networking, –with proper Unix process support! 1994, v1.0 –networking (Internet) –enhanced file system (over Minix) –many devices, dynamic kernel modules

Linux History Development convention –Odd numbered minor versions “development” –Even numbered minor versions “stable” 1995, v1.2 –more hardware –8086 mode (DOS emulation) included –Sparc, Alpha, MIPS support started 1996, v2.0 –multiple architectures, multiple processors –threads, memory management ….

Linux Today v2.6 About 6 million lines of code –(Sun Solaris, Unix-like, about the same) Was estimated growth 25%/year through 2003 –all others, 10% combined Not clear if true –(see General shift from Win2k to WinXP –Microsoft still around 90%

Outline Operating System Concepts (Ch 3)  –Processes –Memory management –Input/Output –Files –System Calls –Shells Operating System Structures

The Process Program in execution Running -> Suspended -> Running Example: the Shell Process “Tree” Signals UID (GID) (Two weeks) login csh gccemacs preln

Memory Management One chunk of physical memory Needs to be shared with all processes –multiprocessing 32 bit architecture, 2 32 bytes  4GB! –virtual memory (Two weeks) process 2 process 3 process 8 Process 9 ?

Input/Output OS manage resources, including other devices Significant fraction of code –Up to 90% Want to be simple to use (1 day) CPUMemory Disk Controller Printer Controller System bus The quick brown fox jumped over the lazy dogs. The quick brown fox...

Files Store data on disk Directory “Tree” Working directory Protection bits –9 in Unix: rwx bits, ex: rwxr-x--x Abstraction of I/O device –terminal, printer, network, modem Pipe (1 day, 1 week in cs4513) root bobsue wwwfun 3013

System Calls Way processes communicate with OS example: write(file, string, size) OS specific! POSIX (1980s) –Portable Operating System (unIX-ish) (Most of the projects use them) (One of the projects will add system calls)

Shells User’s interface to OS Simple commands “ cd ”, “ cat ”, “ top ” Modifiers ‘&’, ‘|’, ‘>‘ (Hey, do some process and shell examples!)

Outline Operating System Structure (Ch )  –Simple Systems –Virtual Machines –Micro Kernels

Simple Systems Started small and grew, no hardware support MS-DOS Protection! Application Resident system program Device drivers ROM BIOS device drivers

Simple Systems Unix (see /vmunix ) “The Big Mess” Some move towards a more modular kernel Applications Signals, File Sys, Swapping, Scheduling...TerminalDeviceMemory

Virtual Machines Complete protection OS development, emulation Performance! (Exokernel says can have subset of kernel, 1.7.4) Process Operating Sys Virtual Machine Hardware Operating Sys Process IBM VM/370  VMWare

Virtual Machines Java Virtual Machine Java OS Java VM Operating System Hardware Process Java program Platform independence!

Micro Kernel Client-Server Good performance Adaptable to distributed OS Robust Careful about mechanism! Mach User ProcessFile ServerMem Server Kernel

WinXP Structure Scheduler Memory Manager IPC Security File System Kernel Space Executive / Privileged Space User Level Space I/O Netscape Win32 Subsystem “Micro Kernel?” (Fig 22.1, Page 795) Graphics Window Manager Hardware Abstraction Layer

Linux Structure “Simple” system Applications, User Space KernelTerminalDeviceMemorypppcdrom Loadable Modules –done after “boot” –allow 3rd party vendors –easier for development System Libraries