Download presentation
Presentation is loading. Please wait.
Published byGiles Carter Modified over 9 years ago
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
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.