FAME Operating Systems

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "FAME Operating Systems"

Transcription

1 FAME Operating Systems 2012 David Picard contributors : Arnaud Revel, Mickaël Maillard

2 1. Introduction A very simple computer Goals of an operating system Hardware management Task management OS families Features Multitasking, multiuser Architecture dependances Unix and Linux history

3 A very simple computer CPU Microprocessor

4 A very simple computer CPU Microprocessor Memory mem

5 A very simple computer CPU Hard disk keyboard Screen Microprocessor Memory Many peripherals mem others

6 mem CPU peripherals programs Memory : Programs

7 mem CPU peripherals programs data Memory : Programs Data

8 mem CPU peripherals programs data data, interactions Memory : Programs Data Peripherals : Data Interactions (high priority data)

9 Programs int main(int argc char ** argv) { int a, b, c ; float *A, *B ; /* check input */ if(argc < 3) { printf("usage : dotprod <a> <b>\n") ; return 1 ; } /* read a from args */ a = atoi(argv[1]); b = atoi(argv[2]) ;... Instructions Data

10 Programs int main(int argc char ** argv) { int a, b, c ; float *A, *B ; /* check input */ if(argc < 3) { printf("usage : dotprod <a> <b>\n") ; return 1 ; } /* read a from args */ a = atoi(argv[1]); b = atoi(argv[2]) ; Memory data instructions... instructions data

11 Running a program EIP CPU Read instruction from mem at adress contained in EIP register 0xAD00 : instruction 1 0x1D04 : instruction 2 0xAD08 : instruction 3 0xAD0C : instruction 4... mem

12 Running a program EIP CPU 0xAD00 : instruction 1 0x1D04 : instruction 2 0xAD08 : instruction 3 0xAD0C : instruction 4... Read instruction from mem at adress contained in EIP register Execution mem

13 Running a program EIP++ CPU 0xAD00 : instruction 1 0x1D04 : instruction 2 0xAD08 : instruction 3 0xAD0C : instruction 4... Read instruction from mem at adress contained in EIP register Execution EIP Incrementation mem

14 Running a program EIP CPU 0xAD00 : instruction 1 0x1D04 : instruction 2 0xAD08 : instruction 3 0xAD0C : instruction 4... Read instruction from mem at adress contained in EIP register Execution EIP Incrementation Next cycle mem

15 Interaction between programs, memory and peripherals Memory: Peripherals: Read data Write data Read data (e.g. Keyboard) Run instructions depending on data in memory Run other program contained in memory... Write data (e.g. Screen) Run instruction in case of interaction (e.g. power off buton)...

16 Goals of an OS Manage programs Start, stop, running, etc Integrity, security Communication between programs Manage memory Allocation Permissions, security Manage hardware Interface layer between programs and hardware Handle hardware event (ex: interrupt signals)

17 Managing Hardware Accessing hardware Programs may want to access to the leys pressed on a keyboard, or write some characters on the screen, etc The OS acts as an interface between programs and peripherals It translates the query of programs into commands to peripherals Simplicity gain for the programs, since the interface to different peripherals is unique

18 Managing hardware Interrupts Some peripherals may want to change the way programs are running (think to the stop button of an assembly chain) The OS must handle signal coming from peripherals

19 Managing hardware Critical sections The OS manages how requests to peripherals are handled and scheduled For instance, 2 programs printing a file should not end with an entanglement of text coming out of the printer

20 Managing Tasks Context When a taks is running, the OS manages its context (stack pointer, instruction pointer, loading libraries into memory, etc)

21 Managing Tasks Context switch Most OS can handle several programs running at the same time. They manage the contexts of each program and handle the switches from one task to another Security is also a big deal when running several programs (restrict permission of one task to read/write memory zones of others for example)

22 Managing Tasks Communication between programs Some programs must interact (exchange data, wait for termination, etc) OS handle how communication between programs is done (called IPC Inter Processus Communication)

23 OS Anatomy applications libc toolkit Operating System Task management Memory Management Hardware Management kernel hardware

24 OS families By use : Desktop: reactivity, many different programms, low constraints Real time: predictability, few known programs, strict constraints Embedded: very few known programs, very constrained (limited mem, etc)

25 Kernel types kernel : Monolithic : everything is in the kernel, device drivers, mem management, network protocoles, IPC, etc. (ex Linux, Solaris) Microkernel : basic are done by the kernel (task management, complex IPC). Other things are done by programs (device drivers, memory management, etc). (ex Mach, L4)

26 Comparison ÉCOLE NATIONALE SUPÉRIEURE DE L'ÉLECTRONIQUE ET DE SES APPLICATIONS

27 Modular kernels Monolithic, but Possibility to add/remove fonctionality while running (device driver for ex) Smaller (only necessary stuff is running) Less safe (need to validate all drivers that will be loaded) Ex : Linux

28 Common features Multitasking: Several programs can run at the same time Multi-user: Several users can use the OS at the same time Multi-architecture: Wide variety of architectures running the system

29 Multitasking Several tasks at the same time: Handle creation and destruction Handle access to resources Scheduling Critical resources Integrity (permission, rights and so on)

30 Multi-user Several users on the system: Handle critical resources Integrity of users data Handle communication between users

31 Multi-arch Different hardware configuration Independence of programs to the architecture (e.g. POSIX norm,...) Being able to run on several different arch (e.g. power, x86, arm, sparc,...)

32 History 69 : Thomson et Ritchie First version of UNIX PDP7/9; kernel 16Ko; Process 8Ko, Files 64Ko 72 : Kernighan et Ritchie : C programing language 73 : UNIX rewritten in C Process management File management Generic I/O

33 History 75 : first porting of UNIX 76 : 8/16 bits microprocessors 77 : Thomson at Berkeley Univ 500 installations 79 : Porting to VAX and IBM 82 : Sell by ATT Unix-based and Unix-like ( install.)

34 History 84 : Normalization DEC (Ultrix) Gould (UTX) HP (HP-UX) 85 : MINIX by A. Tanenbaum 88 : standard desktop system SUN/BULL/IBM

35 History 89 : first free BSD Sep 91 : Linux 0.01 (inspired by Minix) Oct 91 : Linux 0.03 (bash and gcc) Dec 91 : Linux 0.10 (first external contrib) Jan 92 : Linux 0.12 (virtual mem, GPL licenced) Mar 92 : linux 0.95 (init/login, X)

36 History 93 : NetBSD and FreeBSD Mar 94 : Linux 1.0 (production stable, features comparable to UNIX) Mar 95 : Linux 1.2 (several architectures, modules) Jul 96 : Linux 2.0 (smp, Tux) Jan 99 : Linux 2.2

37 History 99 : MacOSX (hybrid kernel) 01 : Linux : Linux 2.6 (preemptible kernel) 07 : Linux (CFS scheduler) 08 : Linux (Kgdb) 21 Jul 2011 : Linux (13M lines of code)

38 Linux features Monolithic kernel Modules : functionality can be added or removed (only SVR4.2 and Solaris can do this) Kernel threads : some kernel features are independent Native multithreading Preemptible kernel: a process can be interrupted in kernel mode Multi-CPU support Many filesystems Many supported arch Small Performant Libre (free as in free speech)

39 Distributions Complete OS based on Linux kernel: Linux kernel C library and compiler (mostly gcc) Bootloader (grub, lilo,...) Init system to start the system (networking, printing, user interfaces, ) Shell (bash, dash, ksh, ) Package manager (apt, rpm, portage, ) Package repository loaded with verified programs

40 Distribution families Deb: Debian, ubuntu, and derived *.deb packages Debian : server, Ubuntu : desktop RPM: RedHat, SuSE, Mandriva, and derived *.rpm packages RedHat : server, Mandriva : desktop Slackware The Great Old One (paquets *.tgz) Sources based: gentoo, sourcemage,... Compile all software from sources Gentoo : portage package manager probably the best ever

41 Fundamental concepts Execution modes (hardware feature) User mode: instructions of the running program Reserved memory zone Specific context (stack pointeur, eip,...) Restricted permissions Kernel mode (supervisor): instruction of the kernel All memory zones Specific context All permission Accessed by interrupt (either software or hardware)

42 Fundamental features Process: instance of a running program and its associated context Files: everything is files, devices, documents, etc Permissions: files have different permission levels (user, group, other) Reentrant: several processes can be in kernel mode at the same time (check your local variable!)

43

44 User/Kernel Mode Using the computer is divided into 2 execution modes: kernel mode user mode User mode is for user programs root Services (printing, web server,...) Real users (mail, office, games, devel, ) Kernel mode is for... kernel programs

45 Modes and permissions Memory is restricted to modes User mode applications cannot access to Kernel memory zones Memory zones of other applications Most peripherals To handle permission, most processors have execution modes A restricted mode corresponding to user mode An administrator mode corresponding to kernel mode (or supervisor,...)

46 Acess to kernel mode Memory zones of the kernel are accessible only in supervisor Not accessible in user mode Access by an interrupt System switch to supervisor mode Kernel handles interrupt Back to user mode and continue user application

47 Switch to kernel mode Accessing kernel mode is done By hardware interrupts Switch to supervisor mode and execution of interrupt procedures When errors occurs System raises an exception, switch to supervisor mode and execution of exception procedures When programs ask services to the kernel by a System Call Software interrupt raised by an application Switch to supervisor mode and execution of procedures attached to the system call

48 Interruptions Signal raised by A peripheral Occurs at any time Procedure handling these are called drivers Processor instruction (soft interrupt) Special instruction allowing to switch to supervisor Procedures related to interruptions are initialized at system boot Part of kernel code

49 Exceptions Processor responses to incorrect instructions Interrupt raised by the processor Signals errors in the running procedure (permission fault for example) Allow the kernel to handle errors For example, allocate demanded resources (program asking for a non-allocated memory zone,...)

50 Interrupt handling When an interrupt occurs, the processor execute a procedure initialized at boot time User mode Program 1 System Program 1 call Clock interrupt Program 2 Kernel mode Kernel proc Interrupt return Kernel proc Interrupt return

51 System calls Are function that: Are called in user mode Are executed in supervisor Return in user mode (in the calling program) The system call is asked by a unique software interruption (0x80) Does the switch to supervisor System calls are identified by numbers The number of the system call is loaded in a register A table allows to know which procedure to call depending on the number present in the register

52 Linux 0.01 System calls are available in glibc #define _syscall0(type,name) \ type name(void) \ { \ type res; \ asm volatile ("int $0x80" \ : "=a" ( res) \ : "0" ( NR_##name)); \ if ( res >= 0) \ return res; \ errno = res; \ return 1; \ }

53 Kernel control path kernel control path is the sequence of instruction executed by the interrupt procedure Several kernel control path can be entangled Ex: a process asks for a non available resource, another process is executed and asks for a resource also An interrupt is raised during a kcp Need for a reentrant kernel

Example of Standard API

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

More information

Kernel Types System Calls. Operating Systems. Autumn 2013 CS4023

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

More information

Operating System Structure

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

More information

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

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

More information

(Advanced Topics in) Operating Systems Winter Term 2009 / 2010. Jun.-Prof. Dr.-Ing. André Brinkmann brinkman@upb.de Universität Paderborn PC

(Advanced Topics in) Operating Systems Winter Term 2009 / 2010. Jun.-Prof. Dr.-Ing. André Brinkmann brinkman@upb.de Universität Paderborn PC (Advanced Topics in) Operating Systems Winter Term 2009 / 2010 Jun.-Prof. Dr.-Ing. André Brinkmann brinkman@upb.de Universität Paderborn PC 1 Overview Overview of chapter 3: Case Studies 3.1 Windows Architecture.....3

More information

Unit 10 : An Introduction to Linux OS

Unit 10 : An Introduction to Linux OS Unit 10 : An Introduction to Linux OS Linux is a true 32/64-bit operating system that run on different platforms. It is a multi-user, multi-tasking and time sharing operating system. Linux is a very stable

More information

CSE 120 Principles of Operating Systems. Modules, Interfaces, Structure

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

More information

Operating System Structures

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

More information

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

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

More information

System Structures. Services Interface Structure

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

More information

LSN 10 Linux Overview

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

More information

CSE 265: System and Network Administration

CSE 265: System and Network Administration CSE 265: System and Network Administration MW 1:10-2:00pm Maginnes 105 http://www.cse.lehigh.edu/~brian/course/sysadmin/ Find syllabus, lecture notes, readings, etc. Instructor: Prof. Brian D. Davison

More information

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.

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

More information

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson CS 3530 Operating Systems L02 OS Intro Part 1 Dr. Ken Hoganson Chapter 1 Basic Concepts of Operating Systems Computer Systems A computer system consists of two basic types of components: Hardware components,

More information

Embedded Linux development training 4 days session

Embedded Linux development training 4 days session Embedded Linux development training 4 days session Title Overview Duration Trainer Language Audience Prerequisites Embedded Linux development training Understanding the Linux kernel Building the Linux

More information

Operating Systems 4 th Class

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

More information

Chapter 3: Operating-System Structures. Common System Components

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

More information

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? 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,

More information

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. 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

More information

OPERATING SYSTEM SERVICES

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

More information

Operating System Structures

Operating System Structures Operating System Structures Meelis ROOS mroos@ut.ee Institute of Computer Science Tartu University fall 2009 Literature A. S. Tanenbaum. Modern Operating Systems. 2nd ed. Prentice Hall. 2001. G. Nutt.

More information

OS Concepts and structure

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

More information

CPS221 Lecture: Operating System Structure; Virtual Machines

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

More information

Operating System Components

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

More information

Linux Kernel Architecture

Linux Kernel Architecture Linux Kernel Architecture Amir Hossein Payberah payberah@yahoo.com Contents What is Kernel? Kernel Architecture Overview User Space Kernel Space Kernel Functional Overview File System Process Management

More information

4.1 Introduction 4.2 Explain the purpose of an operating system 4.2.1 Describe characteristics of modern operating systems Control Hardware Access

4.1 Introduction 4.2 Explain the purpose of an operating system 4.2.1 Describe characteristics of modern operating systems Control Hardware Access 4.1 Introduction The operating system (OS) controls almost all functions on a computer. In this lecture, you will learn about the components, functions, and terminology related to the Windows 2000, Windows

More information

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. 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

More information

CSE 265: System and Network Administration. CSE 265: System and Network Administration

CSE 265: System and Network Administration. CSE 265: System and Network Administration CSE 265: System and Network Administration MW 9:10-10:00am Packard 258 F 9:10-11:00am Packard 112 http://www.cse.lehigh.edu/~brian/course/sysadmin/ Find syllabus, lecture notes, readings, etc. Instructor:

More information

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 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

More information

Outline. Operating Systems Design and Implementation. Chap 1 - Overview. What is an OS? 28/10/2014. Introduction

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

More information

ELEC 377. Operating Systems. Week 1 Class 3

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

More information

3 - Introduction to Operating Systems

3 - Introduction to Operating Systems 3 - Introduction to Operating Systems Mark Handley What is an Operating System? An OS is a program that: manages the computer hardware. provides the basis on which application programs can be built and

More information

Software: Systems and Application Software

Software: Systems and Application Software Software: Systems and Application Software Computer Software Operating System Popular Operating Systems Language Translators Utility Programs Applications Programs Types of Application Software Personal

More information

Operating Systems (Linux)

Operating Systems (Linux) G51CSA Computer Systems Architecture Operating Systems (Linux) Red Hat Jon Masters About the speaker Jon Masters is a Senior Software Engineer at Red Hat History in embedded devices with

More information

Understanding the OS Architecture and Linux History. Zhiqiang Lin

Understanding the OS Architecture and Linux History. Zhiqiang Lin CS 6V81-05: System Security and Malicious Code Analysis Understanding the OS Architecture and Linux History Zhiqiang Lin Department of Computer Science University of Texas at Dallas February 15 th, 2012

More information

CS161: Operating Systems

CS161: Operating Systems CS161: Operating Systems Matt Welsh mdw@eecs.harvard.edu Lecture 2: OS Structure and System Calls February 6, 2007 1 Lecture Overview Protection Boundaries and Privilege Levels What makes the kernel different

More information

CS197U: A Hands on Introduction to Unix

CS197U: A Hands on Introduction to Unix CS197U: A Hands on Introduction to Unix Lecture 4: My First Linux System J.D. DeVaughn-Brown University of Massachusetts Amherst Department of Computer Science jddevaughn@cs.umass.edu 1 Reminders After

More information

Chapter 10 Case Study 1: LINUX

Chapter 10 Case Study 1: LINUX MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 10 Case Study 1: LINUX History of UNIX and Linux UNICS PDP-11 UNIX Portable UNIX Berkeley UNIX Standard UNIX MINIX Linux UNIX/Linux Goals

More information

CHAPTER 15: Operating Systems: An 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

More information

Red Hat Linux Internals

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

More information

Virtualization for Cloud Computing

Virtualization for Cloud Computing Virtualization for Cloud Computing Dr. Sanjay P. Ahuja, Ph.D. 2010-14 FIS Distinguished Professor of Computer Science School of Computing, UNF CLOUD COMPUTING On demand provision of computational resources

More information

Operating System Organization. Purpose of an OS

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

More information

CS420: Operating Systems OS Services & System Calls

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,

More information

Fall 2009. Lecture 1. Operating Systems: Configuration & Use CIS345. Introduction to Operating Systems. Mostafa Z. Ali. mzali@just.edu.

Fall 2009. Lecture 1. Operating Systems: Configuration & Use CIS345. Introduction to Operating Systems. Mostafa Z. Ali. mzali@just.edu. Fall 2009 Lecture 1 Operating Systems: Configuration & Use CIS345 Introduction to Operating Systems Mostafa Z. Ali mzali@just.edu.jo 1-1 Chapter 1 Introduction to Operating Systems An Overview of Microcomputers

More information

CSE 265: System and Network Administration. CSE 265: System and Network Administration

CSE 265: System and Network Administration. CSE 265: System and Network Administration CSE 265: System and Network Administration WF 9:10-10:00am Packard 258 M 9:10-11:00am Packard 112 http://www.cse.lehigh.edu/~brian/course/sysadmin/ Find syllabus, lecture notes, readings, etc. Instructor:

More information

Computers: Tools for an Information Age

Computers: Tools for an Information Age Computers: Tools for an Information Age Chapter 3 Operating Systems: Software in the Background Objectives of Chapter 3 Describe the functions of an Operating System Explain the basics of a personal computer

More information

Chapter 2 System Structures

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

More information

Networking Operating Systems (CO32010)

Networking Operating Systems (CO32010) Networking Operating Systems (CO32010) 2. Processes and scheduling 1. Operating Systems 1.1 NOS definition and units 1.2 Computer 7. Encryption Systems 1.3 Multitasking and Threading 1.4 Exercises 6. Routers

More information

How to Install and Run Tibia on Linux Using Wine without Windows Contents

How to Install and Run Tibia on Linux Using Wine without Windows Contents How to Install and Run Tibia on Linux Using Wine without Windows Contents 1 Disclaimer 2 Overview/Background Information 3 Pre-requirements 4 Installing Wine 4.1 Get to know the environment 4.2 The easiest

More information

Chapter 3. Operating Systems

Chapter 3. Operating Systems Christian Jacob Chapter 3 Operating Systems 3.1 Evolution of Operating Systems 3.2 Booting an Operating System 3.3 Operating System Architecture 3.4 References Chapter Overview Page 2 Chapter 3: Operating

More information

Tools Page 1 of 13 ON PROGRAM TRANSLATION. A priori, we have two translation mechanisms available:

Tools Page 1 of 13 ON PROGRAM TRANSLATION. A priori, we have two translation mechanisms available: Tools Page 1 of 13 ON PROGRAM TRANSLATION A priori, we have two translation mechanisms available: Interpretation Compilation On interpretation: Statements are translated one at a time and executed immediately.

More information

(Advanced Topics in) Operating Systems

(Advanced Topics in) Operating Systems (Advanced Topics in) Operating Systems Winter Term 2008 / 2009 Prof. Dr. André Brinkmann Andre.Brinkmann@uni-paderborn.de Universität Paderborn PC² Organization Schedules: Lectures: Thursday 9:00 11:00

More information

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 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

More information

Chapter 3 Operating-System Structures

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

More information

Operating System Software

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.

More information

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

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

More information

Chapter 5: System Software: Operating Systems and Utility Programs

Chapter 5: System Software: Operating Systems and Utility Programs Understanding Computers Today and Tomorrow 12 th Edition Chapter 5: System Software: Operating Systems and Utility Programs Learning Objectives Understand the difference between system software and application

More information

SYSTEM ecos Embedded Configurable Operating System

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

More information

EXPLORING LINUX KERNEL: THE EASY WAY!

EXPLORING LINUX KERNEL: THE EASY WAY! EXPLORING LINUX KERNEL: THE EASY WAY! By: Ahmed Bilal Numan 1 PROBLEM Explore linux kernel TCP/IP stack Solution Try to understand relative kernel code Available text Run kernel in virtualized environment

More information

Performance Comparison of RTOS

Performance Comparison of RTOS Performance Comparison of RTOS Shahmil Merchant, Kalpen Dedhia Dept Of Computer Science. Columbia University Abstract: Embedded systems are becoming an integral part of commercial products today. Mobile

More information

CSC230 Getting Starting in C. Tyler Bletsch

CSC230 Getting Starting in C. Tyler Bletsch CSC230 Getting Starting in C Tyler Bletsch What is C? The language of UNIX Procedural language (no classes) Low-level access to memory Easy to map to machine language Not much run-time stuff needed Surprisingly

More information

Operating Systems. Lecture 03. February 11, 2013

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

More information

Chapter 1: Introduction. What is an Operating System?

Chapter 1: Introduction. What is an Operating System? Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real -Time Systems Handheld Systems Computing Environments

More information

Embedded Software Development

Embedded Software Development Linköpings Tekniska Högskola Institutionen för Datavetanskap (IDA), Software and Systems (SaS) TDDI11, Embedded Software 2010-04-22 Embedded Software Development Host and Target Machine Typical embedded

More information

Chapter 11 I/O Management and Disk Scheduling

Chapter 11 I/O Management and Disk Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 11 I/O Management and Disk Scheduling Dave Bremer Otago Polytechnic, NZ 2008, Prentice Hall I/O Devices Roadmap Organization

More information

Process Description and Control. 2004-2008 william stallings, maurizio pizzonia - sistemi operativi

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

More information

2011 Information Technology HSC Examination Sample Answers

2011 Information Technology HSC Examination Sample Answers 2011 Information Technology HSC Examination Sample Answers When examination committees develop questions for the examination, they may write sample answers or, in the case of some questions, answers could

More information

Operating System Overview. Otto J. Anshus

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

More information

REAL TIME OPERATING SYSTEM PROGRAMMING-II: II: Windows CE, OSEK and Real time Linux. Lesson-12: Real Time Linux

REAL TIME OPERATING SYSTEM PROGRAMMING-II: II: Windows CE, OSEK and Real time Linux. Lesson-12: Real Time Linux REAL TIME OPERATING SYSTEM PROGRAMMING-II: II: Windows CE, OSEK and Real time Linux Lesson-12: Real Time Linux 1 1. Real Time Linux 2 Linux 2.6.x Linux is after Linus Torvalds, father of the Linux operating

More information

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 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

More information

Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No. # 26 Real - Time POSIX. (Contd.) Ok Good morning, so let us get

More information

Chapter 6, The Operating System Machine Level

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

More information

Embedded Systems. 6. Real-Time Operating Systems

Embedded Systems. 6. Real-Time Operating Systems Embedded Systems 6. Real-Time Operating Systems Lothar Thiele 6-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic

More information

PARALLELS SERVER 4 BARE METAL README

PARALLELS SERVER 4 BARE METAL README PARALLELS SERVER 4 BARE METAL README This document provides the first-priority information on Parallels Server 4 Bare Metal and supplements the included documentation. TABLE OF CONTENTS 1 About Parallels

More information

DTC & DTC-Xen Running a VPS business with Xen Thomas Goirand, GPLHost CEO. Xen Summit Asia at Intel 2009

DTC & DTC-Xen Running a VPS business with Xen Thomas Goirand, GPLHost CEO. Xen Summit Asia at Intel 2009 , GPLHost CEO Xen Summit Asia at Intel 2009 Overview 1/ Global VPS hosting market & GPLHost 2/ Why an open source panel makes sense 3/ technical briefing 4/ Challenges to overcome Xen Summit Asia 2009

More information

COS 318: Operating Systems

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

More information

Advanced Operating Systems (263 3800 00L)

Advanced Operating Systems (263 3800 00L) Advanced Operating Systems (263 3800 00L) Timothy Roscoe Fall 2014 https://www.systems.ethz.ch/courses/fall2014/aos Systems Group Department of Computer Science ETH Zürich 1 Week 3: OS Architecture, Threads,

More information

CS3600 SYSTEMS AND NETWORKS

CS3600 SYSTEMS AND NETWORKS CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 2: Operating System Structures Prof. Alan Mislove (amislove@ccs.neu.edu) Operating System Services Operating systems provide an environment for

More information

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

More information

Uses for Virtual Machines. Virtual Machines. There are several uses for virtual machines:

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

More information

1/5/2013. Technology in Action

1/5/2013. Technology in Action 0 1 2 3 4 5 6 Technology in Action Chapter 5 Using System Software: The Operating System, Utility Programs, and File Management Chapter Topics System software basics Types of operating systems What the

More information

Going Linux on Massive Multicore

Going Linux on Massive Multicore Embedded Linux Conference Europe 2013 Going Linux on Massive Multicore Marta Rybczyńska 24th October, 2013 Agenda Architecture Linux Port Core Peripherals Debugging Summary and Future Plans 2 Agenda Architecture

More information

RELIABLE OPERATING SYSTEMS

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

More information

Security Overview of the Integrity Virtual Machines Architecture

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

More information

OPERATING SYSTEMS Software in the Background. Chapter 2

OPERATING SYSTEMS Software in the Background. Chapter 2 OPERATING SYSTEMS Software in the Background Chapter 2 Objectives Describe the functions of an Operating System Explain the basics of a personal computer operating system Describe the advantages of a graphical

More information

System Calls. 2.1! Silberschatz, Galvin and Gagne 2013! Operating System Concepts Essentials 2 nd Edition!

System Calls. 2.1! Silberschatz, Galvin and Gagne 2013! Operating System Concepts Essentials 2 nd Edition! System Calls Programming interface to the services provided by the OS" Typically written in a high-level language (C or C++)" Mostly accessed by programs via a high-level Application Programming Interface

More information

IBM Software Group. Lotus Domino 6.5 Server Enablement

IBM Software Group. Lotus Domino 6.5 Server Enablement IBM Software Group Lotus Domino 6.5 Server Enablement Agenda Delivery Strategy Themes Domino 6.5 Server Domino 6.0 SmartUpgrade Questions IBM Lotus Notes/Domino Delivery Strategy 6.0.x MRs every 4 months

More information

Operating System Tutorial

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

More information

Software. Programming Language. Software. Instructor Özgür ZEYDAN. Bülent Ecevit University Department of Environmental Engineering

Software. Programming Language. Software. Instructor Özgür ZEYDAN. Bülent Ecevit University Department of Environmental Engineering Computer Bülent Ecevit University Department of Environmental Engineering Case & Inside units Hardware Peripherals Operating Systems Application : Instructions for the computer. A series of instructions

More information

An Implementation Of Multiprocessor Linux

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

More information

Operating Systems OS Architecture Models

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

More information

Outline: Operating Systems

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)

More information

Design and Implementation of the Heterogeneous Multikernel Operating System

Design and Implementation of the Heterogeneous Multikernel Operating System 223 Design and Implementation of the Heterogeneous Multikernel Operating System Yauhen KLIMIANKOU Department of Computer Systems and Networks, Belarusian State University of Informatics and Radioelectronics,

More information

Linux Driver Devices. Why, When, Which, How?

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

More information

Technology in Action. Alan Evans Kendall Martin Mary Anne Poatsy. Eleventh Edition. Copyright 2015 Pearson Education, Inc.

Technology in Action. Alan Evans Kendall Martin Mary Anne Poatsy. Eleventh Edition. Copyright 2015 Pearson Education, Inc. Technology in Action Alan Evans Kendall Martin Mary Anne Poatsy Eleventh Edition Technology in Action Chapter 4 System Software: The Operating System, Utility Programs, and File Management. Chapter Topics

More information

Lesson 06: Basics of Software Development (W02D2

Lesson 06: Basics of Software Development (W02D2 Lesson 06: Basics of Software Development (W02D2) Balboa High School Michael Ferraro Lesson 06: Basics of Software Development (W02D2 Do Now 1. What is the main reason why flash

More information

System Requirements and Platform Support Guide

System Requirements and Platform Support Guide Foglight 5.6.7 System Requirements and Platform Support Guide 2013 Quest Software, Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in

More information

Lecture 25 Symbian OS

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

More information

The Plan Today... System Calls and API's Basics of OS design Virtual Machines

The Plan Today... System Calls and API's Basics of OS design Virtual Machines System Calls + The Plan Today... System Calls and API's Basics of OS design Virtual Machines System Calls System programs interact with the OS (and ultimately hardware) through system calls. Called when

More information

Encryption Wrapper. on OSX

Encryption Wrapper. on OSX Encryption Wrapper on OSX Overview OSX Kernel What is an Encryption Wrapper? Project Implementation OSX s Origins and Design NeXTSTEP Legacy NextStep v1 NextStep v3.3 Mac OS X Jobs creates NeXT Apple acquisition

More information