Sistemi Operativi (Laboratorio)

Documenti analoghi
Sistemi Operativi 1. Mattia Monga. a.a. 2016/17. Dip. di Informatica Università degli Studi di Milano, Italia

Sistemi Operativi. Bruschi Monga Re. Memorie di massa. Dischi virtuali Esercizio. Sistemi Operativi. Bruschi Monga Re.

Sistemi Operativi. Bruschi Martignoni Monga. Altre periferiche fondamentali Hard disk Terminale. Sistemi Operativi. Bruschi Martignoni Monga

Sistemi Operativi 1. Mattia Monga. a.a. 2012/13. Dip. di Informatica Università degli Studi di Milano, Italia

File System ext2. Struttura del filesystem ext2.

SHELL: File e Filesystem

Linux la gestione dei dischi

Memoria secondaria. Fabio Buttussi HCI Lab Dept. of Math and Computer Science University of Udine ITALY

Sistemi Operativi 4. Matteo Re. Dip. di Informatica Università degli studi di Milano. Laboratorio linea 2. a.a. 2013/2014 Sem.

Gestione della memoria di massa e file system

Lezione 14 File system: preparazione

La Shell di Unix. l utente impartisce i comandi al sistema digitandoli ad un apposito prompt;

Capitolo 14: Struttura delle memorie di massa

Sommario. Memorie di massa: tecnologie. Memorie di massa: memorie atte a memorizzare dati in modo non volatile. Tecnologie:

Blocchi di un file system

12 Memoria secondaria Struttura del disco Struttura del disco

Sistemi Operativi, Secondo Modulo, Canale M Z Riassunto della lezione del 06/03/2017

Corso di Sistemi Operativi I/II. Introduzione a Linux. Il File System. Ruggero Donida Labati

I file utente sistema operativo nome

Il Sistema Operativo

Filesystem. Il file system è organizzato in blocchi logici contigui

12 Memoria secondaria

Forse la periferica più importante di un elaboratore File system:

Interfaccia del file system

Sistemi Operativi 1. Mattia Monga. 11 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Si può simulare una struttura di directory a multilivelli con una struttura di directory a singolo livello?"

aumenta il tempo di accesso; aumenta la capacità di memorizzazione; ma diminuisce il costo per bit.

Informatica 10. appunti dalla lezione del 16/11/2010

Architettura degli elaboratori Docente:

A confronto Linux e Microsoft. d i A g n e s e D a i d o n e

La memoria secondaria

FoLUG. con la partecipazione della Circoscrizione n 4 di Forlì. Lezione XX. Hard disk. Partizionamento

Il sistema operativo deve fornire una visione astratta dei file su disco e l'utente deve avere la possibilità di:

Sistemi Operativi. Bruschi Martignoni Monga. La gestione. MINIX Architettura I device driver Block device. Memory driver Implementazione

File System. Capitolo Silberschatz

Corso di Informatica. Architettura del Calcolatore. Architettura del Calcolatore. Corso di Laurea in Conservazione e Restauro dei Beni Culturali

Zeroshell su vmware ESXi 4.1

Calcolatori Elettronici

Informatica di Base 1 Linea 1

Sistemi Operativi: Filesystems

per ospitare Linux e Windows

Sistemi Operativi. Il file system Casi di studio. Sistemi Operativi. Corso di laurea in Informatica. AA 2002/03 Bruschi, Rosti

Lezione 2: Comandi avanzati della Shell di Unix

Sistema Operativo (Software di base)

La memoria secondaria

Lezione 12. Sistemi operativi. Marco Cesati System Programming Research Group Università degli Studi di Roma Tor Vergata

File System. File system gerarchico. Proteggere la propria home directory ... / = Root nodi interni: directory foglie: directory vuote o file

File: definizione. Il file è la più piccola unità logica manipolabie Un file è caratterizzato principalmente da:

CdL in Medicina Veterinaria - STPA AA

Sistemi operativi. Corso di Laurea Triennale in Ingegneria Informatica

Il file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato.

File system / Cluster

Corso di Laboratorio di Sistemi Operativi A.A Fabio Buttussi

Il Sistema Operativo Gestione del File System

Componenti di un sistema operativo

