Presentation is loading. Please wait.

Presentation is loading. Please wait.

WEEK 1 COURSE INTRODUCTION INTRODUCTION TO OPERATING SYSTEMS OPERATING SYSTEM STRUCTURES Operating Systems CS3013 / CS502.

Similar presentations


Presentation on theme: "WEEK 1 COURSE INTRODUCTION INTRODUCTION TO OPERATING SYSTEMS OPERATING SYSTEM STRUCTURES Operating Systems CS3013 / CS502."— Presentation transcript:

1 WEEK 1 COURSE INTRODUCTION INTRODUCTION TO OPERATING SYSTEMS OPERATING SYSTEM STRUCTURES Operating Systems CS3013 / CS502

2 Agenda Course Introduction Introduction to Operating System Operating System Concepts Operating System Structures 2

3 Course Information Website  http://nile.wpi.edu/~clee01/teaching/cs3013/ http://nile.wpi.edu/~clee01/teaching/cs3013/ 6:00-9:50pm class on Mondays  7 weeks for CS3013, 10 weeks for CS502 Office Hours  TBD Textbook  Silberschatz, Galvin, and Gagne, Operating Systems Concepts, Seventh Edition, John Wiley and Sons, 2005. 3

4 Why an Operating Systems Course? 4 WPI CS requirement  “Core area” for both undergrads and grads Understanding of inner workings of “systems” Combines CS concepts  Algorithms, languages, data structures, hardware  System design with tradeoffs Better use of the computer

5 Prerequisites 5 C/C++ Programming Data Structures Computer Organization Unix/Linux user experience and access

6 Homework, Projects and Exams 6 Homework  Designed to get you ready for exam  Review ideas taught in class Projects  2 for CS3013 and 3 for CS502  Implementation in Unix environment Exams  2 for CS3013 and 3 for CS502  Closed book, Closed notes

7 Grading 7  Homework – 10%  Projects – 30%  Exams – 60% WPI Academic Honesty Policy  http://www.wpi.edu/Pubs/Policies/Honesty/policy.html http://www.wpi.edu/Pubs/Policies/Honesty/policy.html Late Policy – 25% per day  Contact Professor for extenuating circumstances

8 8 Questions?

9 Professor Background Choong-Soo Lee  PhD Candidate in Computer Science Department Interest in Systems Area  Operating Systems  Network Performance  Multimedia Performance 9

10 Student Background Basic Information  Name  Class (freshman, sophomore, …)  Major (CS, EE, …) C Experience CS Courses Taken Linux Experience Operating System(s) 10

11 Agenda Course Introduction Introduction to Operating System Operating System Concepts Operating System Structures 11

12 Objectives 12 Identify operating systems Explain the major OS issues Describe the history of OS Explain OS concepts Identify services provided by OS Describe different types of OS structures

13 Class Discussion 13 What operating systems do you know? What is an operating system? What do you like/dislike about OS(es) you know?

14 Components of a Computer System 14 Program Interface User Programs OS Interface Operating System Humans Hardware Interface/ Privileged Instructions CPU/Memory/Disk/etc

15 Functions of Operating System 15 Beautification Principle  Hide the details of the physical machine and provide a more pleasant virtual machine Resource Principle  Allocate resources to processes

16 Major OS Issues 16 Structure Sharing Naming Security Protection Performance Reliability Extensibility Concurrency Scale Persistence Communication Distribution Accounting

17 OS History 17 Single program execution  No OS  Assembly or lower level language Batch (Spooling)  Introduced notion of interrupts Multiprogramming  Illusion of executing several programs simultaneously  Introduced notion of process Distributed and Network Operating Systems Specialized Operating Systems

18 OS History - Unix and Linux 18 Unix  Descendant of MULTICS  First “C” version in 1973  Posix (1981) defines standard Unix system calls Linux  Open Source  1991, v.01 by Linus Torvalds for 80386 processor  Proper Unix process support

19 OS History – Linux 19 1994, v1.0  Enhanced file system  More devices, dynamic kernel modules 1995, v1.2  More hardware support 1996, v2.0  Multiple architectures, multiple processors  Threads, memory management Today, v2.6  0.64% by Net Applications  5.2 million source lines of code (according to wikipedia)

