Operating System. Operating System Overview. Structure of a Computer System. Structure of a Computer System. Structure of a Computer System

Similar documents
Introduction to Operating Systems

Role 1: The Operating System is an Abstract Machine. Learning Outcomes. Introduction to Operating Systems. What is an Operating System?

Introduction to Operating. Chapter Chapter

Introduction to Operating Systems. Chapter Chapter

Introduction to Operating Systems. Chapter Chapter

Operating System. Operating System Overview. Layers of Computer System. Operating System Objectives. Services Provided by the Operating System

Operating System Overview. Operating System

Operating System Overview. Chapter 2

Operating Systems Overview. Chapter 2

Operating System Overview. Chapter 2

Operating Systems Overview

Operating Systems Overview. Chapter 2

Computer System Overview

Chapter 2 Operating System Overview

Introduction. CS3026 Operating Systems Lecture 01

Operating Systems : Overview

1 System & Activities

Announcement. Exercise #2 will be out today. Due date is next Monday

Process Description and Control

CPSC 341 OS & Networks. Introduction. Dr. Yingwu Zhu

Process Concepts. CSC400 - Operating Systems. 3. Process Concepts. J. Sumey

Operating Systems: Overview and Introduction

Major Requirements of an OS

Operating System. Operating Systems Structure Chapter 2. Services Provided by the OS. Evolution of an Operating System

Slide 6-1. Processes. Operating Systems: A Modern Perspective, Chapter 6. Copyright 2004 Pearson Education, Inc.

Multiprogramming. Evolution of OS. Today. Comp 104: Operating Systems Concepts 28/01/2013. Processes Management Scheduling & Resource Allocation

Operating Systems: Internals and Design Principles. Chapter 2 Operating System Overview Seventh Edition By William Stallings

What is an Operating System? A Whirlwind Tour of Operating Systems. How did OS evolve? How did OS evolve?

Process Description and Control. Chapter 3

Process Description and Control. Major Requirements of an Operating System

Major Requirements of an Operating System Process Description and Control

Operating Systems. Lecture 3- Process Description and Control. Masood Niazi Torshiz

Process Description and Control

Lecture 5: Process Description and Control Multithreading Basics in Interprocess communication Introduction to multiprocessors

Four Components of a Computer System. Operating System Concepts 7 th Edition, Jan 12, 2005

Part V. Process Management. Sadeghi, Cubaleska RUB Course Operating System Security Memory Management and Protection

Today s class. Review of more C Operating system overview. Informationsteknologi

Lecture Topics. Announcements. Today: Operating System Overview (Stallings, chapter , ) Next: Processes (Stallings, chapter

System Call. Preview. System Call. System Call. System Call 9/7/2018

OPERATING SYSTEMS UNIT - 1

HIGH PERFORMANCE COMPUTING: MODELS, METHODS, & MEANS OPERATING SYSTEMS 1

Operating Systems Structure and Processes Lars Ailo Bongo Spring 2017 (using slides by Otto J. Anshus University of Tromsø/Oslo)

Four Components of a Computer System

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto

Operating System Architecture. CS3026 Operating Systems Lecture 03

CS 471 Operating Systems. Yue Cheng. George Mason University Fall 2017

CSC Operating Systems Fall Lecture - II OS Structures. Tevfik Ko!ar. Louisiana State University. August 27 th, 2009.

Why use an Operating System? Operating System Definition

Announcements. Computer System Organization. Roadmap. Major OS Components. Processes. Tevfik Ko!ar. CSC Operating Systems Fall 2009

Agenda Process Concept Process Scheduling Operations on Processes Interprocess Communication 3.2

What s the difference between threads/processes. Operating Systems

ELEC 377 Operating Systems. Week 1 Class 2

Process. Program Vs. process. During execution, the process may be in one of the following states

Operating Systems (ECS 150) Spring 2011

Process Description and Control

Announcements. Reading. Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) CMSC 412 S14 (lect 5)

Operating System Services

OPERATING SYSTEMS: Lesson 1: Introduction to Operating Systems

