Structure of OS. After knowing a bit of OS Review of different computing environment

Similar documents
Introduction. Chapter Prof. Amr El-Kadi

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on

Operating System Services. User Services. System Operation Services. User Operating System Interface - CLI. A View of Operating System Services

Four Components of a Computer System

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition

Chapter 1: Introduction. Operating System Concepts 9 th Edit9on

Chapter 2. Operating-System Structures

Chapter 2: System Structures

Introduction. Chapter Prof. Amr El-Kadi

Chapter 1: Introduction. Operating System Concepts 9 th Edit9on

Chapter 2 Operating System Structures

Chapter 2: System Structures. Operating System Concepts 9 th Edition

CS420: Operating Systems

Operating System Concepts 9 th Edit9on

Architectural Support for Operating Systems. Jinkyu Jeong ( Computer Systems Laboratory Sungkyunkwan University

Chapter 1: Introduction. Operating System Concepts 8th Edition,

Chapter 1 Introduction

Chapter 2: OS Structures

Chapter 1: Introduction

Chapter 1: Introduction

Operating System Structure

What are some common categories of system calls? What are common ways of structuring an OS? What are the principles behind OS design and

Kernel Types Simple OS Examples System Calls. Operating Systems. Autumn CS4023

European University of Lefke. Instructor: Dr. Arif SARI

Chapter 2: Operating-System Structures

Operating-System Structures

Operating-System Structures

Operating System: Chap2 OS Structure. National Tsing-Hua University 2016, Fall Semester

CS420: Operating Systems

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

PG-TRB COMPUTER INSTRUCTOR OPERATING SYSTEMS

CSE 4/521 Introduction to Operating Systems

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Operating Systems Fundamentals. What is an Operating System? Focus. Computer System Components. Chapter 1: Introduction

Spring It takes a really bad school to ruin a good student and a really fantastic school to rescue a bad student. Dennis J.

OPERATING SYSTEMS. Prescribed Text Book Operating System Principles, Seventh Edition By Abraham Silberschatz, Peter Baer Galvin and Greg Gagne

The Slide does not contain all the information and cannot be treated as a study material for Operating System. Please refer the text book for exams.

Operating System Structure

Distributed Systems COMP 212. Lecture 18 Othon Michail

Operating System Structure

OS Structure. Kevin Webb Swarthmore College January 25, Relevant xkcd:

CHAPTER 03: MULTIMEDIA & OPERATING SYSTEM. :: Operating System :: ~ What is OS?~ ~ OS Functions~ ~ OS Characteristics ~ ~ Type of OS~

Chapter 2: Operating-System Structures

Developing Applications for ios

CHAPTER 1 - INTRODUCTION. Jacob Aae Mikk elsen

Operating System Architecture. CS3026 Operating Systems Lecture 03

Virtual Machines. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University

DM510 Operating Systems. Jacob Aae Mikkelsen

Chapter 1: Introduction

Android App Development. Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore

Chapter 1: Introduction

NON SCHOLAE, SED VITAE

Chapter 2: Operating-System Structures

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

CSC Operating Systems Spring Lecture - II OS Structures. Tevfik Ko!ar. Louisiana State University. January 17 th, 2007.

Announcements. Operating System Structure. Roadmap. Operating System Structure. Multitasking Example. Tevfik Ko!ar

OPERATING SYSTEMS Lecture Notes. Prepared by K.Rohini, Assistant Professor, CSE Department, GVPCEW.

Chapter 1: Introduction

IJRDTM Kailash ISBN No Vol.17 Issue

Chapter 1: Introduction. Chapter 1: Introduction

Chapter 2: Operating-System Structures. Operating System Concepts Essentials 8 th Edition

Module 1 Introduction/OS Overview

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

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

Chapter 2: Operating-System

Reserves time on a paper sign-up sheet. Programmer runs his own program. Relays or vacuum tube hardware. Plug board or punch card input.

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

ios vs Android By: Group 2

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

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

L-1! Silberschatz, Galvin and Gagne 2013! Operating System Concepts 9th Edition! Silberschatz, Galvin and Gagne 2013!

Operating System Concepts Rab Nawaz Khan Jadoon

Introduction to Operating Systems (Part III)

Android Overview. Francesco Mercaldo, PhD

What is Cloud Computing? Cloud computing is the dynamic delivery of IT resources and capabilities as a Service over the Internet.

17655: Discussion: The New z/os Interface for the Touch Generation

Virtualization. ...or how adding another layer of abstraction is changing the world. CIS 399: Unix Skills University of Pennsylvania.

Data Centers and Cloud Computing

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

OS Design Approaches. Roadmap. System Calls. Tevfik Koşar. Operating System Design and Implementation. CSE 421/521 - Operating Systems Fall 2013

CS 550 Operating Systems Spring Operating Systems Overview

Chapter 2 Operating-System Structures

Mac OS X. Mach in the Darwin Kernel. COMP342 4/5/06

Operating Systems CS3502 Spring 2018

Lecture 09: VMs and VCS head in the clouds

Chapter 1: Introduction

CS Operating Systems

Mobile Computing. Juha-Matti Liukkonen, Nov 17, 2010

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

Operating Systems Introduction. Michael O Boyle

Computer chip: A very small pieces of silicon or other semi-conducting material onto which integrated circuits are embedded Circuit board: A thin

Often, more information is required when designing system call Information varies according to OS and types of system call

Diploma Thesis Collaborative Data Processing on Mobile Handsets Jan Kettner. Examiner: Prof. Dr. Mesut Günes Tutor: Georg Wittenburg, M. Sc.

Chapter 2: Operating-System Structures

Unit 5: Distributed, Real-Time, and Multimedia Systems

Introduction to Operating System

Unit 11 Computer Network Introduction to Network Operating Systems

CS 390 Chapter 2 Homework Solutions

Transcription:

CS341: Operating System Lect08 : 19 th Aug 2014 Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati 1 Structure of OS Simple structure MS DOS More complex UNIX Layered an abstraction Microkernel Mach Mach After knowing a bit of OS Review of different computing environment Next Class: Process Concepts States, PCB, IPC, Threads Scheduling: Theoretical Analysis 2 General purpose OS is very large program Various ways to structure ones Simple Simplestructure MS DOS More complex UNIX Layered an abstraction Microkernel Mach 3 Written to provide : most functionality in least space Not divided into modules: Monolithic Architecture Although MS DOS has some structure, interfaces and levels of functionality are not well separated Application Program Resident System Program MS DOS Device Driver ROM BIOS Device Driver Monolithic English Definition Formed of a single large block of stone Organization/system: large, powerful, indivisible, and slow to change. A software system is called "monolithic" If it has a monolithic architecture In which functionally distinguishable aspects For example data input and output, data processing, error handling, and the user interface), Are not architecturally separate components but are all interwoven. MS DOS architecture is monolithic 6 1