20 OS History - Windows 20 1988, v1  Win32 API 1990, v3.1  Server and Workstation versions 1996, v4 (Windows 95)  Win95 Interface  Graphics to Kernel

21 OS History - Windows 21 2000, v5 (Windows 2000)  Micro-kernel  Multi-user (with terminal services)  4 versions 2005, Windows XP  4 versions: Home, Professional, Media Center, Tablet 2007, Windows Vista  5 versions: Ultimate, Home Premium, Home Basic, Business, Enterprise 2009?, Windows 7

22 OS History - Windows 22 Today  91.65% by Net Applications  Aiming at robust, server market  Intel x86 only  Lines of code (according to wikipedia)  Windows NT 4.0 : 11-12 million  Windows 2000 : more than 29 million  Windows XP : 40 million  Windows Vista Beta 2 : 50 million

23 Objectives 23 Identify operating systems Explain the major OS issues Describe the history of OS Explain OS concepts Identify services provided by OS Describe different types of OS structures

24 Agenda Course Introduction Introduction to Operating System Operating System Concepts Operating System Structures 24

25 Operating System Concepts 25 Processes Memory Management Input/Output Files System Calls

26 Process 26 Program vs. Process  Program : a set of data and code that manipulate it  Process : a program in execution States of a Process  Running, Waiting, Ready, etc. Process “Tree”

27 Memory Management 27 One chunk of physical memory Shared by all processes 32 bit architecture  2 32 bytes  4GB Process 1 Process 2 Process 3 Process 4 ???

28 Input/Output 28 OS manages resources including other devices Significant fraction of code Want to be simple to use System Bus CPU Disk Controller Printer Controller Memory

29 Files 29 Store data on disk Directory “Tree” Working Directory Protection bits Abstraction of I/O device Pipe root cs1101 classesjobs microsoftcisco

30 System Calls 30 Way processes communicate with OS OS specific POSIX (1980s)  Portable Operating System Interface

31 Shells 31 User’s interface to OS Simple commands  “cd”, “cat”, “top” Modifiers  ‘&’, ‘|’, ‘>’

32 Agenda Course Introduction Introduction to Operating System Operating System Concepts Operating System Structures 32

33 Services Provided by OS 33 User Interface Program Execution I/O Operations File-system Manipulation Communications Error Detection Resource Allocation Accounting Protection and Security

34 User Interface 34 Command Interpreter  Included in the kernel, or  External Program  Shells bash, csh, tcsh, etc.  Provides some basic functionality

35 User Interface 35 Graphical User Interface  1970s, Xerox PARC Research Facility  1980s, Popular by Apple Macintosh  Windows 1.0  Unix Desktop Environments

36 User Interface 36 Graphical User Interface

37 Simple Systems 37 Started small and grew, no hardware support Example  MS-DOS, Embedded Systems MS-DOS Drivers ROM - BIOS Device Drivers Resident System Programming Application Programming

38 Simple Systems 38 Example  Linux  With Modules Applications, User Space KernelTerminalDeviceMemorypppcdromSystem Libraries

39 Abstract layers Can only talk to lower layers Layer N User interface...... Layer 1 Layered Systems 39 Layer 0 Hardware

40 Microkernel 40 Minimal Functions in Microkernel Provide communication facility between applications and services Example  Mach  Tru64 Unix, QNX Kernel User ProcessFile ServerMemory Server

41 Virtual Machine 41 Abstract the hardware of a single computer into several different execution environments Example:  IBM VM/370  VMWare Hardware Virtual Machine Operating System Process

42 Virtual Machine 42 Example  Java Virtual Machine Hardware Operating System Java VMProcess Java OS Java Program

43 Objectives 43 Identify operating systems Explain the major OS issues Describe the history of OS Explain OS concepts Identify services provided by OS Describe different types of OS structures


Download ppt "WEEK 1 COURSE INTRODUCTION INTRODUCTION TO OPERATING SYSTEMS OPERATING SYSTEM STRUCTURES Operating Systems CS3013 / CS502."

Similar presentations


Ads by Google