Process Description and Control

* What are the different states for a task in an OS?

OS Design Approaches. Roadmap. OS Design Approaches. Tevfik Koşar. Operating System Design and Implementation

1. Introduction to Operating Systems

Module 1. Introduction:

Embedded Linux Architecture

CHAPTER 3 - PROCESS CONCEPT

To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization

Unit 2 : Computer and Operating System Structure

Operating Systems. Computer Science & Information Technology (CS) Rank under AIR 100

CSC 453 Operating Systems

Chapter 3 Processes. Process Concept. Process Concept. Process Concept (Cont.) Process Concept (Cont.) Process Concept (Cont.)

Chapter 1: Introduction

Processes. Process Scheduling, Process Synchronization, and Deadlock will be discussed further in Chapters 5, 6, and 7, respectively.

For use by students enrolled in #71251 CSE430 Fall 2012 at Arizona State University. Do not use if not enrolled.

7/20/2008. What Operating Systems Do Computer-System Organization

Chapter 8: Main Memory

Computer-System Architecture (cont.) Symmetrically Constructed Clusters (cont.) Advantages: 1. Greater computational power by running applications

Chapter 3: Process Concept

Chapter 3: Process Concept

Chapter 3: Processes

W4118 Operating Systems. Junfeng Yang

Chapter 8: Memory-Management Strategies

csci3411: Operating Systems

Process Description and Control. Chapter 3

Chapter 3: Process Concept

Chapter 2 Operating-System Structures

ECE 7650 Scalable and Secure Internet Services and Architecture ---- A Systems Perspective. Part I: Operating system overview: Memory Management

CSC 539: Operating Systems Structure and Design. Spring 2006

CSCE Introduction to Computer Systems Spring 2019

Chapter 13: I/O Systems

Last class: OS and Architecture. OS and Computer Architecture

Last class: OS and Architecture. Chapter 3: Operating-System Structures. OS and Computer Architecture. Common System Components

Operating Systems. Designed and Presented by Dr. Ayman Elshenawy Elsefy

CHAPTER 8 - MEMORY MANAGEMENT STRATEGIES

OS Main Goals. 10/24/2013 Operating Systems, Beykent University 1

Chapter 8: Main Memory. Operating System Concepts 9 th Edition

Introduction to Operating Systems Prof. Chester Rebeiro Department of Computer Science and Engineering Indian Institute of Technology, Madras

OS and Computer Architecture. Chapter 3: Operating-System Structures. Common System Components. Process Management

Chapter 1: Introduction

Processes and More. CSCI 315 Operating Systems Design Department of Computer Science

Roadmap. Tevfik Koşar. CSE 421/521 - Operating Systems Fall Lecture - II OS Structures. University at Buffalo. OS Design and Implementation

Transcription:

Overview Chapter 1.5 1.9 A program that controls execution of applications The resource manager An interface between applications and hardware The extended machine 1 2 Structure of a Computer System Structure of a Computer System 3 Interacts via load and store instructions to CPU and device registers, and interrupts 4 Structure of a Computer System Structure of a Computer System Interaction via function calls to library procedures Interaction via System Calls 5 6 1

A note on System libraries are just that, libraries of support functions (procedures, subroutines) Only a subset of library functions are actually systems calls strcmp(), memcpy(), are pure library functions open(), close(), read(), write() are system calls System call functions are in the library for convenience 7 Objectives Convenience Make the computer more convenient to use Abstraction -independent programming model Efficiency Allows the computer system to be used in an efficient manner Ability to evolve Permit effective development, testing, and introduction of new system functions without interfering with existing services Protection 8 Services Provided by the Program development Editors, compilers, debuggers Not so much these days Program execution Load a program and its data Access to I/O devices Controlled access to files Access protection System access User authentication 9 Services Provided by the Error detection and response internal and external hardware errors memory error device failure software errors arithmetic overflow access forbidden memory locations operating system cannot grant request of application 10 Services Provided by the Software Accounting collect statistics monitor performance used to anticipate future enhancements used for billing users Fundamentally, OS functions the same way as ordinary computer software It is a program that is executed (just like apps) It has more privileges Operating system relinquishes control of the processor to execute other programs Reestablishes control after System calls Interrupts (especially timer interrupts) 11 12 2

Major OS Concepts Portion of the operating system that is running in privileged mode Usually resident in main memory Contains fundamental functionality Whatever is required to implement other services Whatever is required to provide security Contains most-frequently used functions Also called the nucleus or supervisor 13 Processes Concurrency and deadlocks Memory management Files Information Security and Protection Scheduling and resource management 14 Processes A program in execution An instance of a program running on a computer The entity that can be assigned to and executed on a processor A unit of resource ownership A unit of activity characterized by a single sequential thread of execution, a current state, and an associated set of system resources Nowadays the execution abstraction is separated out: Thread Single process can contain many threads 15 Consist of three segments Text contains the code (instructions) Data Global variables Stack Activation records of procedure Local variables Note: data can dynamically grow up The stack can dynamically grow down Process Memory Stack Gap Data Text 16 Process Multiple processes creates concurrency issues Consists of three components An executable program text Associated data needed by the program Data and stack Execution context of the program All information the operating system needs to manage the process Registers, program counter, stack pointer, etc A multithread program has a stack and (a) A potential deadlock. (b) an actual deadlock. execution context for each thread 17 18 3

Memory Management The view from thirty thousand feet Process isolation Prevent processes from accessing each others data Automatic allocation and management Don t want users to deal with physical memory directly Support for modular programming Protection and access control Still want controlled sharing Long-term storage OS services Virtual memory File system 19 Virtual Memory Allows programmers to address memory from a logical point of view Gives apps the illusion of having RAM to themselves Logical addresses are independent of other processes Provides isolation of processes from each other Can overlap execution of one process while swapping in/out others. 20 Virtual Memory Addressing Paging Allows process to be comprised of a number of fixed-size blocks, called pages Virtual address is a page number and an offset within the page Each page may be located any where in main memory A page may actually exist only on disk 21 22 File System Implements long-term store Information stored in named objects called files 24 4

Example File System Information Protection and Security Access control regulate user access to the system Involves authentication Information flow control regulate flow of data within the system and its delivery to users 25 26 Scheduling and Resource Management Fairness give equal and fair access to all processes Differential responsiveness discriminate between different classes of jobs Efficiency maximize throughput, minimize response time, and accommodate as many uses as possible 27 Structure The layered approach a) Processor allocation and multiprogramming b) Memory Management c) Devices d) File system e) Users Each layer depends on the the inner layers a b c d e 28 Structure In practice, layering is only a guide s have many interdependencies Scheduling on virtual memory Virtual memory on I/O to disk VM on files (page to file) Files on VM (memory mapped files) And many more The Monolithic Operating System Structure Also called the spaghetti nest approach Everything is tangled up with everything else. Linux, Windows,. 29 30 5

The Monolithic Operating System Structure However, some reasonable structure usually prevails UNIX Provides a good hardware abstraction Everything is a file (mostly) Runs on most hardware Comes with a number of user services and interfaces shell C compiler 31 32 Traditional UNIX Structure Traditional UNIX 33 34 Microkernel-based Systems Assigns only a few essential functions to the kernel Address space Interprocess Communication (IPC) Basic scheduling Minimal hardware abstraction Other services implemented by user-level servers Traditional system calls become IPC requests to servers Extreme view of a microkernel A feature is only allowed in the kernel if required for security File Socket documents windows symbols stacks & heaps arrays & structures variables Address Space Process threads coroutines modules procedures statements Monolithic Semaphore Priority Pipe IPC Event Segment ACL Page Monitor Thread Task Mutex Schedule 35 Bit Byte Word Register Instructions HW 36 6

Server File documents windows symbols stacks & heaps arrays & structures variables threads coroutines modules procedures statements Address Space µ-kernel Thread Bit Byte Word Register Instructions HW 37 7