(Advanced) Operating Systems - Introduction
Transcription
(Advanced) Operating Systems - Introduction
(Advanced) Operating Systems Introduction Kevin Marquet INSA Lyon / IF CITI Lab/INRIA Socrate September 2014 Kevin Marquet In brief I Associate professor I INRIA Socrate team, Lyon Research : I I I Memory management ; Embedded systems. Link : http://kevinmarquet.net/teaching/ operating-systems/systeme-dexploitation-avances/ Semester organization I Lectures + practical works I General theme : hardware management by computer systems (i.e Operating systems) I Contact : Kevin. Marquet@ insa-lyon. fr Details Lectures: I Slides ; questions ; exercises ; readings ; I Questions →Is this recognizable ? I Concept ; I To read: Les quatre concepts de l’informatique. G. Dowek I I Questions in the various exams ; Figures: NYI Practical works: I Implementation of a mini-OS... I ...on a Raspberry Pi ! I First : 4 sessions in teams of 2 I Then, work in teams of 6. Project : detail Timer + Gestionnaire d’interruptions Ordonnanceur collaboratif. Gestionnaire de mémoire physique Ordonnanceur collaboratif avec terminaison des processus Gestionnaire de mémoire virtuelle simple Ordonnanceur preemptif (round-robin) Ordonnanceur <que vous voulez> t Ordonnanceur préemptif à priorités fixes Appel système Malloc / Free Fichier mappé en mémoire mini-OS seulement Sauvegarde et restauration d’un contexte d’exécution. Boot loader Système de fichiers Isolation de processus Fork() Swapping Mémoire partagée I/O controller Network stack Shell Evaluation I Learning outcomes: I I I I Note de l’UE : 0.6 x <Note DS> +0.4x <Note TP> <Note DS> : I I I I (IF reference document); Curricula ACM/IEEE : widely used, exhaustive, smart people; QCM sur moodle en octobre QCM sur moodle en décembre DS en Janvier <Note TP>: I I sessions in teams of 2 : validation of each exercise by teachers ; 1-hour oral during the last session, in teams of 6. NB: “Assistance” every monday 13h-14h Operating Systems - definition An operating system is a program that: I manages a computer’s hardware : CPU, memory, I/O devices. I provides an abstraction of the hardware to applications/users. I Non precise definition. I I I Various goals : efficiency, conveniency... Various OS : Androı̈d, iOS, Linux, VMWare... Various mechanisms in the kernel : bootstrap, interrupts, system calls, virtual memory, demand paging, processes, threads, scheduler, dispatcher, swapping, drivers, privileges, user/group identifiers, file system, synchronization, TCP/IP stack... Operating Systems - definition (Kernel space / User space) Agenda 1. Intro – OS design – Process dispatching 2. Scheduling 3. Memory Management 4. Memory Management and System calls 5. Virtual machines 6. Lecture from external people ? 7. Lecture from external people ?