MINIX 3 – Introduction Béat Hirsbrunner Lecture 1, 18 September 2012 Main reference Andrew S. Tanenbaum, Albert S. Woodhull Operating Systems : Design.

Slides:



Advertisements
Similar presentations
Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc
Advertisements

Threads, SMP, and Microkernels
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
Computer Systems/Operating Systems - Class 8
Operating System Structure. Announcements Make sure you are registered for CS 415 First CS 415 project is up –Initial design documents due next Friday,
Process management in Minix1 Processes Process is a program in execution. Program is a static entity while process is an active entity. Process Control.
1/28/2004CSCI 315 Operating Systems Design1 Operating System Structures & Processes Notice: The slides for this lecture have been largely based on those.
Figure 1.1 Interaction between applications and the operating system.
Operating Systems Béat Hirsbrunner Main Reference: William Stallings, Operating Systems: Internals and Design Principles, 6 th Edition, Prentice Hall 2009.
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
MicrokernelsCS-502 (EMC) Fall Microkernels CS-502, Operating Systems Fall 2009 (EMC) (Slides include materials from Modern Operating Systems, 3 rd.
1 Input/Output Chapter 3 TOPICS Principles of I/O hardware Principles of I/O software I/O software layers Disks Clocks Reference: Operating Systems Design.
MINIX Operating System Presented by: Pravendra Lohiya.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Chapter 2: Operating-System Structures Modified from the text book.
Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System.
Stack Management Each process/thread has two stacks  Kernel stack  User stack Stack pointer changes when exiting/entering the kernel Q: Why is this necessary?
Chapter 2 Operating System Overview Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 11 Case Study 2: Windows Vista Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
Minix Jeff Ward, Robert Burghart, Jeb Collins, Joe Creech.
UNIX System Administration OS Kernal Copyright 2002, Dr. Ken Hoganson All rights reserved. OS Kernel Concept Kernel or MicroKernel Concept: An OS architecture-design.
Operating Systems Lecture 4. Agenda for Today Review of previous lecture Operating system structures Operating system design and implementation UNIX/Linux.
WEEK 1 COURSE INTRODUCTION INTRODUCTION TO OPERATING SYSTEMS OPERATING SYSTEM STRUCTURES Operating Systems CS3013 / CS502.
ICOM Noack Operating Systems - Administrivia Prontuario - Please time-share and ask questions Info is in my homepage amadeus/~noack/ Make bookmark.
Chapter 2: Operating-System Structures. 2.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 14, 2005 Operating System.
Kernel, processes and threads Windows and Linux. Windows Architecture Operating system design Modified microkernel Layered Components HAL Interacts with.
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
Introduction to Operating Systems Chapter 1. cs431 -cotter2 Lecture Objectives Understand the relationship between computing hardware, operating system,
Fall 2000M.B. Ibáñez Lecture 01 Introduction What is an Operating System? The Evolution of Operating Systems Course Outline.
Chapter 2 Operating System Overview
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 1 Introduction Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Operating Systems Overview Part 2: History (continued)
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
Slide 3-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 3.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
LINUX System : Lecture 7 Bong-Soo Sohn Lecture notes acknowledgement : The design of UNIX Operating System.
OSes: 3. OS Structs 1 Operating Systems v Objectives –summarise OSes from several perspectives Certificate Program in Software Development CSE-TC and CSIM,
Processes Introduction to Operating Systems: Module 3.
UNIX Operating Systems and Kernels Presented By: Walter Haynes April 26, 2007.
1 Threads, SMP, and Microkernels Chapter Multithreading Operating system supports multiple threads of execution within a single process MS-DOS.
UNIX Unit 1- Architecture of Unix - By Pratima.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
1.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Lecture 2: OS Structures (Chapter 2.7)
CSC414 “Introduction to UNIX/ Linux” Lecture 2. Schedule 1. Introduction to Unix/ Linux 2. Kernel Structure and Device Drivers. 3. System and Storage.
Operating-System Structures
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Chapter 2 Operating System Overview Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
Microkernel Systems - Jatin Lodhia. What is Microkernel A microkernel is a minimal computer operating system kernel which, in its purest form, provides.
CENG334 Introduction to Operating Systems 1 Erol Sahin Dept of Computer Eng. Middle East Technical University Ankara, TURKEY URL:
2.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition System Programs (p73) System programs provide a convenient environment.
MINIX Presented by: Clinton Morse, Joseph Paetz, Theresa Sullivan, and Angela Volk.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Operating System Structure Lecture: - Operating System Concepts Lecturer: - Pooja Sharma Computer Science Department, Punjabi University, Patiala.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved OPERATING SYSTEMS DESIGN.
Introduction to Operating Systems Concepts
Operating System Structures
OPERATING SYSTEMS DESIGN AND IMPLEMENTATION Third Edition ANDREW S
Operating System Structure
KERNEL ARCHITECTURE.
MODERN OPERATING SYSTEMS Third Edition ANDREW S
Operating Systems Lecture 4.
Chapter 3: Operating-System Structures
Operating System Structure
Linux Architecture Overview.
Outline Chapter 2 (cont) OS Design OS structure
LINUX System : Lecture 7 Lecture notes acknowledgement : The design of UNIX Operating System.
Outline Operating System Organization Operating System Examples
System calls….. C-program->POSIX call
Lecture 10 review Booting sequence in Brief
Presentation transcript:

MINIX 3 – Introduction Béat Hirsbrunner Lecture 1, 18 September 2012 Main reference Andrew S. Tanenbaum, Albert S. Woodhull Operating Systems : Design and Implementation (The MINIX Book) Prentice Hall, Third Edition, 2009 IN.5012 Operating Systems University of Fribourg, Bachelor Course, 5 th Semester, Autumn Semester 2012 MINIX 3 mascot

Unix and Minix History 1970 : C + Unix (Kernigham and Ritchie, AT&T) Design of a simple programming language and operating system 1984 : AT&T is privatized and Unix is no longer open source ! 1984 – 1994 : MACH (USA) and Chorus (France) OS projects Focus: modular, distributed 1987 : MINIX (Tanenbaum) Focus : education and open source 1994 : Linux (Linus Torvalds) Focus : performance and open source; multi-developers 1997 : MINIX 2 (Tanenbaum) Focus : same as Minix, complete redesign and implementation 2006 : MINIX 3 (Tanenbaum and Woodhull) Focus : same as Minix + embedded system (reliability, …) 2

MINIX 3 MINIX : Mini-Unix Unix-like operating system based on a microkernel architecture Open source : intend to be studied in universities  Very small (kernel is under 4000 lines)  Simple  Design to be readable (thousands of comments) Written in C, with some very small parts in assembly language Highly modular Reliable and secure (needed in embedded system !) 3

Computer Hardware Review Figure 1-6. Some of the components of a simple personal computer Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved

MINIX internal Structure 5 5 Fig Minix 3 is structured in four layers  Each module is executed as a process  Communication between processes are done with the rendez-vous message passing mechanism (with very few exceptions: some system calls and all interrupts)

MINIX internal Structure Privileges  Layer 2 and 3 have privileges to make kernel calls, but not layer 4 Kernel module (layer 1)  Schedules processes, and manages the transitions between the ready, running and blocked states  Handles all messages between processes  Access to I/O ports and interrupts Layer 2: Device drivers  A driver is needed for each device type, it has access to I/O ports Layer 3: Server providing useful services  Process manager (PM) and file system (FS) servers are essential  Minix 3 has a very simple main memory management: no virtual memory, no swap ! It is possible that in a future release PM (memory mngt associated to process/thread) and MM (virtual memory mngt) will be separated. 6 6

Interprocess Communication Three primitives to send and receive messages  send(dest, &message);  receive(source, &message);  sendrec(src_dst, &message); Provided by a C library mechanism inside the kernel Rendez-vous principle Messages passing 7 7

MINIX startup Boot program  The boot image defines the processes to load in memory  Init is the last process to be executed in the boot sequence Process tree  Process Manager has pid 0  Init is the first user process and ancestor of all users processes  Kernel, system and clock tasks are not in process tree 8 8

Organization of the Source Code src/kernel– layer 1 (scheduling, messages and system tasks) src/drivers– layer 2 (device drivers for disk, console, printer, …) src/servers– layer 3 (process mngr, file system, other servers)¨ scr/lib – source code for library procedures (open, read, …) scr/tools– Make file and scripts for building the Minix3 system scr/boot– the code for booting and installing Minix 3 … Each directory has its own Makefile Run make inside /usr/src/tools 9 9

References A. S. Tanenbaum, A. S. Woodhull : « Operating Systems : Design and Implementation (The Minix Book) », Third Edition, Prentice Hall, en.wikipedia.org/wiki/Unix en.wikipedia.org/wiki/Minix en.wikipedia.org/wiki/POSIX en.wikipedia.org/wiki/Application_programming_interface 10