Fondamenti di GNU/Linux

14 Struttura della memoria secondaria Struttura del disco Struttura del disco

Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica

Il file È un insieme di informazioni: programmi. Il File System. Il file system

Sistemi Operativi. Organizzazione logica ed implementazione di un File System

Dove siamo. Gestione della Memoria (1) Dove siamo. Dove siamo. Operating Systems and Distributed Systems. Operating Systems and Distributed Systems

Sistemi Operativi, Secondo Modulo, Canale M Z Riassunto della lezione del 29/02/2016

Struttura interna del sistema operativo Linux

Le Memorie. Si distinguono per: Supporti sui quali le informazioni vengono fisicamente memorizzate.

Gestione della memoria di massa. Capitolo Silberschatz

Directory. Le directory unix sono file.

Il file system. Il File System. Attributi del file. File

Architettura di un calcolatore

L hard disk. L amministrazione dei dischi puo essere riassunta nelle seguenti operazioni di base: La formattazione. Il partizionamento

Sistemi Operativi. Bruschi Monga Re. Dischi virtuali Esercizio. Concorrenza Semafori. Sincronizzazione con monitor pthreads. I-node.

Il bus. Bus di sistema: insieme di collegamenti (solitamente in rame) che connette tutti i componenti di un architettura

IBM Academic Initiative

Capitolo 1. Introduzione. Cay S. Horstmann Concetti di informatica e fondamenti di Java

SISTEMI OPERATIVI E LABORATORIO (Indirizzo Sistemi e Reti) 5 luglio 2004

5. I device driver. Device driver - gestori delle periferiche. Struttura interna del sistema operativo Linux. Tipi di periferiche. Tipi di periferiche

Sistema operativo. Interazione con il SO

Gestione della memoria secondaria

Architettura dei calcolatori

Elementi di informatica

Strategie adottate. Informatica di Base -- R.Gaeta 29

Sicurezza del File System

Il file System. FAT32 ext2

Interfaccia del file system

RIASSUNTO La codifica delle informazioni

Implementazione del file system

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

Sequenza di avvio di Linux:

I sistemi operativi. Prof. Daniele Contarino

fare hard link fra file system diversi e su directory.

Lavorare in ambiente UNIX. Prompt dei comandi (shell) Pipe e filtri (I/O) Tips and tricks

Influenza dell' I/O sulle prestazioni (globali) di un sistema

La memoria-gerarchia. Laboratorio di Informatica - Lezione 3 - parte I La memoria - La rappresentazione delle informazioni

Sistema operativo & file system 1

Il software di sistema

PROGRAMMA DISCIPLINARE SVOLTO a. s / 2016

Introduzione all uso dei laboratori aka Linux basics. October 23, 2013

intermediate - guida pratica per LVM Scritto da {ga=allanon}

Capitolo Silberschatz

Gestione della Memoria Introduzione ai Sistemi Operativi Corso di Abilità Informatiche Laurea in Fisica

Transcript:

Sistemi Operativi (Laboratorio) Lorenzo Martignoni Dipartimento di Informatica e Comunicazione Università degli Studi di Milano, Italia lorenzo@security.dico.unimi.it a.a. 2008/09 Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 1

Lezione VIII: Memoria di massa e system call Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 110

Memorie di massa Il disco fisso (hard disk) è generalmente una memoria magnetica. Viene sfruttato il fenomeno del ciclo di isteresi di elementi magnetici (L isteresi è la caratteristica di un sistema di reagire in ritardo alle sollecitazioni applicate e in dipendenza dello stato precedente). Un ciclo di isteresi può essere ottenuto anche elettronicamente (Schmitt trigger). Le memorie USB, invece, sono basate su transistor NAND. Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 111

Hard disk Gli elementi contenenti dati (blocchi fisici) sono definiti da tre coordinate: 1. Cylinder: Il cilindro definito dall insieme delle tracce corrispondenti dei vari piatti 2. Head: La testina (per esempio, sopra e sotto) 3. Sector: Lo spicchio Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 112