UNIX limited by hardware functionality Original UNIX OS had limited structuring. The UNIX OS consists of two separable parts Systems programs Kernel Consists of everything below the system call interface and above the physical hardware Provides the file system, CPU scheduling, memory management, and other operating system functions; a large number of functions for one level Kernel Beyond simple but not fully layered Signal terminal handling Character I/O system Terminal driver Terminal Controller Terminals The users Shells and Commands Compiler and Interpreters System libraries System call interface to the Kernel File System Swapping block I/O System Disk and tape driver Kernel Interface to the Device Controllers Disk & Tapes CPU Scheduling Page Replacement Demand Paging Virtual Memory Memory Controllers Physical Memory OS is divided into a number of layers (levels) Each built on top of lower layers. bottom/0 layer: hardware, highest/n =user interface. With modularity, layers are selected such that Each uses functions and services of only lower level layers Layer N User Interface Layer Layer 1 Moves as much from the kernel into user space Communication between user modules Using message passing Mach example of microkernel Mac OS X kernel (Darwin) partly based on Mach Layer 0 Application Program messages Inter process Communication File System Memory Management messages Device Driver CPU Scheduling User Mode Kernel Mode Benefits: Easier to extend and port to new architectures More secure More reliable (less code is running in kernel mode) Demerits: Microkernel Performance overhead of user space to kernel space communication 2

