CS-502 Fall 2006Introduction1 CS-502 Operating Systems Hugh C. Lauer Adjunct Professor.

Slides:



Advertisements
Similar presentations
Operating System.
Advertisements

IntroductionCS-4513, D-Term Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
Introduction CSCI 444/544 Operating Systems Fall 2008.
Introduction to Operating Systems CS-2301 B-term Introduction to Operating Systems CS-2301, System Programming for Non-majors (Slides include materials.
CMSC 421: Principles of Operating Systems Section 0202 Instructor: Dipanjan Chakraborty Office: ITE 374
CMPT 300: Operating Systems I Dr. Mohamed Hefeeda
Chapter 1: Introduction
Operating Systems CS451 Brian Bershad
CS-3013 & CS-502, Summer 2006 Virtual Machine Systems1 CS-502 Operating Systems Slides excerpted from Silbershatz, Ch. 2.
IntroductionCS-4513 D-term Introduction CS-4513 Distributed Computing Systems (Slides include materials from Operating System Concepts, 7 th ed.,
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Wednesday, June 07, 2006 “Unix is user friendly … it’s just picky about it’s friends”. - Anonymous.
IntroductionCS-3013 A-term CS-3013 Operating Systems A-term 2008 (Slides include materials from Modern Operating Systems, 3 rd ed., by Andrew Tanenbaum.
Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating.
Course Information 1 CS502 Spring 2006 Operating Systems CS502 Spring 2006 Mondays – 6PM.
IntroductionCS-3013 A-term CS-3013 Operating Systems A-term 2009 (Slides include materials from Modern Operating Systems, 3 rd ed., by Andrew Tanenbaum.
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
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.
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.
Operating Systems.
The University of Akron Summit College Business Technology Department Computer Information Systems 2440: 145 Operating Systems Introduction to UNIX/Linux.
Operating System.
Types of Operating System
Lecture 14: Operating Systems Intro to IT COSC1078 Introduction to Information Technology Lecture 14 Operating Systems James Harland
CIS-410: Operating Systems Spring Organizational Details Class Meeting: 7:00-9:45pm, Monday, Room 252N Instructor: Dr. Igor Aizenberg Office: Aikin.
Operating systems CHAPTER 7.
CT 1503 Network Operating Systems Instructor: Dr. Najla Al-Nabhan 2014.
Module 2 Part I Introduction To Windows Operating Systems Intro & History Introduction To Windows Operating Systems Intro & History.
1 Lecture 2 Introduction, OS History n objective of an operating system n OS history u no OS u batch system u multiprogramming u multitasking.
1 5/25/2016 操作系统课件 教材: 《操作系统概念(第六版 影印版)》 【原书名】 Operating System Concepts(Sixth Edition) [ 原书信息 ] Operating System Concepts(Sixth Edition) [ 原书信息 ] 【原出版社】
Thanks to Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction n What is an Operating System? n Mainframe Systems.
Operating Systems CS3502 Fall 2014 Dr. Jose M. Garrido
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 1 Introduction Read:
IntroductionCS-502 Fall CS-502 Operating Systems Fall 2007 Hugh C. Lauer Adjunct Professor.
Module 1 Introduction to UNIX/Linux
WEEK 1 COURSE INTRODUCTION INTRODUCTION TO OPERATING SYSTEMS OPERATING SYSTEM STRUCTURES Operating Systems CS3013 / CS502.
CS 3013 & CS 502 Summer 2006 Course Introduction1 CS3013 & CS502 – Operating Systems Hugh C. Lauer, Ph.D. Adjunct Professor.
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.
Operating Systems Sara Mullan Johns Hopkins University Fall 2010
CS 444 Introduction to Operating Systems
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
CT 1503 Network Operating Systems Instructor: Dr. Najla Al-Nabhan 2014.
IntroductionCS-502 (EMC) Fall CS-502 Operating Systems CS-502, Operating Systems Fall 2009 (EMC) (Slides include materials from Modern Operating.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
Operating System Introduction. Topics What is an OS? OS History OS Concepts OS Structures.
1 Operating Systems: Principles and Practice Cpr E 308.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
IntroductionCS-3013 C-term CS-3013, Operating Systems C-term 2008 Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System.
Computer Basics. Samples of Operating Systems IBSYS (IBM 7090) OS/360 (IBM 360) TSS/360 (360 mod 67) Michigan Terminal System CP/CMS & VM 370 MULTICS.
Lecture 1: Network Operating Systems (NOS) An Introduction.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Operating Systems.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
Computer Operating Systems And Software applications.
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real.
Chapter 2 Operating Systems
2. OPERATING SYSTEM 2.1 Operating System Function
Introduction to Operating System (OS)
CS-3013 and CS-502 Operating Systems
Operating Systems CSE451 Winter 2000
CSE 451: Operating Systems Winter 2003 Lecture 1 Course Introduction
CS-3013 and CS-502 Operating Systems
Operating Systems CSE451 Spring 2000
Operating Systems CS451 Fall 1998
CS-2303 Introduction (continued)
CSE 451: Operating Systems Autumn 2003 Lecture 1 Course Introduction
Lecture Topics: 11/1 Hand back midterms
Presentation transcript:

CS-502 Fall 2006Introduction1 CS-502 Operating Systems Hugh C. Lauer Adjunct Professor

CS-502 Fall 2006Introduction2 Why an Operating Systems course? WPI CS requirements – “core area” for grads Understanding of inner workings of “systems” Exposure to diversity of operating systems OS-related assignments you may see in real life:– “Design and develop an operating system to do THIS” (not probable) “Select an operating system for a product that will do THAT” (probable) “Design and develop this application on THAT system to exploit its special features” (likely)

CS-502 Fall 2006Introduction3 Textbook and Web Text Book: –(required) Operating Systems Concepts, 7 th edition, by Silberschatz, Galvin, and Gagne, John Wiley and Sons, 2005 –(very useful) Linux Kernel Design, 2 nd edition, by Robert Love, Novell Press, 2005 –(supplemental) Modern Operating Systems, 2 nd edition, by Andrew S. Tanenbaum, Prentice Hall, 2001 Course Information: –

CS-502 Fall 2006Introduction4 Prerequisites Prerequisites: –C/C++ programming –Data structures –Unix/Linux user experience and access –Computer Organization Reading assignment –Silbershatz Chapter 1 and §2.8

CS-502 Fall 2006Introduction5 Schedule & Logistics Schedule –Fuller Labs – Room 320 –6:00 PM to 8:50 PM –Approx two 5 minute breaks around 7PM, 8PM –14 classes –No break for Thanksgiving! –Term Project & Final Exam – Monday, December 11, Programming Projects –2-3 weeks each Mobile Phones, pagers and other similar devices OFF during class If you need to eat during class –Please be QUIET –Avoid spicy or savory aromas (pot stickers, curries, etc.) Office Hours –by appointment –will try to be in Adjunct Office, Fuller 239, by 4 PM on Monday afternoons Contact cs.wpi.edu –Adjunct office phone: (508) (shared)

CS-502 Fall 2006Introduction6 Grading –Exams & quizzes – 35% –Programming Projects (4-5) – 35% –Term Project – 15% –Class participation and written homework – 15% Unless otherwise noted, assignments are to be completed individually, not groups Late Policy – 10%/day –But contact Professor for extenuating circumstances WPI Academic Honesty policy

CS-502 Fall 2006Introduction7 Ground Rule There are no “stupid” questions. It is a waste of your time and the class’s time to proceed when you don’t understand the basic terms. If you don’t understand it, someone else probably doesn’t it, either.

CS-502 Fall 2006Introduction8 Programming Projects This term we embark on an experiment in CS-502 projects Each student will get a “virtual machine” What is a virtual machine? ( §2.8 in Silbershatz) Build, modify, install Linux kernel on your virtual machine Debug, analyze, crash Restore, try again

CS-502 Fall 2006Introduction9 Programming Projects (continued) Similar to Fossil Lab Shares VMware server resource in CS Dept However, Does not require physical presence on campus Does require you to install VMware client application on your home or office PC No Macintosh version of client is available

CS-502 Fall 2006Introduction10 Action items Sign up for CS Department logins – See instructions for setting up your virtual machine –See course web page for links to instructions. (Alternative) Acquire and install VMware Workstation at home or office –See course web page for links to instructions.

CS-502 Fall 2006Introduction11 Introductions Who are you? –Name, year, degree, major –Full time student? Work experience in computing, etc.? Employer? C & C++ experience –Other programming experience Previous degree and where Why CS502 – Operating Systems? Anything else relevant?

CS-502 Fall 2006Introduction12 Instructor — Hugh C. Lauer Adjunct Professor Ph. D. Carnegie-Mellon –Dissertation “Correctness in Operating Systems” Lecturer: University of Newcastle upon Tyne, UK Approximately 30 years in industry in USA Research topics –Operating Systems –Proofs of Correctness –Computer Architecture –Networks and Distributed Computing –Real-time networking –3D Volume Rendering –Surgical Simulation –…

CS-502 Fall 2006Introduction13 Systems Experience University of Newcastle Systems Development Corporation Xerox Corporation (Palo Alto) Software Arts, Inc. Apollo Computer Eastman Kodak Company Mitsubishi Electric Research Labs (MERL) Real-Time Visualization Founded and spun out from MERL Acquired by TeraRecon, Inc. SensAble Technologies, Inc.

CS-502 Fall 2006Introduction14 VolumePro™ Interactive volume rendering of 3D data such as MRI scans CT scans Seismic scans Two generations of ASICs, boards, software VolumePro 500 – 1999 VolumePro 1000 – 2001 CTO, Chief Architect of VolumePro million gate, high-performance ASIC 10 9 Phong-illuminated samples per second

CS-502 Fall 2006Introduction15 Sample images from VolumePro

CS-502 Fall 2006Introduction16 Operating Systems I have known IBSYS (IBM 7090) OS/360 (IBM 360) TSS/360 (360 mod 67) Michigan Terminal System (MTS) CP/CMS & VM 370 MULTICS (GE 645) Alto (Xerox PARC) Pilot (Xerox STAR) CP/M MACH Apollo DOMAIN Unix (System V & BSD) Apple Mac (v.1 – v.9) MS-DOS Windows NT, 2000, XP various embedded systems …

CS-502 Fall 2006Introduction17 Class Discussion What is an Operating System?

CS-502 Fall 2006Introduction18 What is an Operating System? Characteristics –Large, complex set of programs –Long-lived, evolutionary –Worked on by many people over many years Functions –Creates abstractions –Multiplexes concurrent activities –Manages resources Also –Mediates access to hardware devices –Provides a variety of services to users and applications

CS-502 Fall 2006Introduction19 What is an operating system? (cont’d) Abstractions:– –Implements processes & threads –Implements virtual memory & manages memory –Provides interprocess communication (IPC) –Implements file system. Manages persistent storage of information Controls I/O Implements networking & communications Definition — Same as judicial definition of pornography “I cannot define it, but I sure can recognize one when I see it!”

CS-502 Fall 2006Introduction20 What is an Operating System Hardware Interfaces – Registers, etc. OS Kernel Prog. ToolsServicesUI/Shell XYZ OfficeMedia PlayerBusiness Appl. CPUI/O Controllers Traditional OS Practical OS

CS-502 Fall 2006Introduction21 Major OS Issues structure: how is the OS organized? sharing: how are resources shared across users? naming: how are resources named (by users or programs)? security: how is the integrity of the OS and its resources ensured? protection: how is one user/program protected from another? performance: how do we make it all go fast? reliability: what happens if something goes wrong – hardware or software extensibility: can we add new features? communication: how do programs exchange information concurrency: how are parallel activities created and controlled? scale: what happens as demands or resources increase? persistence: how do you make data last longer than program executions? distribution: how do multiple computers interact with each other? accounting: how do we keep track of resource usage, and charge for it?

CS-502 Fall 2006Introduction22 Operating Systems Large, complex programs Typically –Long-lived –Frequently extended and updated –Worked on by a number of developers –Used and, maybe abused by a variety of users with varying expertise and expectations Essential to create an acceptable computing environment to create and execute other programs that achieve business or personal goals

CS-502 Fall 2006Introduction23 Kinds of operating systems Stand-alone machines – no OS Simple batch monitors Concurrent I/O and programs Time-sharing, multiple users, interactive Servers, non-stop systems, transaction processing PC’s, workstations Multiple processor systems Real-time systems Embedded systems

CS-502 Fall 2006Introduction24 Kinds of operating systems (1) Stand-alone machines – no OS Manually scheduled “jobs,” reset between jobs Early business computers –E.g., IBM 1401/1460 Early mini-computers –E.g., PDP1, PDP5, PDP8, etc. Simple batch monitors Simple “monitor routine” switches between jobs Input loaded onto tape off-line Output to tape is punched and/or printed off-line Typical university computing centers –IBM 7090, Univac, etc.

CS-502 Fall 2006Introduction25 Kinds of operating systems (2) Concurrent I/O and programs SPOOL-ing (Simultaneous Peripheral Operation On Line) –Allows direct input & output Multiple programs resident in memory at once –Keeps processor busy On-line file storage Some support for terminals, telecommunications Early business computers –E.g., IBM 7070, IBM 360 & 370 Scientific computing –E.g., Control Data 6600, IBM 360/91

CS-502 Fall 2006Introduction26 Kinds of operating systems (3) Time-sharing, multiple users, interactive Many concurrent users “logged on” Interactive editing and computing Self submission of batch jobs Protection among users, protection among jobs Fair allocation of resources All university computing centers since about 1970 –E.g., MULTICS, IBM 360/67, DEC PDP-10, PDP-20 Advanced minicomputers –DEC, Data General, Prime, etc. –Unix

CS-502 Fall 2006Introduction27 Kinds of operating systems (4) Servers, non-stop systems, transaction processing Banking, airline reservation Online databases Many very short “transactions” Tandem, Stratus, Sequoia Unix, Linux, Solaris, HP-UX Windows Server 2000, 2003 Oracle, SAP (?)

CS-502 Fall 2006Introduction28 Kinds of operating systems (5) PC’s, workstations CP/M, DOS, MS-DOS Apollo Domain Unix, Solaris, HP-UX Mac OS Windows 95, 98, Me Windows 2000, XP Linux Multiple processor systems Beowulf clusters Unix, Solaris, HP-UX, Linux

CS-502 Fall 2006Introduction29 Kinds of operating systems (6) Real-time systems SAGE (North American air defense) Process control (steel mills, refineries, etc.) Large and small; computers you never heard of VxWorks, etc. Embedded systems Auto ignition Cell phone, PDA Appliances …

CS-502 Fall 2006Introduction30 OS History – Unix & Linux Unix –Descendant of Multics –First “C” version in 1973 (DEC PDP-11) Timesharing for < 10 users on 32K Memory Many Unix versions at BTL – different goals Source code made available to Universities – BSD –Posix (start 1981) defines standard Unix system calls –AT&T licensing!

CS-502 Fall 2006Introduction31 OS History - Linux Open Source – Linux.org First Version 1991, Linus Torvalds, processor –v.01, limited devices, no networking, –with proper Unix process support! 1994, v1.0 –networking (Internet) –enhanced file system –many devices, dynamic kernel modules

CS-502 Fall 2006Introduction32 OS History - Linux 1996, v2.0 –multiple architectures, multiple processors –threads, memory management …. Gnome UI – introduced in 1999 Recent –V million lines of code –7-10 million users –Growth by 25%/year through 2003 –Growing use in business server market Note - Development convention –Odd numbered minor versions “development” –Even numbered minor versions “stable”

CS-502 Fall 2006Introduction33 OS History – Windows NT/2000/XP Key designer – David Cutler also designed VAX/VMS 1988, v1 - Win32 API – “microkernel” 1990, v3.1- Server and Workstation versions 1996, v4 –Win95 interface –Graphics to kernel –More NT licenses sold than all Unix combined –Microkernel de-emphasized

CS-502 Fall 2006Introduction34 OS History – Windows NT/2000/XP Windows 2000 – NT5.0 –Multi-user (with terminal services) –Professional - desktop –Server and Advanced Server - Client-server application servers –Datacenter Server - Up to 32 processors, 64 GB RAM Windows XP –Windows 2000 code base –Revised UI –EOL for DOS/Windows line

CS-502 Fall 2006Introduction35 OS History – Windows NT/2000/XP Microsoft has 80% to 90% of OS market Wintel – Windows + X86 WinNT 4.x is 12 million lines of code Win2000 is 18 million lines of code

CS-502 Fall 2006Introduction36 OS and Hardware OS mediates programs’ access to hardware –Computation – CPU –Storage – volatile (memory) and persistent (disk) –Networks – NIC, protocols –I/O devices – sound cards, keyboards, displays OS creates uniform abstractions –Processes –Files –Sockets –Streams

CS-502 Fall 2006Introduction37 Break (next topic)