Calcolo dei blocchi blocksperplatterside = (cylindersperplatter) (SectorsPerPlatter) blocksperplatter = (blocksperplatterside) (HeadsPerPlatter) blocksperplatter = (cylindersperplatter) (SectorsPerPlatter) (HeadsPerPlatter) blocks = (Cylinders) (Heads) (Sectors) Esempio Un floppy disk con 80 cilindri, 2 testine, 18 settori 2880 Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 113

CHS C = 3 H = 2 S = 8, totale blocchi 48 Zona (partizione) rossa 0,0,2 1,0,3 (1 (2 8)+0 8+3 1) (0 (2 8)+0 8+2 1) = 19 2 = 17 (in realtà 18 perché contiamo da zero) Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 114

Tempo di lettura e scrittura T = TempoDiRotazione + TempoDiRicerca + TempoDiAccesso Il tempo di rotazione è detto anche latenza Il tempo di ricerca (seek time) può essere ottimizzato con algoritmi opportuni Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 115

Device logico L astrazione fornita dal s.o. per il disco è quella del device a blocchi. Il blocco è un blocco logico, potenzialmente diverso dal blocco fisico. I device a blocchi sono file speciali, identificati da Major number: identifica la categoria del device (disco IDE, floppy) Minor number: numero d ordine del device all interno di una categoria Esempio In MINIX il disco IDE primario è il device a blocchi: /dev/c0d0 (3 0) Le partizioni sono a loro volta device a blocchi: /dev/c0d0p0s0 (3 128), /dev/c0d0p0s1 (3 129) Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 116

mknod I file speciali si creano con /usr/bin/mknod generalmente in /dev Device a blocchi b Device a caratteri c Named pipe p (non ha major e minor) Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 117

Partizioni Lo spazio di memoria di uno hard-disk è ripartito in porzioni indipendenti (partizioni): in linea di principio possono contenere anche sistemi differenti. Generalmente contengono sotto-file-system il cui backup e/o aggiornamento è indipendente. Partition table sector: contiene la descrizione di 4 partizioni (primarie) agli offset 446, 462, 478, 494 Partizione: una zona contigua del disco (CHS) Partizione estesa: una partizione che permette una nuova suddivisione (partizioni logiche) grazie ad un nuovo PTS Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 118

Disk layout Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 119

I-node Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 120

Creare e usare un fs Un file system va creato (mkfs) Un file system va montato (mount) Corrispondentemente va smontato (umount) Ogni file è caratterizzato da un i-node e conosciuto tramite uno o piú link o nomi (ln) Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 121

i-node speciali Directory (mkdir) Link simbolici (ln -s) Programmi utili per lavorare sui nomi o percorsi dirname basename Programmi utili per lavorare sugli i-node stat readlink Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 122

Esercizio 1. Creare una directory 2. Creare un link simbolico al file con il database degli utenti 3. Creare un link (hard) al file con il database dei gruppi 4. Analizzare e discutere l output di ls e stat (con e senza il parametro -s) 5. Creare un archivio tar, analizzare e discutere il contenuto dell archivio Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 123

Esercizio 1. Creare un disco virtuale (qemu-img) e connetterlo alla macchina virtuale 2. Partizionare il disco (part) 3. Creare il file system (mkfs) 4. Montare il file system (mount) 5. Copiare dei dati 6. Smontare il file system (umount) Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 124

MINIX Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 125

Come aggiungere una system call foo() Supponendo che il servizio sia gestito gestito da PM 1. Aggiornare /usr/src/include/minix/callnr.h 2. Aggiungere la entry do foo al call vec di PM 3. Aggiungere la entry no sys al call vec di FS 4. Aggiungere do foo() (p.es. in pm/misc.c) 5. Creare la libreria wrapper e aggiornare unistd.h http://www.cis.syr.edu/~wedu/seed/documentation/ Minix3/How_to_add_system_call.pdf Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 126

Esercizio Aggiungere una syscall che stampa ciao Aggiungere una syscall che stampa il numero di processi nella coda ready Aggiungere una syscall che modifica il proprietario di un processo in esecuzione Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 127

Data server /usr/src/servers/ds Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 128

Copyright c 2009 Mattia Monga & Lorenzo Martignoni Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia License. http://creativecommons.org/licenses/by-sa/2.5/it/. Bruschi Martignoni Monga Sistemi Operativi (Laboratorio) 129