OPERATING SYSTEMS

03 gennaio 2021

OPERATING SYSTEMS

  • Lecture scheduling for Operating Systems
Date Time Topic

Textbook

ref.

Recordings
08.10.2020

10:15

-

13:30

Course content

and teaching

methodology
History of

computing and

evolution of

operating

systems
The Linux

Operating

System

  https://unica.adobeconnect.com/pvvwqxq
10.10.2020 10:15 - 13:30 Lab
C Programming in Linux
Bring your own PC with a Linux distro (either as the primary OS or as a VM)

https://unica.adobeconnect.com/p39p5sxmcgiq/

15.10.2020

10:15 - 13:30

Computer Architecture Overview

Operating Systems Overview
Chapter 1

Chapter 2

https://unica.adobeconnect.com/pdi74rgenndy/

17.10.2020 10:15 - 13:30 Processes

Lab: Process creation and management in Linux
Chapter 3

https://unica.adobeconnect.com/p9gzzaxsz4xx/

22.10.2020 10:15 - 13:30 Processes, Threads

Lab: Process creation and management in Linux
Chapter 3, 4 Part 1: https://unica.adobeconnect.com/pxuaeo5kp8xh/

Part 2: (there is an error in the last example. The correct version will be shown in the next lecture) https://unica.adobeconnect.com/pgnlf3uf2fuu/

24.10.2020 10:15 - 13:30

Lab: Process creation and management in Linux

Process synchronization

Chapter 5

https://unica.adobeconnect.com/pvsmvf1omonb/

29.10.2020 10:15 - 13:30 Semaphores. Classical synchronization problems. Monitor.
Deadlock
Chapter 5
Chapter 6

https://unica.adobeconnect.com/p33rrn4jfpoz/

05.11.2020 10:15 - 13:30 Uniprocessor scheduling. Chapter 9

https://unica.adobeconnect.com/pwjxu71cmwgi/

07.11.2020 10:15 - 13:30 Lab: Process creation and management in Linux

Multiprocessor, Multicore, and Real-Time Scheduling.
This Lab will be evaluated as part of the exam

Chapter 10

https://unica.adobeconnect.com/pul5vc8yfdjg/

12.11.2020

10:15 - 13:30

Exercise on Process Scheduling.

Introduction to Memory management

Lab: IPC in Linux: unnamed pipes

Chapter 7

https://unica.adobeconnect.com/pidhayqcaxvc/

14.11.2020

10:15 - 13:30

Virtual memory management

Lab: IPC in Linux: pipes
Chapter 8

https://unica.adobeconnect.com/p2srt6attgyt/

19.11.2020 10:15 - 13:30 Virtual memory management

Input/Output
Storage Management

Lab: IPC in Linux: pipes
Chapter 8

Chapter 11

https://unica.adobeconnect.com/pfdcjo4l24t8/

26.11.2020 10:15 - 13:30 Lab: IPC in Linux: pipes

Storage management
This Lab will be evaluated as part of the exam

Chapter 11

https://unica.adobeconnect.com/p6iw4osukjtk/

03.12.2020 10:15 - 13:30 File System

Lab: IPC in Linux: pipes
Chapter 12 and textbook by Silberschatz et al.

https://unica.adobeconnect.com/pzi1nacwj7lm/

05.12.2020 10:15 - 13:30 File System

Lab: IPC in Linux: pipes
Chapter 12 and textbook by Silberschatz et al.

https://unica.adobeconnect.com/pqbxw7app4uj/

10.12.2020 10:15 - 13:30 Embedded Operating Systems
Virtualization

Lab: IPC in Linux: pipes
Chapters 13, 14

https://unica.adobeconnect.com/pscfbgak9j5v/

12.12.2020 10:15 - 13:30 Virtualisation, Cloud computing and IoT

Protection and Security
Chapter 15, 16

https://unica.adobeconnect.com/pk8szjbtztat/

19.12.2020 10:15 - 13:30 Lab
IPC in Linux: pipes
This Lab will be evaluated as part of the exam  
  • SLIDES 2019-2020
  1. Presentation
  2. Introduction
  3. Computer Architecture
  4. OS Structure
  5. Processes???????
  6. Threads
  7. Concurrency: Mutual Exclusion and Synchronization
  8. Concurrency: Deadlock Management
  9. Uniprocessor Scheduling
  10. Multiprocessor, Multi Thread, and Real-Time Scheduling
  11. Memory Management
  12. Virtual Memory
  13. I/O System
  14. Mass Storage
  15. File Management
  16. Embedded Systems
  17. Virtual Machines, Cloud Computing and IoT
  18. Protection and Security

