Operating System I Introduction.

Slides:



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

CS 345 Computer System Overview
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 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.
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.
Common System Components
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.
Operating System Introduction (Ch , )
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
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.
OS Winter’03 Introduction (cont.) -History Operating Systems.
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.
Week 6 Operating Systems.
Chapter 8 Windows Outline Programming Windows 2000 System structure Processes and threads in Windows 2000 Memory management The Windows 2000 file.
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.
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.
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,
1 Operating System Overview. 2 Today’s Objectives Explain the main purpose of operating systems and describe milestones of OS evolution Explain fundamental.
Chapter 1 Introduction 1.1 What is an operating system
MODERN OPERATING SYSTEMS Chapter 1 Introduction Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
Windows XP. History Windows XP is based on the NT kernel developed in 1988 Windows XP is based on the NT kernel developed in 1988 XP was originally sold.
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.
1 Operating Systems: Principles and Practice Cpr E 308.
OS, , Part I Operating - System Structures Department of Computer Engineering, PSUWannarat Suntiamorntut.
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.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
UNIX & Windows NT Name: Jing Bai ID: Date:8/28/00.
Introduction Why are virtual machines interesting?
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.
L ECTURE -6 Topics: Introduction to Operating system. Functions of an Operating system. Classification of Operating systems.
Operating Systems (Credit to: Rick Graziani of Cabrillo College)
CSCI/CMPE 4334 Operating Systems Review: Exam 1 1.
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
Unit OS2: Operating System Principles
Operating Systems Georgios Varsamopoulos
Chapter 3: Windows7 Part 1.
Operating Systems Lecture 4.
Outline Chapter 2 (cont) OS Design OS structure
Outline Operating System Organization Operating System Examples
System calls….. C-program->POSIX call
Lecture Topics: 11/1 Hand back midterms
Presentation transcript:

Operating System I Introduction

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

Let’s Get Started! What are some OSes you know? 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 Bank Program Reservation Game Compilers Editors Shell System Programs Operating System Machine Language Microprogramming Hardware Physical Devices

What is an Operating System? An Extended Machine (Top-down) Transforming - new resource ex: Win98 device manager A Resource Manager (Bottom-up) Multiplexing - illusion of several resources ex: browse the web AND read email 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”

OS History Helps understand key requirements Closely tied to: 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!

Where are we? Ch 1-3 by Monday Timeline on Web page Reading details on course Web page Ch 1, brief, alternate viewpoint Ch 2, computer architecture review Ch 3, today and Monday Timeline on Web page Proj 0 in by Monday Proj 1 out Monday HW 1 out Tuesday

Questions What are two functions of an OS? What “layer” is above the OS? What “layer” is below the OS?

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 small == 1000K (15 pages, 5 programmer years) large == 10,000K (150 pages, 500 programmer years) (longer than a semester :-) ) need to evolve quickly hardware upgrades, new user services, bug fixes efficient and/or modular kernels

Windows NT History 1988, v1 1990, v3.1 1997(?), v4 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 NT Today Microsoft has 80% to 90% of OS market mostly PC’s 333 MHz Intel Pentium NT aiming at robust, server market network, web and database Platforms Intel 386+ - Alpha MIPS R4000 - PowerPC (Win2000 merges Win98 and WinNT)

Linux History Open Source Bday 1991, Linus Torvalds, 80386 processor Release Early, Release Often, Delegate “The Cathedral or the Baazar” Bday 1991, Linus Torvalds, 80386 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 1995, v1.2 1996, v2.0 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.2 1,000,000 lines of code 7-10 million users Estimated growth 25%/year through 2003 all others, 10% combined

Questions When is it appropriate for OS to “waste” resources? How might the growth in networks influence OS design?

Operating System Concepts Processes Files System Calls Shells

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

Files Store data on disk Directory “Tree” Working directory root 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-2 Days) bob sue 3013 www fun

System Calls Way processes communicate with OS example: OS specific! write(file, string, size) OS specific! POSIX (1980s) Portable Operating System (unIX-ish) (Most of the projects)

Shells (Project 0 uses shell) User’s interface to OS Simple commands “cd”, “cat”, “top” Modifiers ‘&’, ‘|’, ‘>‘ (Project 1 is to write a shell)

Operating System Structure Simple Systems Virtual Machines Micro Kernels

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

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

Virtual Machines IBM VM/370 Complete protection Process Process Process Process Process Process Operating Sys Operating Sys Operating Sys Virtual Machine Hardware Complete protection OS development, emulation Performance!

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

Micro Kernel Mach Client-Server Good performance User Process File Server Mem Server Kernel Client-Server Good performance Adaptable to distributed OS Robust Careful about mechanism!

Review OS History OS Concepts OS Structure user change and hardware change OS Concepts processes, files, system call, shell OS Structure

True or False Unix is a “simple structure” OS Micro Kernels are faster than other OSes Virtual Machines are faster than other OSes

Questions Name 3 operating system structures Give one advantage of each Give one disadvantage of each

Executive / Privileged Space WinNT Structure User Level Space Netscape File System Win32 Subsystem Executive / Privileged Space Security I/O Kernel Space Scheduler Memory Manager “Pseudo- Micro Kernel” IPC

Linux Structure “Simple” system Loadable Modules done after “boot” Applications, User Space System Libraries Kernel ppp cdrom Terminal Device Memory Loadable Modules done after “boot” allow 3rd party vendors easier for development