Version 291 (modified by 7 years ago) ( diff ) | ,
---|
Laboratorio di Sistemi Operativi
Materiale 2017/2018
- Calendario delle lezioni e degli esami di laboratorio
- Avvisi
- Il sito principale del corso
- Il sito con il materiale delle lezioni di Matteo Re
- Remzi H. Arpaci-Dusseau, Andrea C. Arpaci-Dusseau "Operating Systems: Three Easy Pieces", 2015 (Testo di riferimento)
1. 28 febbraio 2018 (Aula 400)
- Slide -- Slide (Versione per la stampa)
- Sperimentazione 1
- Riferimenti OSTEP: Introduction Lab tutorial
- Hai studiato il materiale della prima lezione? Prova a rispondere ad alcune domande
2. 7 marzo 2018 (Aula 309)
- Slide -- Slide (Versione per la stampa)
- QEmu ISO Debian Live (credenziali user:live)
- File batch per windows (da adattare al proprio sistema)
- QemuUNICLOUD
- MobaXTerm (utile per gli utenti Windows)
- Bigino NASM Bigino GDB Tutorial vi Bigino vi
- Sperimentazione 2
3. 21 marzo 2018 (Aula 309)
- Slide -- Slide (Versione per la stampa)
- Riferimenti OSTEP: The Abstraction: Address Spaces Interlude: Memory API
- Riferimento istruzioni X86 (32bit)
- Soluzioni commentate agli esercizi in assembly
4. 28 marzo 2018 (Aula 309)
- Slide -- Slide (Versione per la stampa)
- Riferimenti OSTEP: Process API
5. 4 aprile 2018 (Aula 309)
- Slide -- Slide (Versione per la stampa)
- Shotts, The Linux Command Line (un testo per approfondire la conoscenza della shell testuale)
- Memrise (utile per memorizzare i comandi principali)
- CMD Challenge (un po' di esercizi)
- Video: AT&T Archives: The UNIX Operating System
- The Cuckoo's Egg
6. 11 aprile 2018 (Aula 309)
- Slide -- Slide (Versione per la stampa)
- Riferimenti OSTEP: Locks Semaphores Condition Variables
- Una gara con piccoli esercizi di scripting (fino al livello 12)
7. 18 aprile 2018 (Aula 309)
- Slide -- Slide (Versione per la stampa)
- Riferimenti OSTEP: Hard Disk Drives
8. 2 maggio 2018 (Aula 309)
9 maggio 2018 LEZIONE SOSPESA
Esame
- TemaDEsame
- Sistema live usato durante l'esame (116MiB, SHA1 9d1aed82668b6c95fb25d5d7cd1255039d531af7)
- Disco aggiuntivo per la persistenza con Qemu per l'esercizio JOS (992KiB)
La procedura per finalizzare l'intero esame di Sistemi Operativi I e II è riassunta di seguito:
#include <stdlib.h> #include <stdio.h> #include <unistd.h> #include <time.h> int solab(void) { return rand() % 31; } int teoria(void) { return rand() % 31; } int main() { int fds[2], rt, rl; printf("Iscrizione SIFA a (entrambi) Sistemi Operativi I e II\n"); pipe(fds); srand(time(NULL)); if (fork() == 0) { int r; do { sleep(rand() % 2); r = solab(); printf("Voto laboratorio: %d\n", r); } while (r < 18); close(fds[0]); write(fds[1], &r, sizeof(r)); return 0; } do { sleep(rand() % 3); rt = teoria(); printf("Voto teoria: %d\n", rt); srand(time(NULL)); } while (rt < 18); close(fds[1]); read(fds[0], &rl, sizeof(rl)); printf("Registrazione (occorre essere iscritti SIFA) di Sistemi Operativi I e II: %u \n", (unsigned int)((3.*(float)rl + 9.*(float)rt)/12.)); return 0; }
Materiale aa.aa. precedenti
- Materiale 2016/2017
- Materiale 2015/2016
- Materiale 2014/2015
- Materiale 2013/2014
- Materiale 2012/2013
- Materiale 2011/2012
- Materiale 2010/2011
- Materiale 2009/2010
- Materiale 2008/2009
Note:
See TracWiki
for help on using the wiki.