PRESENTAZIONI IN LINGUA ITALIANA AA 2018-2019
Presentazione del corso di Sistemi Operativi (aggiornato il 27 Settembre 2018)
Breve storia dei sistemi di elaborazione  (aggiornato il 27 Settembre 2018)
Richiami di Architetture dei Calcolatori  (aggiornato il 27 Settembre 2018)
Struttura di un Sistema Operativo  (aggiornato il 27 Settembre 2018)
I Processi (aggiornato il 6 Ottobre 2018)
Thread(aggiornato il 15 Ottobre 2018)
Sincronizzazione dei processi
BACI: Simulatore semafori e monitor – BACI projects
Il problema dello stallo (aggiornato il 29 Ottobre 2018)
Scheduling dei processi (aggiornato il 29 Ottobre 2018)
Scheduling per Sistemi Multiprocessore e Multicore e Scheduling Real Time
Gestione della Memoria
Memoria Virtuale
Sistemi di Memorizzazione Secondaria
Esercitazione su Algoritmi di Scheduling dei Processi, Scheduling del Disco e sugli Algoritmi per la Sostituzione delle Pagine in Sistemi con Memoria Virtuale Paginata
Il sottosistema di Ingresso/Uscita
Interfaccia del File System
Realizzazione del File System
Sistemi Operativi per sistemi embedded (aggiornato il 6 Dicembre 2018)
Virtualizzazione, Cloud Computing e IoT (aggiornato il 11 Dicembre 2018)
Android (aggiornato il 11 Dicembre 2018)
Protezione e Sicurezza nei Sistemi Operativi(aggiornato il 11 Dicembre 2018)

  • LINUX LAB

           LAB NOTES AND C CODE 2019-2020

           Textbook: John Shapley Gray, Interprocess Communication in Linux, Prentice Hall PTR 2003

  1. The Linux OS
  2. C Programming in Linux (updated Oct 10, 2020)
  3. Linux Lab – Creating a library of functions
  4. Linux Process Image (C Code)
  5. Process Creation in Linux, Linux Lab – The use of forc() and exec()
  6. Linux Lab 6 NOV 2019
  7. Linux Pipes, Sample Code Unnamed Pipe, Linux Lab – use of unnamed pipes (this example is based on the code available above at point 6.)
  8. Lab 20 NOV 2019 – unnamed pipe (text and sample code)
  9. Linux Lab 04 DEC 2019
  10. Source Code Named Pipe –  a simple client-server example
  11. Example of client-server communication – bidirectional communication between the client and the server
  12. Linux Lab named pipe 18DEC2019

MATERIALE FINO A 2018-2019

ESERCITAZIONI LINUX
Introduzione a Linux
Richiami di Linguaggio C (Aggiornato il 4 Ottobre 2016)
Esempio di programmazione in linguaggio C: uso di librerie (5 ottobre 2016)
Esercizi di Programmazione in linguaggio C
Creazione dei Processi in Linux: fork()
Esempi di Creazione dei Processi in Linux
Esercitazione del 18 Ottobre 2017
Creazione di processi in Linux: fork() e exec() (aggiornato il 29 Ottobre 2018)
Esercitazione del 8 Novembre 2017
IPC in Linux: pipe
Esercizio su unnamed pipe del 15 Novembre 2017 (Traccia soluzione esercitazione del 15 Novembre 2017
Esercitazione del 22 Novembre 2017
Esercitazione del 29 Novembre 2017   Header file da usare nella soluzione dell’esercizio

ESERCITAZIONE ANDROID
IPC in Android (Aggiornato il 13 Dicembre 2017)
Sorgenti Esercitazione del 13 dicembre 2017 (IPC in Android)

  • TUTORING

            Andrea Olla, 2nd year MSc student in Computer Engineering, Cybersecurity and Artificial Intelligence,

            will conduct the tutoring for Operating Systems.

            The first meeting will take place on November 5th on the Teams platform from 16:00 to 18:00

            The second meeting will take place on November 19th on the Teams platform from 16:00 to 18:00

Questionario e social

Condividi su: