CODE 104746 ACADEMIC YEAR 2024/2025 CREDITS 6 cfu anno 2 INGEGNERIA INFORMATICA 8719 (L-8) - GENOVA 6 cfu anno 3 INGEGNERIA ELETTRONICA E TECNOLOGIE DELL'INFORMAZIONE 9273 (L-8) - GENOVA SCIENTIFIC DISCIPLINARY SECTOR ING-INF/05 LANGUAGE Italian TEACHING LOCATION GENOVA SEMESTER 2° Semester TEACHING MATERIALS AULAWEB OVERVIEW The course provides an introduction to the structure and organization on modern operating systems. AIMS AND CONTENT LEARNING OUTCOMES Students will be able to identify and describe the main functionalities of modern operating systems. AIMS AND LEARNING OUTCOMES The course provides students with the fundamental notions about the structure of operating systems. The course also provides students with the technical and methodological tools to understand, critically analyze and describe the characteristics, functions and interactions of the main components of modern operating systems. At the end of the course, students will also be able to use the command line interface of the Linux operating system and write simple programs (scripts) for the automation of operating system management activities. PREREQUISITES Ability to write and analyse programs, including familiarity with the C programming language Knowledge of the components and structure of Computers TEACHING METHODS Teaching will be carried out with traditional lectures as well as with the development of problems and practical exercises. Students will be given access to hands-out (slides) and texts of past assessments. SYLLABUS/CONTENT Introduction to the structure of operating systems. Basic concepts, monolithic and microkernel structure. Process and thread management. Process creation and management. Threads and their implementation. Inter-Process Communication (signal, pipe, socket, shared memory, ...). Mutual exclusion and synchronization. Dekker's algorithm, Peterson's algorithm. Hardware support for mutual exclusion. The Producer and Consumer Problem. The traffic lights. The monitors. Message Passing. The Readers and Consumers Problem. Deadlock and Starvation. Approaches to deadlock management: Detection, Prevention and Avoidance. Resource allocation graphs. The Dining Philosophers Problem. Memory management. Physical memory and virtual memory. Paged management and its implementation problems. Segmented management. Uniprocessor scheduling. Long, medium and short term scheduling. Scheduling algorithms: FCFC, Round Robin, SPN, SRT, HRRN, Feedback. Input-output Management. CPU-device-memory interaction. DMA architecture. Disk scheduling. The file system. Structure and attributes of files and directories. File system implementation and optimization methods. Access Control. Access control models, policies and mechanisms. Access Control in Linux (ACL in Unix) RECOMMENDED READING/BIBLIOGRAPHY Teaching material (slides and exercises) are available on AulaWeb. Operating Systems: Internals and Design Principles. 8th edition di W. Stallings, Pearson TEACHERS AND EXAM BOARD ALESSIO MERLO Exam Board ALESSANDRO ARMANDO (President) PIERPAOLO BAGLIETTO MASSIMO MARESCA (President Substitute) LESSONS Class schedule OPERATING SYSTEMS EXAMS EXAM DESCRIPTION Written exam based on open–ended questions. ASSESSMENT METHODS The written test will assess The understanding of the operation and interdependence of the main features offered by a modern operating system, the ability to critically evaluate the characteristics of the various solutions to classical operating system problems (e.g. memory management, scheduling, process synchronization), the ability to solve problems related to the design and use of operating systems. Students with certification of Specific Learning Disabilities (SLD), disabilities, or other special educational needs must contact the instructor at the beginning of the course to agree on teaching and examination methods that, while respecting the course objectives, take into account individual learning styles and provide appropriate compensatory tools. It is reminded that the request for compensatory/dispensatory measures for exams must be sent to the course instructor, the School representative, and the “Settore servizi per l'inclusione degli studenti con disabilità e con DSA” office (dsa@unige.it<mailto:dsa@unige.it>) at least 10 working days before the test, as per the guidelines available at the link: https://unige.it/disabilita-dsa Exam schedule Data appello Orario Luogo Degree type Note 14/01/2025 11:00 GENOVA Scritto E3 10/02/2025 11:00 GENOVA Scritto 10/06/2025 15:00 GENOVA Scritto 09/07/2025 11:00 GENOVA Scritto 08/09/2025 16:00 GENOVA Scritto Agenda 2030 - Sustainable Development Goals Quality education Gender equality Decent work and economic growth Industry, innovation and infrastructure