Advanced Operating Systems

Giuseppe CATTANEO Advanced Operating Systems

0522500066
DIPARTIMENTO DI INFORMATICA
EQF7
COMPUTER SCIENCE
2018/2019



YEAR OF COURSE 1
YEAR OF DIDACTIC SYSTEM 2016
SECONDO SEMESTRE
CFUHOURSACTIVITY
756LESSONS
216LAB
Objectives
KNOWLEDGE AND UNDERSTANDING

THE MAIN GOAL OF THE COURSE IS TO PROVIDE THE STUDENTS WITH:

- A COMPREHENSIVE OVERVIEW ON MODERN OPERATING SYSTEMS DEVELOPED ON THE CONCEPT OF MICRO-KERNEL FOR MULTIPROCESSOR ARCHITECTURES (SMP)

- TAXONOMY OF THE PARALLEL ARCHITECTURES AND THE MODERN SYSTEMS FOR HIGH PERFORMANCE COMPUTING

- INTRODUCTION OF GRID AND CLOUD COMPUTING, TRACKING THE EVOLUTION OF THE OPERATING SYSTEM MODULES FROM THE FIRST SPECIAL PURPOSE PARALLEL SYSTEM TO THE MODERN DATA CENTERS

- HOW THE MAIN MODULES OF THE OPERATING SYSTEM HAS BEEN MODIFIED TO COPE WITH PARALLELISM (MULTICORE AND SHARED MEMORY)

- APPROACHES TO VIRTUALIZATION: FULL AND PARA VIRTUALIZATION

- DISTRIBUTED FILE SYSTEMS AND HIGH THROUGHPUT FILE SYSTEMS FOR DISTRIBUTED SYSTEM TO MANAGE BIG DATA (GOOGLE FILE SYSTEM)

APPLYING KNOWLEDGE AND UNDERSTANDING

- INSTALLATION, CONFIGURATION AND ADMINISTRATION OF A CLUSTER BASED ON COMMODITY PERSONAL COMPUTER AND THE MIDDLEWARE HADOOP

- DESIGN AND IMPLEMENTATION OF DISTRIBUTED APPLICATION BASED ON THE MAPREDUCE PARADIGM

- CONFIGURATION AND OPTIMIZATION OF A DISTRIBUTED FILE SYSTEM

- CONFIGURATION AND MANAGEMENT OF A PHYSICAL SERVER TO RUN SEVERAL VIRTUAL MACHINES
Prerequisites
THE STUDENT NEEDS TO KNOW THE ARCHITECTURE OF COMPUTER SYSTEMS, TRADITIONAL OPERATING SYSTEMS, THE C PROGRAMMING LANGUAGE AND THE JAVA PROGRAMMING LANGUAGE.
Contents
HOURS OF LECTURES: 48
LABORATORY HOURS: 36
THE COURSE IS DIVIDED INTO 4 PARTS:

THE FIRST PART IS DEVOTED TO A BRIEF REVIEW OF THE TRADITIONAL APPROACH TO OPERATING SYSTEM DESIGN FOR SINGLE PROCESSOR BASED ARCHITECTURES, REDISCUSSING SOLUTIONS FOR PROCESS SYNCHRONIZATION AND DEADLOCK MANAGEMENT. THE LIMITS AND THE MAIN PROBLEMS THAT RISE WHEN MOVING TO MULTIPROCESSOR ARCHITECTURES WILL BE ANALYZED.

THE SECOND PART INTRODUCES MULTIPROCESSOR SYSTEMS PRESENTING DIFFERENT TECHNIQUES OR SOLUTIONS FOR DESIGNING AN OPERATING SYSTEM FOR MULTIPROCESSOR SYSTEMS SHOWING ITS MAIN CHARACTERISTICS AND PROBLEMS. ATTENTION WILL BE PAYED TO THE EFFICIENT MANAGEMENT OF MULTITHREADING. FINALLY, THE TECHNIQUES FOR RE-ENGINEERING THE OLD MONOLITHIC KERNELS WILL BE DISCUSSED.

THE THIRD PART INTRODUCES SOLUTIONS TO MANAGE DISTRIBUTED STORAGE. THE MAIN GOAL OF THIS PART OF THE COURSE IS THE INTRODUCTION OF THE HIGH PERFORMANCE (SCALABLE) DISTRIBUTED FILE SYSTEM KNOWN AS GOOGLE FILE SYSTEM OR THE HADOOP INSTANCE (HDFS). THE FOLLOWING CONCEPTS WILL BE PRESENTED: RELIABILITY, CAPACITY, ACCESSIBILITY, CACHING, LOW BANDWIDTH ALONG WITH THEIR STANDARD DE FACTO: RAID, NFS, CODA, AFS.

THE LAST PART WILL BE DEVOTED TO VIRTUALIZATION, INTRODUCING THE TWO MAIN TECHNIQUES BASED TO POPULAR IMPLEMENTATIONS (MARKET PRODUCTS): XEN FOR PARA VIRTUALIZATION AND VMWARE FOR FULL VIRTUALIZATION.

ONCE INTRODUCED THE CONCEPT OF DISTRIBUTED SYSTEMS AND GRID COMPUTING IN THE LABORATORY WILL BE PRESENTED AND PUT IN OPERATION THE PACKAGE HADOOP BY APACHEOSF, INSTALLING ONE INSTANCE ON EACH PC AND THUS CREATING A SMALL COMPUTATIONAL GRID ON WHICH TO EXPERIMENT AND MEASURE PERFORMANCE (SCALABILITY) OF PROJECTS CARRIED OUT BY THE SAME GROUPS OF STUDENTS WHO HAVE CHOSEN THIS MODE OF EXAMINATION.
Teaching Methods
THE COURSE OF ADVANCED OPERATING SYSTEM INCLUDES THEORETICAL LECTURES FOR THE TRANSFER OF KNOWLEDGE ABOUT SOLUTIONS COMING FROM BASIC RESEARCH IN THE FIELD OF OPERATING SYSTEMS AND PRACTICAL SESSIONS IN THE LABORATORY FOR THE TESTING AND THE EXPERIMENTAL EVALUATION OF THE PERFORMANCE OF THE SOLUTIONS IMPLEMENTED DURING THE DEVELOPEMENT PROJECTS CARRIED OUT BY GROUPS OF STUDENTS.
Verification of learning
EACH STUDENT CAN CHOOSE BETWEEN TWO MODES OF EVALUATION:

- THE FIRST INVOLVES THE REGULAR PARTICIPATION IN CLASS, A CLASS TALK FOR THE THEORETICAL PRESENTATION OF A SELECTION OF SCIENTIFIC ARTICLES. MOREOVER A SPECIFIC PROJECT WILL BE ASSIGNED TO EACH GROUP AT MID TERM WHOSE RESULTS WILL BE PRESENTED IN A SMALL DOCUMENT.
IN THIS CASE STUDENTS WILL BE EVALUATED ALSO ON THEIR TEACHING SKILL, CLARITY OF THE PRESENTATION AND SYNTHESIS ABILITY

- THE SECOND MODE IS THE TRADITIONAL INTERVIEW EXAMINATION (AFTER A WRITTEN TEST) DURING WHICH THE STUDENT WILL PRESENT ITS KNOWLEDGE ON THE COURSE TOPICS.
IN THIS CASE FOR THE THEORETICAL ASPECTS STUDENTS SHOULD PROVE THEIR ABILITY OF MAKING CHOICES NECESSARY TO PRESENT AND MOTIVATE THE SOLUTIONS PRESENTED.
DUE TO THE WIDE RANGE OF TOPICS OF THE COURSE SYNTHESIS SKILLS AND THE ABILITY TO IDENTIFY SPECIFIC SOLUTIONS TO REAL PROBLEMS WILL BE PARTICULARLY APPRECIATED.
THE LAB BASED CONTENTS WILL BE ASSESSED ON THE BASIS OF OPTIMALITY OF THE CHOICES MADE IN THE DESIGN AND IMPLEMENTATION OF THE SOLUTION RELIZED BY THE STUDENTS.
Texts
LIST OF SELECTED PAPERS:

