CS161: Operating Systems
|
|
|
- Lesley Fitzgerald
- 9 years ago
- Views:
Transcription
1 CS161: Operating Systems Matt Welsh Lecture 2: OS Structure and System Calls February 6,
2 Lecture Overview Protection Boundaries and Privilege Levels What makes the kernel different from regular user programs System calls and hardware interrupts How user applications and the kernel interact with each other Operating System Structure What are the major functional components of an OS? How are those components interrelated? What are the interfaces to those components? 2
3 Operating System Overview Protection boundary Kernel Memory management Process management Accounting Device drivers Filesystem TCP/IP stack Disk I/O CPU support Hardware/software interface Gnarly world of hardware 3
4 Operating System basics The OS kernel is just a bunch of code that sits around in memory, waiting to be executed Memory Emacs Firefox OS Kernel (device drivers, file systems, virtual memory, etc.) xmms sshd 4
5 Operating System basics The OS kernel is just a bunch of code that sits around in memory, waiting to be executed Memory Emacs Firefox System call (open network socket) xmms OS Kernel (device drivers, file systems, virtual memory, etc.) Interrupt (disk block read) sshd OS is triggered in two ways: system calls and hardware interrupts System call: Direct call from a user program For example, open() to open a file, or exec() to run a new program Hardware interrupt: Trigger from some hardware device For example, when a disk block has been read or written How else might the kernel get control??? 5
6 Interrupts a primer An interrupt is a signal that causes the CPU to jump to a pre-defined instruction called the interrupt handler Interrupt can be caused by hardware or software Hardware interrupt examples Timer interrupt (periodic tick from a programmable timer) Device interrupts e.g., Disk will interrupt the CPU when an I/O operation has completed Software interrupt examples (also called exceptions) Division by zero error Access to a bad memory address Intentional software interrupt e.g., x86 INT instruction Can be used to trap from user program into the OS kernel! Why might this be useful? 6
7 Interrupt handler example 1) OS fills in interrupt handler table (usually at boot time) Interrupt handler table Interrupt handler for interrupt 4 2) Interrupt occurs e.g., hardware signal Interrupt handler for interrupt 5!!! 3) CPU state saved to stack 7
8 Interrupt handler example 1) OS fills in interrupt handler table (usually at boot time) Interrupt handler table Interrupt handler for interrupt 4 2) Interrupt occurs e.g., hardware signal Interrupt handler for interrupt 5!!! 3) CPU state saved to stack 4) CPU consults interrupt table and invokes appropriate handler 8
9 Protection A major job of the OS is to enforce protection Prevent malicious or buggy programs from: Allocating too many resources (denial of service) Corrupting or overwriting shared resources (files, shared memory, etc.) Prevent different users, groups, etc. from: Accessing or modifying private state (files, shared memory, etc.) Killing each other's processes A lot of viruses, worms, etc. exploit security holes in the OS Overrunning a memory buffer in the kernel can give a non-root process root privileges Kernel code needs to be rock solid in order to be secure!!! How does the OS enforce protection boundaries? 9
10 User mode vs. kernel mode What makes the kernel different from user programs? Kernel can execute special privileged instructions Examples of privileged instructions: Access I/O devices Poll for IO, perform DMA, catch hardware interrupt Manipulate memory management Set up page tables, load/flush the TLB and CPU caches, etc. Configure various mode bits Interrupt priority level, software trap vectors, etc. Call halt instruction Put CPU into low-power or idle state until next interrupt These are enforced by the CPU hardware itself. CPU has at least two protection levels: Kernel mode and user mode CPU checks current protection level on each instruction What happens if user program tries to execute a privileged instruction? 10
11 Boundary Crossing Mozilla calls read() system call Trap to kernel mode Save application registers and state User mode Restore app registers Return CPU to user mode Kernel mode Kernel trap handler Lookup read() in system call table Invoke internal read() function Return to trap handler read() system call Perform internal read() 11
12 Protection Rings On most CPU designs, there are just two protection levels: Kernel mode and user mode Some CPUs, however, support multiple protection levels The Intel x86 family has four protection rings Ring 0 (innermost ring) has the OS kernel Ring 3 has application code Rings 1 and 2 may be used for less-privileged OS code e.g., Third-party drivers Ring 0 Ring 1 Ring 2 Ring 3 12
13 Intel x86 Protection Ring Rules Each memory segment has an associated privilege level, 0 through 3 The CPU has a Current Protection Level (CPL) Usually the privilege level of the segment where the program's instructions are being read from Program can read/write data in segments of lower privilege than CPL. Physical memory Ring 0 segment (kernel) e.g., Kernel can read/write user memory But, user cannot read/write kernel memory (Why?) X Ring 3 segment (app) 13
14 Intel x86 Protection Ring Rules Each memory segment has an associated privilege level, 0 through 3 The CPU has a Current Protection Level (CPL) Usually the privilege level of the segment where the program's instructions are being read from Program can read/write data in segments of lower privilege than CPL. e.g., Kernel can read/write user memory But, user cannot read/write kernel memory Physical memory Ring 0 segment (kernel) X X Program cannot (directly) call code in higher-privilege segments Why? Ring 3 segment (app) Program cannot (directly) call code in lower-privilege segments Why? 14
15 Intel x86 Protection Ring Rules A gate is a special memory address that opens a door from a low-privilege segment to a high-privilege one. When a low-privilege program calls a gate, it automatically raises its CPL to the higher level. When returning from a gate subroutine, CPL automatically dropped to original level. Gates allow high-privilege program to control the entry points into its code. For example, OS system calls can be implemented using gates. Gates do not allow higher-privileged code to call lower-privileged code. Why? Physical memory Ring 0 segment (kernel) System call Gate Ring 3 segment (app) 15
16 System Call Issues Kernel must verify the arguments that it is passed why? How does the application pass in data to the kernel? Example: write() passes in a pointer to a buffer of data to write to the file How does the OS return kernel state from a system call? Example: read() returns an int indicating the number of bytes read 16
17 Uniprogramming and Multiprogramming Uniprogramming Only one program can run at a given time on the system Like old batch systems, MS-DOS, etc. Multiprogramming (a.k.a. multitasking ) Multiple programs can run simultaneously Although only one program running at any given instant (Unless you have multiple CPUs!!!!) Tradeoffs Writing a uniprogramming OS is simpler Why? But, multitasking OSs use resources more efficiently Why? Note on terminology: Multitasking/multiprogramming refer to the number of programs running Multiprocessing refers to the number of CPUs in the system 17
18 Process Management An OS executes many kinds of applications Regular user programs Emacs, Mozilla, this OpenOffice program, etc... Administrative servers Crond: Runs jobs at pre-scheduled times Sshd: Manages incoming ssh connections Lpd: Queues up jobs for the printer Each of these activities is encapsulated in a process A process consists of three main parts: Processor state registers, program counter OS resources open files, network sockets, etc. Address space: The memory that a process accesses its code, variables, stack, etc. 18
19 Process Example A process is an instance of a program being executed Use ps to list processes on UNIX systems PID TTY STAT TIME COMMAND 842 tty1 S 0:00 bash 867 tty1 S 0:00 xinit 873 tty1 S 0:00 fvwm2 887 tty1 S 0:00 xload 888 tty1 S 0:02 /usr/local/j2sdk1.4.0/bin/java ApmView tty1 S 0:00 rxvt fn fixed cr red fg white bg # geometr 1883 pts/2 S 0:00 bash 1910 pts/0 S 0:00 /bin/sh /home/mdw/bin/ooffice arch.sxi 1911 pts/0 S 1:20 /usr/local/openoffice.org1.1.0/program/soffice.bin ar 1937 tty1 S 0:00 /bin/sh /home/mdw/bin/set wlan OFF 2310 pts/2 R 0:00 ps Umdw x terminal Command line Status Process ID Total CPU time The next few lectures s will deal with details of process creation and management... 19
20 OS Structure It's not always clear how to tie these different OS components together... Command Interpreter Networking Error Handling Accounting File System Protection System Process Management Secondary Storage Management Memory Management I/O System (For illustrative purposes only) 20
21 Executive model Not really an OS kernel per se... But rather a collection of routines, resident in memory, that the application can invoke MS-DOS used this structure Effectively a library, except the application is not explicitly linked to the OS routines Instead, uses software traps to invoke OS routines from user code Software trap (e.g., int 0x13 ) OS routines (file IO, device IO, etc.) All code is in the same address space 21
22 Monolithic Kernels Most common OS kernel design Kernel code is privileged and lives in its own address space s are unprivileged and live in their own separate address spaces All kernel functions loaded into memory as one large, messy program System call Protection boundary Kernel Memory management Process management Accounting Device drivers Filesystem TCP/IP stack Disk I/O CPU support Pros and cons??? 22
23 Monolithic Kernels Most common OS kernel design Kernel code is privileged and lives in its own address space s are unprivileged and live in their own separate address spaces All kernel functions loaded into memory as one large, messy program System call Protection boundary Kernel Memory management Process management Accounting Device drivers Filesystem TCP/IP stack Disk I/O CPU support Pros and cons Pro: Overhead of module interactions within the kernel is low (function call) Pro: Kernel modules can directly share memory Con: Very complicated and difficult to organize Con: A bug in any part of the kernel can crash the whole system! 23
24 Loadable Modules Allows new kernel code to be dynamically loaded and unloaded The kernel is otherwise monolithic, as before System call Protection boundary Kernel Memory management Process management Accounting Device drivers Filesystem TCP/IP stack Disk I/O CPU support New device driver Pros and cons??? 24
25 Loadable Modules Allows new kernel code to be dynamically loaded and unloaded The kernel is otherwise monolithic, as before System call Protection boundary Kernel Memory management Process management Accounting Device drivers Filesystem TCP/IP stack Disk I/O CPU support New device driver Pros and cons Pro: Save memory by only loading drivers, etc. that are needed Pro: Makes it easier to develop new kernel code outside of the main tree Con: Once loaded, module can wreak havoc on the running kernel 25
26 Microkernels Use a very small, minimal kernel, and implement all other functionality as user level servers Kernel only knows how to perform lowest-level hardware operations Device drivers, filesystems, virtual memory, etc. all implemented on top Use inter-process procedure call (IPC) to communicate between applications and servers Memory management Accounting Device drivers Process management Filesystem TCP/IP stack Disk I/O CPU support Inter-process procedure call Protection boundary Microkernel Pros and Cons??? 26
27 Microkernels 2 Pros and cons Pro: Kernel is small and simple, servers are protected from each other Con: Overhead of invoking servers may be very high e.g., A user process accessing a file may require inter-process communication through 2 or 3 servers! Microkernels today Lots of research in late 80's and early 90's Windows NT uses modified microkernel : Monolithic kernel for most things, OS APIs (DOS, Win3.1, Win32, POSIX) implemented as user-level services Mac OS X has reincarnated the microkernel architecture as well: Gnarly hybrid of Mach (microkernel) and FreeBSD (monolithic) 27
28 Administrative Stuff Next Lecture: Dive into the process subssystem How the OS manages loading and running executables Read Tanenbaum
Review from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture
Review from last time CS 537 Lecture 3 OS Structure What HW structures are used by the OS? What is a system call? Michael Swift Remzi Arpaci-Dussea, Michael Swift 1 Remzi Arpaci-Dussea, Michael Swift 2
Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture
Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts
Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture
Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts
COS 318: Operating Systems
COS 318: Operating Systems OS Structures and System Calls Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall10/cos318/ Outline Protection mechanisms
Operating System Structure
Operating System Structure Lecture 3 Disclaimer: some slides are adopted from the book authors slides with permission Recap Computer architecture CPU, memory, disk, I/O devices Memory hierarchy Architectural
Operating System Components
Lecture Overview Operating system software introduction OS components OS services OS structure Operating Systems - April 24, 2001 Operating System Components Process management Memory management Secondary
CSE 120 Principles of Operating Systems. Modules, Interfaces, Structure
CSE 120 Principles of Operating Systems Fall 2000 Lecture 3: Operating System Modules, Interfaces, and Structure Geoffrey M. Voelker Modules, Interfaces, Structure We roughly defined an OS as the layer
How do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself
How do Users and Processes interact with the Operating System? Users interact indirectly through a collection of system programs that make up the operating system interface. The interface could be: A GUI,
Processes and Non-Preemptive Scheduling. Otto J. Anshus
Processes and Non-Preemptive Scheduling Otto J. Anshus 1 Concurrency and Process Challenge: Physical reality is Concurrent Smart to do concurrent software instead of sequential? At least we want to have
Example of Standard API
16 Example of Standard API System Call Implementation Typically, a number associated with each system call System call interface maintains a table indexed according to these numbers The system call interface
Introduction. What is an Operating System?
Introduction What is an Operating System? 1 What is an Operating System? 2 Why is an Operating System Needed? 3 How Did They Develop? Historical Approach Affect of Architecture 4 Efficient Utilization
Chapter 2: OS Overview
Chapter 2: OS Overview CmSc 335 Operating Systems 1. Operating system objectives and functions Operating systems control and support the usage of computer systems. a. usage users of a computer system:
CS 377: Operating Systems. Outline. A review of what you ve learned, and how it applies to a real operating system. Lecture 25 - Linux Case Study
CS 377: Operating Systems Lecture 25 - Linux Case Study Guest Lecturer: Tim Wood Outline Linux History Design Principles System Overview Process Scheduling Memory Management File Systems A review of what
ELEC 377. Operating Systems. Week 1 Class 3
Operating Systems Week 1 Class 3 Last Class! Computer System Structure, Controllers! Interrupts & Traps! I/O structure and device queues.! Storage Structure & Caching! Hardware Protection! Dual Mode Operation
Kernel Types System Calls. Operating Systems. Autumn 2013 CS4023
Operating Systems Autumn 2013 Outline 1 2 Types of 2.4, SGG The OS Kernel The kernel is the central component of an OS It has complete control over everything that occurs in the system Kernel overview
1. Computer System Structure and Components
1 Computer System Structure and Components Computer System Layers Various Computer Programs OS System Calls (eg, fork, execv, write, etc) KERNEL/Behavior or CPU Device Drivers Device Controllers Devices
Have both hardware and software. Want to hide the details from the programmer (user).
Input/Output Devices Chapter 5 of Tanenbaum. Have both hardware and software. Want to hide the details from the programmer (user). Ideally have the same interface to all devices (device independence).
Chapter 2 System Structures
Chapter 2 System Structures Operating-System Structures Goals: Provide a way to understand an operating systems Services Interface System Components The type of system desired is the basis for choices
Operating System Structures
COP 4610: Introduction to Operating Systems (Spring 2015) Operating System Structures Zhi Wang Florida State University Content Operating system services User interface System calls System programs Operating
Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.
Objectives To describe the services an operating system provides to users, processes, and other systems To discuss the various ways of structuring an operating system Chapter 2: Operating-System Structures
Operating Systems. Lecture 03. February 11, 2013
Operating Systems Lecture 03 February 11, 2013 Goals for Today Interrupts, traps and signals Hardware Protection System Calls Interrupts, Traps, and Signals The occurrence of an event is usually signaled
Chapter 3 Operating-System Structures
Contents 1. Introduction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 9. Memory Management 10. Virtual
I/O Device and Drivers
COS 318: Operating Systems I/O Device and Drivers Prof. Margaret Martonosi Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall11/cos318/ Announcements Project
How To Write A Windows Operating System (Windows) (For Linux) (Windows 2) (Programming) (Operating System) (Permanent) (Powerbook) (Unix) (Amd64) (Win2) (X
(Advanced Topics in) Operating Systems Winter Term 2009 / 2010 Jun.-Prof. Dr.-Ing. André Brinkmann [email protected] Universität Paderborn PC 1 Overview Overview of chapter 3: Case Studies 3.1 Windows Architecture.....3
CSC 2405: Computer Systems II
CSC 2405: Computer Systems II Spring 2013 (TR 8:30-9:45 in G86) Mirela Damian http://www.csc.villanova.edu/~mdamian/csc2405/ Introductions Mirela Damian Room 167A in the Mendel Science Building [email protected]
Lecture 6: Interrupts. CSC 469H1F Fall 2006 Angela Demke Brown
Lecture 6: Interrupts CSC 469H1F Fall 2006 Angela Demke Brown Topics What is an interrupt? How do operating systems handle interrupts? FreeBSD example Linux in tutorial Interrupts Defn: an event external
Lesson Objectives. To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization
Lesson Objectives To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization AE3B33OSD Lesson 1 / Page 2 What is an Operating System? A
OS Concepts and structure
OS Concepts and structure Today OS services OS interface to programmers/users OS components & interconnects Structuring OSs Next time Processes Between hardware and your apps User processes Thunderbird
Components of a Computer System
SFWR ENG 3B04 Software Design III 1.1 3 Hardware Processor(s) Memory I/O devices Operating system Kernel System programs Components of a Computer System Application programs Users SFWR ENG 3B04 Software
1 Organization of Operating Systems
COMP 730 (242) Class Notes Section 10: Organization of Operating Systems 1 Organization of Operating Systems We have studied in detail the organization of Xinu. Naturally, this organization is far from
Process Description and Control. 2004-2008 william stallings, maurizio pizzonia - sistemi operativi
Process Description and Control 1 Process A program in execution (running) on a computer The entity that can be assigned to and executed on a processor A unit of activity characterized by a at least one
Introduction to Operating Systems. Perspective of the Computer. System Software. Indiana University Chen Yu
Introduction to Operating Systems Indiana University Chen Yu Perspective of the Computer System Software A general piece of software with common functionalities that support many applications. Example:
Operating System Structures
Operating System Structures Meelis ROOS [email protected] Institute of Computer Science Tartu University fall 2009 Literature A. S. Tanenbaum. Modern Operating Systems. 2nd ed. Prentice Hall. 2001. G. Nutt.
Operating System Organization. Purpose of an OS
Slide 3-1 Operating System Organization Purpose of an OS Slide 3-2 es Coordinate Use of the Abstractions he Abstractions Create the Abstractions 1 OS Requirements Slide 3-3 Provide resource abstractions
Chapter 6, The Operating System Machine Level
Chapter 6, The Operating System Machine Level 6.1 Virtual Memory 6.2 Virtual I/O Instructions 6.3 Virtual Instructions For Parallel Processing 6.4 Example Operating Systems 6.5 Summary Virtual Memory General
System Structures. Services Interface Structure
System Structures Services Interface Structure Operating system services (1) Operating system services (2) Functions that are helpful to the user User interface Command line interpreter Batch interface
CPS221 Lecture: Operating System Structure; Virtual Machines
Objectives CPS221 Lecture: Operating System Structure; Virtual Machines 1. To discuss various ways of structuring the operating system proper 2. To discuss virtual machines Materials: 1. Projectable of
Computer-System Architecture
Chapter 2: Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection General System Architecture 2.1 Computer-System Architecture 2.2 Computer-System
find model parameters, to validate models, and to develop inputs for models. c 1994 Raj Jain 7.1
Monitors Monitor: A tool used to observe the activities on a system. Usage: A system programmer may use a monitor to improve software performance. Find frequently used segments of the software. A systems
Virtual vs Physical Addresses
Virtual vs Physical Addresses Physical addresses refer to hardware addresses of physical memory. Virtual addresses refer to the virtual store viewed by the process. virtual addresses might be the same
COS 318: Operating Systems. I/O Device and Drivers. Input and Output. Definitions and General Method. Revisit Hardware
COS 318: Operating Systems I/O and Drivers Input and Output A computer s job is to process data Computation (, cache, and memory) Move data into and out of a system (between I/O devices and memory) Challenges
Operating Systems 4 th Class
Operating Systems 4 th Class Lecture 1 Operating Systems Operating systems are essential part of any computer system. Therefore, a course in operating systems is an essential part of any computer science
Overview of Operating Systems Instructor: Dr. Tongping Liu
Overview of Operating Systems Instructor: Dr. Tongping Liu Thank Dr. Dakai Zhu and Dr. Palden Lama for providing their slides. 1 Lecture Outline Operating System: what is it? Evolution of Computer Systems
10.04.2008. Thomas Fahrig Senior Developer Hypervisor Team. Hypervisor Architecture Terminology Goals Basics Details
Thomas Fahrig Senior Developer Hypervisor Team Hypervisor Architecture Terminology Goals Basics Details Scheduling Interval External Interrupt Handling Reserves, Weights and Caps Context Switch Waiting
Linux Driver Devices. Why, When, Which, How?
Bertrand Mermet Sylvain Ract Linux Driver Devices. Why, When, Which, How? Since its creation in the early 1990 s Linux has been installed on millions of computers or embedded systems. These systems may
Microkernels, virtualization, exokernels. Tutorial 1 CSC469
Microkernels, virtualization, exokernels Tutorial 1 CSC469 Monolithic kernel vs Microkernel Monolithic OS kernel Application VFS System call User mode What was the main idea? What were the problems? IPC,
CS 695 Topics in Virtualization and Cloud Computing. More Introduction + Processor Virtualization
CS 695 Topics in Virtualization and Cloud Computing More Introduction + Processor Virtualization (source for all images: Virtual Machines: Versatile Platforms for Systems and Processes Morgan Kaufmann;
Page 1 of 5. IS 335: Information Technology in Business Lecture Outline Operating Systems
Lecture Outline Operating Systems Objectives Describe the functions and layers of an operating system List the resources allocated by the operating system and describe the allocation process Explain how
CSE543 - Introduction to Computer and Network Security. Module: Operating System Security
CSE543 - Introduction to Computer and Network Security Module: Operating System Security Professor Trent Jaeger 1 OS Security So, you have built an operating system that enables user-space processes to
SYSTEM ecos Embedded Configurable Operating System
BELONGS TO THE CYGNUS SOLUTIONS founded about 1989 initiative connected with an idea of free software ( commercial support for the free software ). Recently merged with RedHat. CYGNUS was also the original
Operating Systems. 05. Threads. Paul Krzyzanowski. Rutgers University. Spring 2015
Operating Systems 05. Threads Paul Krzyzanowski Rutgers University Spring 2015 February 9, 2015 2014-2015 Paul Krzyzanowski 1 Thread of execution Single sequence of instructions Pointed to by the program
Uses for Virtual Machines. Virtual Machines. There are several uses for virtual machines:
Virtual Machines Uses for Virtual Machines Virtual machine technology, often just called virtualization, makes one computer behave as several computers by sharing the resources of a single computer between
Operating Systems Overview
Operating Systems Overview No single definition, but many perspectives: Role in an overall system: Intermediary between computer hardware and everything else User view: Provides an environment, preferably
Virtual Machines. COMP 3361: Operating Systems I Winter 2015 http://www.cs.du.edu/3361
s COMP 3361: Operating Systems I Winter 2015 http://www.cs.du.edu/3361 1 Virtualization! Create illusion of multiple machines on the same physical hardware! Single computer hosts multiple virtual machines
Chapter 3: Operating-System Structures. System Components Operating System Services System Calls System Programs System Structure Virtual Machines
Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines Operating System Concepts 3.1 Common System Components
Lecture 1 Operating System Overview
Lecture 1 Operating System Overview What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. The Major Objectives of an Operating system
Operating System Overview. Otto J. Anshus
Operating System Overview Otto J. Anshus A Typical Computer CPU... CPU Memory Chipset I/O bus ROM Keyboard Network A Typical Computer System CPU. CPU Memory Application(s) Operating System ROM OS Apps
OPERATING SYSTEM SERVICES
OPERATING SYSTEM SERVICES USER INTERFACE Command line interface(cli):uses text commands and a method for entering them Batch interface(bi):commands and directives to control those commands are entered
Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition
Chapter 2: Operating-System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System
RELIABLE OPERATING SYSTEMS
RELIABLE OPERATING SYSTEMS Research Summary 1 st EuroSys Doctoral Workshop October 23, 2005 Brighton, UK Jorrit N. Herder Dept. of Computer Science Vrije Universiteit Amsterdam PERCEIVED PROBLEMS Weak
CIS433/533 - Computer and Network Security Operating System Security
CIS433/533 - Computer and Network Security Operating System Security Professor Kevin Butler Winter 2010 Computer and Information Science OS Security An secure OS should provide (at least) the following
Virtualization in Linux KVM + QEMU
CS695 Topics in Virtualization and Cloud Computing KVM + QEMU Senthil, Puru, Prateek and Shashank 1 Topics covered KVM and QEMU Architecture VTx support CPU virtualization in KMV Memory virtualization
Operating System Components and Services
Operating System Components and Services Tom Kelliher, CS 311 Feb. 6, 2012 Announcements: From last time: 1. System architecture issues. 2. I/O programming. 3. Memory hierarchy. 4. Hardware protection.
FRONT FLYLEAF PAGE. This page has been intentionally left blank
FRONT FLYLEAF PAGE This page has been intentionally left blank Abstract The research performed under this publication will combine virtualization technology with current kernel debugging techniques to
Red Hat Linux Internals
Red Hat Linux Internals Learn how the Linux kernel functions and start developing modules. Red Hat Linux internals teaches you all the fundamental requirements necessary to understand and start developing
Operating System Tutorial
Operating System Tutorial OPERATING SYSTEM TUTORIAL Simply Easy Learning by tutorialspoint.com tutorialspoint.com i ABOUT THE TUTORIAL Operating System Tutorial An operating system (OS) is a collection
Operating Systems OS Architecture Models
Operating Systems OS Architecture Models ECE 344 OS Architecture Designs that have been tried in practice Monolithic systems Layered systems Virtual machines Client/server a.k.a. Microkernels Many of the
Chapter 1 Computer System Overview
Operating Systems: Internals and Design Principles Chapter 1 Computer System Overview Eighth Edition By William Stallings Operating System Exploits the hardware resources of one or more processors Provides
Outline: Operating Systems
Outline: Operating Systems What is an OS OS Functions Multitasking Virtual Memory File Systems Window systems PC Operating System Wars: Windows vs. Linux 1 Operating System provides a way to boot (start)
CS 61C: Great Ideas in Computer Architecture Virtual Memory Cont.
CS 61C: Great Ideas in Computer Architecture Virtual Memory Cont. Instructors: Vladimir Stojanovic & Nicholas Weaver http://inst.eecs.berkeley.edu/~cs61c/ 1 Bare 5-Stage Pipeline Physical Address PC Inst.
Operating System Software
Operating System Software Lecture 7 The operating system Defines our computing experience. First software we see when we turn on the computer, and the last software we see when the computer is turned off.
Linux Process Scheduling Policy
Lecture Overview Introduction to Linux process scheduling Policy versus algorithm Linux overall process scheduling objectives Timesharing Dynamic priority Favor I/O-bound process Linux scheduling algorithm
Lecture 25 Symbian OS
CS 423 Operating Systems Design Lecture 25 Symbian OS Klara Nahrstedt Fall 2011 Based on slides from Andrew S. Tanenbaum textbook and other web-material (see acknowledgements) cs423 Fall 2011 1 Overview
CHAPTER 15: Operating Systems: An Overview
CHAPTER 15: Operating Systems: An Overview The Architecture of Computer Hardware, Systems Software & Networking: An Information Technology Approach 4th Edition, Irv Englander John Wiley and Sons 2010 PowerPoint
An Implementation Of Multiprocessor Linux
An Implementation Of Multiprocessor Linux This document describes the implementation of a simple SMP Linux kernel extension and how to use this to develop SMP Linux kernels for architectures other than
This tutorial will take you through step by step approach while learning Operating System concepts.
About the Tutorial An operating system (OS) is a collection of software that manages computer hardware resources and provides common services for computer programs. The operating system is a vital component
I/O. Input/Output. Types of devices. Interface. Computer hardware
I/O Input/Output One of the functions of the OS, controlling the I/O devices Wide range in type and speed The OS is concerned with how the interface between the hardware and the user is made The goal in
Components of a Computing System. What is an Operating System? Resources. Abstract Resources. Goals of an OS. System Software
What is an Operating System? An operating system (OS) is a collection of software that acts as an intermediary between users and the computer hardware One can view an OS as a manager of system resources
Linux Kernel Architecture
Linux Kernel Architecture Amir Hossein Payberah [email protected] Contents What is Kernel? Kernel Architecture Overview User Space Kernel Space Kernel Functional Overview File System Process Management
Microcontrollers Deserve Protection Too
Microcontrollers Deserve Protection Too Amit Levy with: Michael Andersen, Tom Bauer, Sergio Benitez, Bradford Campbell, David Culler, Prabal Dutta, Philip Levis, Pat Pannuto, Laurynas Riliskis Microcontrollers
Chapter 1: Operating System Models 1 2 Operating System Models 2.1 Introduction Over the past several years, a number of trends affecting operating system design are witnessed and foremost among them is
FAME Operating Systems
FAME Operating Systems 2012 David Picard contributors : Arnaud Revel, Mickaël Maillard [email protected] 1. Introduction A very simple computer Goals of an operating system Hardware management Task management
Virtual machines and operating systems
V i r t u a l m a c h i n e s a n d o p e r a t i n g s y s t e m s Virtual machines and operating systems Krzysztof Lichota [email protected] A g e n d a Virtual machines and operating systems interactions
LSN 10 Linux Overview
LSN 10 Linux Overview ECT362 Operating Systems Department of Engineering Technology LSN 10 Linux Overview Linux Contemporary open source implementation of UNIX available for free on the Internet Introduced
Virtualization. Pradipta De [email protected]
Virtualization Pradipta De [email protected] Today s Topic Virtualization Basics System Virtualization Techniques CSE506: Ext Filesystem 2 Virtualization? A virtual machine (VM) is an emulation
Operating Systems. Design and Implementation. Andrew S. Tanenbaum Melanie Rieback Arno Bakker. Vrije Universiteit Amsterdam
Operating Systems Design and Implementation Andrew S. Tanenbaum Melanie Rieback Arno Bakker Vrije Universiteit Amsterdam Operating Systems - Winter 2012 Outline Introduction What is an OS? Concepts Processes
Outline. Operating Systems Design and Implementation. Chap 1 - Overview. What is an OS? 28/10/2014. Introduction
Operating Systems Design and Implementation Andrew S. Tanenbaum Melanie Rieback Arno Bakker Outline Introduction What is an OS? Concepts Processes and Threads Memory Management File Systems Vrije Universiteit
Virtualization. Explain how today s virtualization movement is actually a reinvention
Virtualization Learning Objectives Explain how today s virtualization movement is actually a reinvention of the past. Explain how virtualization works. Discuss the technical challenges to virtualization.
Multiprogramming. IT 3123 Hardware and Software Concepts. Program Dispatching. Multiprogramming. Program Dispatching. Program Dispatching
IT 3123 Hardware and Software Concepts Operating Systems II October 26 Multiprogramming Two or more application programs in memory. Consider one CPU and more than one program. This can be generalized to
CS5460: Operating Systems. Lecture: Virtualization 2. Anton Burtsev March, 2013
CS5460: Operating Systems Lecture: Virtualization 2 Anton Burtsev March, 2013 Paravirtualization: Xen Full virtualization Complete illusion of physical hardware Trap _all_ sensitive instructions Virtualized
Chapter 3: Operating-System Structures. Common System Components
Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation 3.1
Input / Output and I/O Strategies
The Four Major Input / Output Strategies Preliminary Definitions A Silly Example to Illustrate Basic Definitions Input / Output and I/O Strategies A Context for Advanced I/O Strategies The Four Strategies
CS420: Operating Systems OS Services & System Calls
NK YORK COLLEGE OF PENNSYLVANIA HG OK 2 YORK COLLEGE OF PENNSYLVAN OS Services & System Calls James Moscola Department of Physical Sciences York College of Pennsylvania Based on Operating System Concepts,
VMware and CPU Virtualization Technology. Jack Lo Sr. Director, R&D
ware and CPU Virtualization Technology Jack Lo Sr. Director, R&D This presentation may contain ware confidential information. Copyright 2005 ware, Inc. All rights reserved. All other marks and names mentioned
Operating Systems. Rafael Ramirez (T, S) [email protected] 55.316
Operating Systems Rafael Ramirez (T, S) [email protected] 55.316 Sergio Giraldo(P, S) [email protected] Matteo Segnorini (P, S) [email protected] T=Teoria; S=Seminarios; P=Prácticas Operating
Security Overview of the Integrity Virtual Machines Architecture
Security Overview of the Integrity Virtual Machines Architecture Introduction... 2 Integrity Virtual Machines Architecture... 2 Virtual Machine Host System... 2 Virtual Machine Control... 2 Scheduling
Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor?
Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor? Mr. Jacob Torrey February 26, 2014 Dartmouth College 153 Brooks Road, Rome, NY 315.336.3306 http://ainfosec.com @JacobTorrey
Operating Systems for Parallel Processing Assistent Lecturer Alecu Felician Economic Informatics Department Academy of Economic Studies Bucharest
Operating Systems for Parallel Processing Assistent Lecturer Alecu Felician Economic Informatics Department Academy of Economic Studies Bucharest 1. Introduction Few years ago, parallel computers could
ReactOS is (not) Windows. Windows internals and why ReactOS couldn t just use a Linux kernel
ReactOS is (not) Windows Windows internals and why ReactOS couldn t just use a Linux kernel ReactOS is (not) Windows ReactOS is Windows Runs Windows applications Runs Windows drivers Looks like Windows
