Sistemi Operativi, Secondo Modulo, Canale A-L e Teledidattica
per il corso di laurea in Informatica
A. A. 2020/2021
docente: Igor Melatti
melatti@di.uniroma1.it
Per l'organizzazione dell'esame di Sistemi Operativi (12 CFU), vedere qui. In questa pagina si tratta solamente del canale A-L e del corso di laurea in teledidattica del secondo modulo di Sistemi Operativi.
Indice
Date degli appelli
Programma del corso
Libri di testo
Informazioni sugli esami
Materiale sulle lezioni
Orario delle lezioni
Software per il corso
Informazioni sugli esami
Date degli appelli
N.B.: Per gli appelli "da confermare", le date sono indicative e potrebbero subire spostamenti
Appello |
Data |
Ora |
Aula |
Confermato |
Note |
Infostud |
Scadenza iscrizione Infostud |
Link orale completo |
Scadenza orale completo |
Scadenza richiesta modalità |
straord1 |
13/04/2021 |
11:00 - 14:00 |
Remoto |
Sì |
A.A. 2019/2020 |
763957 |
scaduta |
N/A |
N/A |
N/A |
1 |
11/06/2021 |
09:00 - 18:00 |
Remoto |
Sì |
scritto ed orale; modalità 4 di pag. 3 lezione 1 |
763961 |
scaduta |
N/A |
scaduta |
scaduta |
2 |
28/06/2021 |
09:00 - 18:00 |
Remoto |
Sì |
scritto ed orale; modalità 4 di pag. 3 lezione 1 |
763962 |
scaduta |
N/A |
scaduta |
scaduta |
3 |
09/09/2021 |
09:00 - 18:00 |
Aula 17 Lab. "P. Ercoli" |
Sì |
scritto ed orale; modalità 3 di pag. 3 lezione 1 |
771436 |
scaduta |
N/A |
scaduta |
scaduta |
straord2 |
21/10/2021 |
09:30 - 12:00 |
Aula 17 Lab. "P. Ercoli" |
Sì |
scritto ed orale; modalità 3 di pag. 3 lezione 1 |
787391 |
scaduta |
N/A |
scaduta |
scaduta |
4 |
24/01/2022 |
14:30 - 19:30 |
Remoto |
Sì |
scritto ed orale; modalità 4 di pag. 3 lezione 1 |
792502 |
scaduta |
N/A |
scaduta |
scaduta |
5 |
16/02/2022 |
08:00 - 13:00 |
Remoto |
Sì |
scritto ed orale; modalità 4 di pag. 3 lezione 1 |
792503 |
scaduta |
N/A |
scaduta |
scaduta |
L'ultima colonna serve per chi volesse fare in presenza un appello previsto come da remoto o viceversa: è necessario inviare un'email al docente entro la data indicata specificando i motivi della richiesta.
Per la consegna degli homework per l'orale completo, usare il link dato nella tabella qui sopra entro la scadenza riportata. Usare il link per uploadare uno dopo l'altro i 2 homework.
Si rammenta di iscriversi su Infostud
selezionando, per l'appello desiderato, il verbale il cui numero è indicato nell'apposita colonna (entro la scadenza indicata).
Informazioni sul laboratorio "Paolo Ercoli" si possono trovare qui
.
Gli esami (scritti e orali, a distanza ed in presenza) potranno essere soggetti a scaglionamenti in caso di eccessivo numero di prenotazioni. Tali scaglionamenti saranno comunicati su questo sito.
Per gli esami a distanza, verranno fatte opportune comunicazioni agli studenti iscritti con almeno 1 giorno di anticipo. Nel frattempo, gli studenti devono leggere e conoscere le norme generali Sapienza: vedere questo link
.
Programma del corso
Introduzione a Unix/Linux
- concetti di base, file system, processi, espressioni regolari, comandi shell
Bourne Again Shell
- uso dei più importanti comandi
Programmazione di sistema
- compilatore e make, programmi eseguibili, librerie, debugger
- gestione di: memoria, file, processi, segnali, pipe, fifo, socket
Libri di testo consigliati
- G. Glass, K. Ables: Linux for Programmers and Users, Prentice Hall
- F. C. A. Johnson, Pro Bash Programming (Scripting the GNU/Linux Shell), Apress
- B. Kernighan e D. Ritchie, Il Linguaggio C, Jackson Libri
Homework
I risultati degli homework sono riportati in
questa pagina
Homework 2
Le specifiche per il secondo homework possono essere scaricate da
qui. La consegna è fissata per il 05/06/2021 alle 23:59:59.
Modifiche alle specifiche:
- 15/5/2021, ore 21:15: Aggiunta la frase "Infine, è necessario installare il programma bc dando il seguente comando da terminale: sudo apt-get install bc."
Homework 1
Le specifiche per il primo homework possono essere scaricate da
qui. La consegna è fissata per il 07/05/2021 alle 23:59:59.
Modifiche alle specifiche:
- 3/4/2021, ore 10:00: Aggiunta la frase "Infine, le righe degli output sui file descriptor 3, 4 e 5 devono essere ordinati lessicograficamente dal più grande al più piccolo." nell'esercizio 1
- 3/4/2021, ore 15:20: Aggiunto "non" nella frase "occorre contare la loro dimensione effettiva se -l non è stato dato" nell'esercizio 1
- 6/4/2021, ore 08:10: Aggiunta la frase "Se la dimensione D del file non è un multiplo di 4 bytes, riempire gli ultimi D mod 4 bytes con zeri. " nell'esercizio 1, laddove si parla di contenuto esadecimale
- 6/4/2021, ore 18:40: Aggiunti gli incisi "(scrivere sempre il segno attaccato al coefficiente)" nell'esercizio 3
- 8/4/2021, ore 15:15: Nell'esercizio 1, corretto "Totale" con "Total", e chiarito meglio il caso dell'opzione S e dell'opzione e
Modifiche al grader:
- 3/4/2021, ore 10:00: Corretto il file check/out.1/1.11.out
- 3/4/2021, ore 15:20: Corretto input_output.3 nella parte delle intersezioni
- 4/4/2021, ore 17:00: Corretti alcuni output di input_output.1
- 6/4/2021, ore 18:40: Corretti i coefficienti nell'output di input_output.3
Regole per gli esami
Vedere
lezione 1.
Materiale sulle lezioni
N |
Data |
Materiale |
Argomenti |
Note |
1 |
22/02/2021 |
dispense |
Introduzione al corso |
Registrazione pubblicata come 20210222.mp4 |
2 |
24/02/2021 |
dispense script nominato nelle dispense |
Il filesystem di Linux |
Registrazione pubblicata come 20210224.mp4 |
3 |
01/03/2021 |
dispense |
Il filesystem di Linux (conclusione) |
Registrazione pubblicata come 20210301.mp4 |
4 |
03/03/2021 |
dispense |
I processi in Linux |
Registrazione pubblicata come 20210303.mp4 |
5 |
08/03/2021 |
dispense |
Le espressioni regolari |
Registrazione pubblicata come 20210308.mp4; lezione interrotta alle 17:30; totalmente da remoto |
6 |
10/03/2021 |
vedere lezione 5 |
Le espressioni regolari (conclusione) |
Registrazione pubblicata come 20210310.mp4; totalmente da remoto |
7 |
15/03/2021 |
dispense |
Comandi utili |
Registrazione pubblicata come 20210315.mp4; totalmente da remoto |
8 |
17/03/2021 |
dispense |
La Bash |
Registrazione pubblicata come 20210317.mp4; totalmente da remoto |
9 |
22/03/2021 |
dispense |
La Bash (continuazione) |
Registrazione pubblicata come 20210322.mp4; totalmente da remoto |
10 |
24/03/2021 |
vedere lezione 9 |
La Bash (continuazione) |
Registrazione pubblicata come 20210324.mp4; totalmente da remoto |
11 |
29/03/2021 |
dispense |
La Bash (conclusione) |
Registrazione pubblicata come 20210329.mp4; totalmente da remoto |
12 |
31/03/2021 |
|
Primo homework |
Registrazione pubblicata come 20210331.mp4; totalmente da remoto |
13 |
07/04/2021 |
slides riassunto esempi |
Introduzione al C: capitoli 1, 2 e 3 |
Registrazione pubblicata come 20210407.mp4; totalmente da remoto |
|
12/04/2021 |
ANNULLATA |
|
|
|
14/04/2021 |
ANNULLATA |
|
|
14 |
19/04/2021 |
slides riassunto |
Introduzione al C: capitoli 4, 5, 6 e 7 |
Registrazione pubblicata come 20210419.mp4; totalmente da remoto |
15 |
21/04/2021 |
slides |
Introduzione al C: capitoli 8 e 9 |
Registrazione pubblicata come 20210421.mp4; totalmente da remoto |
16 |
26/04/2021 |
slides |
Introduzione al C: capitoli 8, 10, 15 e 16 |
Registrazione pubblicata come 20210426.mp4; totalmente da remoto |
17 |
28/04/2021 |
slides riassunto esempi |
Introduzione al C: conclusione |
Registrazione pubblicata come 20210428.mp4; totalmente da remoto |
18 |
03/05/2021 |
riassunto esempi |
Le system call sui files |
Registrazione pubblicata come 20210503.mp4; totalmente da remoto |
19 |
05/05/2021 |
vedere lezione 18 |
Le system call sui files: conclusione |
Registrazione pubblicata come 20210505.mp4; totalmente da remoto |
20 |
10/05/2021 |
riassunto esempi |
Le system call sui processi |
Registrazione pubblicata come 20210510.mp4; totalmente da remoto |
21 |
12/05/2021 |
riassunto esempi |
Le system call sui processi: conclusione. System call sulle pipe |
Registrazione pubblicata come 20210512.mp4; totalmente da remoto |
22 |
17/05/2021 |
vedere lezione 21 socket esempi domande scritto |
System call sulle socket; architettura client-server |
Registrazione pubblicata come 20210517.,mp4; totalmente da remoto |
|
19/05/2021 |
ANNULLATA |
|
|
|
24/05/2021 |
ANNULLATA |
|
|
|
26/05/2021 |
ANNULLATA |
|
|
Orario delle lezioni
Giorno |
Dalle |
Alle |
Luogo |
lunedì |
16:00 |
19:00 |
Aula Informatica 15 - Laboratorio "Paolo Ercoli" di Via Tiburtina |
mercoledì |
16:00 |
19:00 |
Aula Informatica 15 - Laboratorio "Paolo Ercoli" di Via Tiburtina |
L'aula informatica 15 si trova
all'interno del Laboratorio "Paolo Ercoli" di via Tiburtina
.
Software (gratis) per il corso
È necessario installare Linux: servirà per gli homework. Anche (e forse soprattutto) per chi non volesse fare gli homework, risolvere a casa gli esercizi proposti a lezione sarà molto importante. Possibilità:
- Installare VirtualBox
, scaricare l'immagine a questo link
(attenzione, sono circa 9GB), aprire VirtualBox e fargli importare il file appena scaricato. In caso di problemi nel far partire la macchina virtuale, si consiglia di rimpiazzare il file LabErcoli.vbox con questo file
Questi 2 metodi sono i soli che permettono di autovalutare correttamente gli homework. L'immagine data al link di cui sopra coincide con quella che si trova nel Laboratorio Ercoli, ma senza MATLAB (comunque inutile agli scopi di questo corso) e con l'utente studente che è anche sudoer (la password è
informatica).
Si consiglia poi di provare anche ad installare autonomamente una qualche versione di Linux, in quanto aiuta a prendere atto di alcune importanti scelte che occorre fare. Possibilità:
- Sempre da VirtualBox, creare una nuova macchina virtuale ed installarci Ubuntu oppure Lubuntu.
- Prendere un vecchio computer ed installarci Linux (versione consigliata: l'ultima di Ubuntu
; se il computer è molto vecchio, meglio Lubuntu
)
- Solo se si è consci dei passi da seguire: prendere un computer Windows ed installarci Linux in dual boot (versione consigliata: l'ultima di Ubuntu
)