THOMAS E. ANDERSON ET AL., SERVERLESS NETWORK FILE SYSTEMS. PAGES 41-79, 1996
ANDREW W. APPEL AND KAI LI. VIRTUAL MEMORY PRIMITIVES FOR USER PROGRAMS. IN ASPLOS, PAGES 96-107, 1991
PAUL BARHAM ET AL., XEN AND THE ART OF VIRTUALIZATION. IN SOSP, PAGES 164-177, 2003
ANDREW BAUMANN ET AL., THE MULTIKERNEL: A NEW OS ARCHITECTURE FOR SCALABLE MULTICORE SYSTEMS. IN PROCEEDINGS OF THE ACM SIGOPS 22ND SYMPOSIUM ON OPERATING SYSTEMS PRINCIPLES, SOSP '09, PAGES 29-44, NEW YORK, NY, USA, 2009 ACM
BRIAN N. BERSHAD ET AL., EXTENSIBILITY, SAFETY AND PERFORMANCE IN THE SPIN OPERATING SYSTEM. IN SOSP, PAGES 267-284, 1995
EDOUARD BUGNION ET AL. DISCO: RUNNING COMMODITY OPERATING SYSTEMS ON SCALABLE MULTIPROCESSORS. IN SOSP, PAGES 143-156, 1997
GIUSEPPE CATTANEO, LUIGI CATUOGNO, ANIELLO DEL SORBO, AND PINO PERSIANO. THE DESIGN AND IMPLEMENTATION OF A TRANSPARENT CRYPTOGRAPHIC FILESYSTEM FOR UNIX. IN USENIX ANNUAL TECHNICAL CONFERENCE, FREENIX TRACK, PAGES 199-212, 2001
MICHAEL DAHLIN ET AL. COOPERATIVE CACHING: USING REMOTE CLIENT MEMORY TO IMPROVE FILE SYSTEM PERFORMANCE. IN OSDI, PAGES 267-280, 1994
MATT DEBERGALIS ET AL. THE DIRECT ACCESS FILE SYSTEM. IN FAST, 2003
DAWSON R. ENGLER, M. FRANS KAASHOEK, AND JAMES O'TOOLE. EXOKERNEL: AN OPERATING SYSTEM ARCHITECTURE FOR APPLICATION-LEVEL RESOURCE MANAGEMENT. IN SOSP, PAGES 251-266, 1995
BENJAMIN GAMSA, ORRAN KRIEGER, JONATHAN APPAVOO, AND MICHAEL STUMM. TORNADO: MAXIMIZING LOCALITY AND CONCURRENCY IN A SHARED MEMORY MULTIPROCESSOR OPERATING SYSTEM. IN OSDI, PAGES 87-100, 1999
SANJAY GHEMAWAT ET AL. THE GOOGLE FILE SYSTEM. IN SOSP, PAGES 29-43, 2003
JEFFREY DEAN AND SANJAY GHEMAWAT. MAPREDUCE: SIMPLIFIED DATA PROCESSING ON LARGE CLUSTERS. IN OSDI, PAGES 137-150, 2004
GARTH A. GIBSON ET AL., A COST-EFFECTIVE, HIGH-BANDWIDTH STORAGE ARCHITECTURE. IN ASPLOS, PAGES 92-103, 1998
HERMANN HARTIG ET AL., THE PERFORMANCE OF -KERNEL-BASED SYSTEMS. IN SOSP, PAGES 66-77, 1997
CARL HAUSER ET AL. USING THREADS IN INTERACTIVE SYSTEMS: A CASE STUDY. IN SOSP, PAGES 94-105, 1993
JOHN H. HOWARD ET AL. SCALE AND PERFORMANCE IN A DISTRIBUTED FILE SYSTEM. PAGES 51-81, 1988
M. FRANS KAASHOEK ET AL. APPLICATION PERFORMANCE AND EXIBILITY ON EXOKERNEL SYSTEMS. IN SOSP, PAGES 52-65, 1997
JUDY KAY AND PIERS LAUDER. A FAIR SHARE SCHEDULER. PAGES 44-55, 1988
JAMES J. KISTLER AND MAHADEV SATYANARAYANAN. DISCONNECTED OPERATION IN THE CODA FILE SYSTEM. PAGES 3-25, 1992
JEANNA NEEFE MATTHEWS ET AL. QUANTIFYING THE PERFORMANCE ISOLATION PROPERTIES OF VIRTUALIZATION SYSTEMS. IN EXPERIMENTAL COMPUTER SCIENCE, PAGE 6, 2007
ATHICHA MUTHITACHAROEN, BENJIE CHEN, AND DAVID MAZIERES. A LOW-BANDWIDTH NETWORK FILE SYSTEM. IN SOSP, PAGES 174-187, 2001
DAVID A. PATTERSON ET AL. A CASE FOR REDUNDANT ARRAYS OF INEXPENSIVE DISKS (RAID). IN SIGMOD CONFERENCE, PAGES 109-116, 1988
KARIN PETERSEN ET AL. FLEXIBLE UPDATE PROPAGATION FOR WEAKLY CONSISTENT REPLICATION. IN SOSP, PAGES 288-301,1997
RICHARD F. RASHID ET AL. MACHINE-INDEPENDENT VIRTUAL MEMORY MANAGEMENT FOR PAGED UNIPROCESSOR AND MULTIPROCESSOR ARCHITECTURES. PAGES 896- 907,1988
MENDEL ROSENBLUM AND JOHN K. OUSTERHOUT. THE DESIGN AND IMPLEMENTATION OF A LOG-STRUCTURED FILE SYSTEM. PAGES 26-52, 1992
BIANCA SCHROEDER AND GARTH A. GIBSON. DISK FAILURES IN THE REAL WORLD: WHAT DOES AN MTTF OF 1,000,000 HOURS MEAN TO YOU? IN FAST, PAGES 1-16, 2007
A. SILBERSCHATZ, P.B. GALVIN, G. GAGNE, V. MARRA, AND P. CODARA. SISTEMI OPERATIVI. CONCETTI ED ESEMPI. PEARSON, 2009 VIII EDIZIONE
A. THEKKATH, ET AL. SEPARATING DATA AND CONTROL TRANSFER, IN DISTRIBUTED OPERATING SYSTEMS. IN ASPLOS, PAGES 2-11, 1994
More Information
E-MAIL: CATTANEO@UNISA.IT
  BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2019-10-21]