Many modern OS implement loadablekernel modules Uses object oriented approach Each core component is separate Each talks to the others over known interfaces Each is loadable as needed within the kernel Overall, similar to layers but with more flexible Linux, Solaris, etc Linux Kernel Module #lsmod you can write simple hello world kernel module and insert to linuxkernel Device & Bus Drivers Miscellaneous Modules Streams Modules Scheduling Classes Core Solaris Kernel Executable Formats File System Loadable System calls Most modern OS are actually not one pure model Hybrid combines multiple approaches to address performance, security, usability needs LinuxandSolariskernelsinkerneladdress address space, so monolithic, plus modularfor dynamic loading of functionality Windows mostly monolithic, plus microkernel for different subsystem personalities Apple Mac OS X hybrid, layered, AquaUI plus Cocoa programming environment Below is kernel consisting of Mach microkernel and BSD Unix parts, plus I/O kit and dynamically loadable modules (called kernel extensions) Application Environment Services Aqua GUI Java Cocoa Quicktime BSD Kernel Environment Mach I/O Kits BSD (Berkley Soft Distribution ) Kernel Extensions Apple mobile OS for iphone, ipad Structured on Mac OS X, added functionality Does not run OS X applications natively Also runs on different CPU architecture (ARM vs. Intel) Cocoa Touch Objective C API for developing apps Media services layer for graphics, audio, video Core services provides cloud computing, databases Core operating system, based on Mac OS X kernel Cocoa Touch Media Services Core Services Core OS 3

Developed by Open Handset Alliance (mostly Google) Open Source Similar stack to IOS Based on Linux kernel but modified Provides process, memory, device driver management Adds power management Runtime environment includes core set of libraries and Dalvikvirtual machine Apps developed in Java plus Android API Java class files compiled to Java bytecode then translated to executable than runs in Dalvik VM Libraries includes frameworks for web browser (webkit), database (SQLite), Multimedia and smaller libc SQLite Surface /Window Manager Webkit Application Framework Library opengl Media framework libc Android Runtime Core Libraries Dalvik Virtual Machine OS are designed to run on any of a class of machines The system must be configured for each specific computer site SYSGENprogram obtains if information concerning the specific configuration of the hardware system Used to build system specific compiled kernel or system tuned Can general more efficient code than one general kernel Another Set of Configuration Example Sysgen/HAL configuration Window in inspecting your hardware $ gcc dumpspec $./configure #Pragmain C Program 23 24 4

User, user program and Other system Program GUI Batch Command line User Interfaces System Call Program Execution I/O Operation File System Communication Resource Allocation Accounting Error Detection Services Protection & Security Operating System 26 Stand alone general purpose machines But blurred as most systems interconnect with others (i.e., the Internet) Portalsprovide web access to internal systems Network computers(thin clients) arelikeweb terminals Mobile computers interconnect via wireless networks Networking becoming ubiquitous even home systems use firewallsto protect home computers from Internet attacks Handheld smart phones, tablets, etc What is the functional difference between them and a traditional laptop? Extra feature more OS features GPS, gyroscope, touch screen, etc Allows new types of apps like augmented reality Use IEEE 802.11 wireless, or cellular data networks for connectivity Leaders are Apple iosand Google Android Collection of separate, possibly heterogeneous, systems networked together Networkis a communications path, TCP/IP most common LAN, Wide Area Network (WAN), Metropolitan Area Network (MAN), Personal Area Network (PAN) Network Operating System provides features between systems across network Communication scheme allows systems to exchange messages Illusion of a single system Dumb terminals supplanted by smart PCs Many systems now servers, responding to requests generated by clients Compute-server system provides an interface to client to request services (i.e., database) File-server system provides interface for clients to store and retrieve files Server Window NT, Novel Netware Network Desktop Laptop SmartPhone 5

Another model of distributed system P2P does not distinguish clients and servers Instead all nodes are considered peers May each act as client, server or both Node must join P2P network Registers its service with central lookup service on network, or Broadcast request for service and respond to requests for service via discovery protocol Examples include Napster (music focused online services) Gnutella (millions for peer to peer file sharing) Voice over IP (VoIP)such as Skype Allows operating systems to run applications within other OSes Vast and growing industry Emulationused when source CPU type different from target type (i.e. PowerPC to Intel x86) Generally slowest method When computer language not compiled to native code Interpretation Virtualization OS natively compiled for CPU, running guestoses also natively compiled Consider VMware running WinXPguests, each running applications, all on native WinXP host OS VMM(virtual machine Manager) provides virtualization services Use cases involve laptops and desktops running multiple OSesfor exploration or compatibility Mac OS X host, Windows as a guest Developing apps for multiple OSeswithout having multiple systems QA testing apps without having multiple systems Executing and managing compute environments within data centers VMM can run natively, in which case they are also the host There is no general purpose host then (VMware ESX and Citrix XenServer) Process Kernel Programming Interface Process Process Process Kernel Kernel Kernel VM1 VM2 VM3 Virtual Machine Manager 6

Delivers computing, storage, even apps as a service across a network Logical extension of virtualization because it uses virtualization as the base for it functionality. Amazon EC2 Has thousands of servers, Millions of virtual machines Petabytesof storage available across the Internet, Pay based on usage Public cloud available via Inetto anyone willing to pay Private cloud run by company for own use Hybrid cloud includes both public and private cloud components Software as a Service (SaaS) One or more applications available via the Internet (i.e., word processor) Platform as a Service (PaaS) software stack ready for application use via the Internet (i.e., a database server) Infrastructure as a Service (IaaS) servers or storage available over Internet (i.e., storage available for backup use) 40 MegaCabProvides Taxi Serivces MegaCabhave many type of Cars Indica/Indigo/Innova/City/Octavia/Benz Many parameters: A/C, Capacity, Comfort, Security, Timely manner of Drivers UserofMegaCab(DoOptimization) Want to take service to reduce cost with better performance, comfort, security MegaCab(Server Do Optimization) Want to maximize the profit and satisfy the users MegaCabhave A customer Interface and A manager 41 Example makemytrip.com, goibibo.com Resources: Rooms, Cars, Flights, Trains Different resources have different parameters Many users want to optimize their parameters Organization also want to take maximum benefits 42 7

Resource Constraints Project Scheduling Problem Used in Mechanical, Civil Engineering Used in Management Many theoretical results Critical Path Heuristics PERT Chart (Program evaluation and review technique) Activity Chart Gantt Chart 43 Cloud comp. environments composed of traditional OSes, plus VMMs, plus cloud management tools Internet connectivity requires security like firewalls Load balancers spread traffic across multiple applications Virtual Machines Virtual Machines Cloud Internet Firewall Load Balancer Storages Customer Req Cloud Customer Interface Cloud Management Service Cloud Management Command Real time embedded systems most prevalent form of computers Vary considerable, special purpose, limited purpose OS, real time OS Use expanding Many other special computing environments as well Some have OSes, some perform tasks without an OS Real time OS has well defined fixed time constraints Processing mustbe done within constraint Correct operation only if constraints met Operating systems made available in source code format rather than just binary closed source Counter to the copy protectionand Digital Rights Management (DRM)movement Started by Free Software Foundation (FSF), which has copyleft GNU Public License (GPL) Examples include GNU/Linuxand BSD UNIX(including core of Mac OS X), and many more Can use VMM like VMware Player (Free on Windows), Virtualbox(open source and free on many platforms http://www.virtualbox.com) Use to run guest operating systems for exploration 8