Lezione 15 File System
|
|
- Mirella Franceschini
- 8 anni fa
- Visualizzazioni
Transcript
1 Lezione 15 File System Sistemi Operativi (9 CFU), CdL Informatica, A. A. 2014/2015 Dipartimento di Scienze Fisiche, Informatiche e Matematiche Università di Modena e Reggio Emilia 1
2 Quote of the day (Meditate, gente, meditate...) In UNIX, everything is a file; if something is not a file, it is a process. Ken Thompson (1943-) Programmatore Il padre dei SO UNIX e Plan 9 Ideatore dei linguaggi B e Go 2
3 INTRODUZIONE 3
4 Definizioni preliminari (File, directory, file system) Nei SO moderni (non solo UNIX), le informazioni possono essere memorizzate in maniera strutturata su supporto secondario (volatile o non). Paradigma d'uso: memorizzazione gerarchica tramite cartelle (directory) e fascicoli (file). Un file system è una gerarchia di directory e file, ospitata su un dispositivo di memorizzazione. 4
5 Eterogeneità dei dispositivi (Dispositivi di memorizzazione) I dispositivi di memorizzazione sono caratterizzati da tecnologie radicalmente diverse. Hard disk rotazionale, Solid State Drive (SSD). CD-ROM, DVD. RAM. L'organizzazione interna di un file system è pesantamente condizionata dalle tecnologie a disposizione. Un file system cerca di esaltare i pregi e minimizzare i difetti della tecnologia sottostante. Tecnologie diverse file system diversi! 5
6 Problema: accesso unificato ai file (Indipendentemente dal file system e dalla tecnologia di memorizzazione) Il programmatore non può essere costretto a ricordarsi tutti i dettagli implementativi di tutti i file system passati, presenti e futuri! Ad esempio, il modello di accesso ai file deve essere unico: open(), read(), write(), seek(), close(), truncate() a prescindere dal file system e dalla tecnologia di memorizzazione adottati. Idem per le directory e per i file system! Serve uno strato funzionale generale. 6
7 Che cosa è il Virtual File System (Componente del kernel) Il Virtual File System (VFS) è un sottosistema del kernel. In Linux, esso è implementato in tutti i file di primo livello contenuti nella directory $LINUX/fs. Il VFS fornisce una visione omogenea, gerarchica, indipendente dai dispositivi del contenuto informativo (organizzato per file e directory) ottenuto da: periferiche hardware locali (dischi, CD, chiavette, ). periferiche hardware remote (file system di rete). kernel (file system virtuali per debug, statistiche, ). 7
8 A cosa serve la visione omogenea? (Provate a scambiare due hard disk in Windows...) Si supponga di associare file system a directory con nomi non trasparenti. Esempio: Windows. Primo disco SATA: C:\. Secondo disco SATA: D:\. Terzo disco SATA: E:\. Si scriva un'applicazione che faccia riferimento a file contenuti in D:. Si scambino di posto il secondo ed il terzo disco. L'applicazione non è più in grado di accedere ai file (D:\ è associato ad un altro file system). 8
9 Uno schema (File system virtuali, fisici locali, fisici remoti) Libreria del C Applicazione I/O fread() User Kernel read() Chiamata di sistema Virtual File System sys_read() Lettura vfs_read() /proc file system EXT4 file system VFAT file system NFS file system Hardware RAM Disco interno Disco esterno Disco remoto 9
10 Compiti del Virtual File System (Risoluzione dei percorsi e redirezione al sottosistema opportuno) Il VFS decompone il percorso di un file nelle sue componenti (path lookup) ed individua i dispositivi in cui queste si trovano. Il VFS gestisce descrittori di file rappresentanti i file aperti dall'applicazione. Il descrittore punta ad informazioni sulle operazioni possibili nel file system. Il VFS invoca le funzioni di lavoro del file system che ospita il file. 10
11 Approccio orientato agli oggetti (Repetita iuvant) A tal scopo, il VFS definisce una unica implementazione generica delle operazioni: su un file system (montaggio, smontaggio, ); su un file (apertura, lettura, scrittura, chiusura, ); su una directory (apertura, lettura, scorrimento, ). Tale implementazione fa uso di strutture dati generali. Ciascun file system fornisce array di puntatori a funzioni di gestione, invocate opportunamente 11 dal VFS.
12 Un gran tour del VFS (AKA Che cosa è possibile farci ) Nelle slide seguenti sono illustrate alcune delle funzionalità principali del VFS. Allacciatevi le cinture; si parte! 12
13 File speciali (Rappresentano periferiche; permettono di colloquiare con esse) Un file speciale è associato ad una periferica e permette di accedervi a basso livello. I file speciali sono contenuti nella directory /dev. ls -l /dev I file speciali sono di due categorie. Caratteri: periferiche lente, accedute serialmente. Blocchi: periferiche veloci, accedute serialmente e casualmente. 13
14 Major number, minor number (Major Classe di periferiche; Minor Specifica istanza di periferica) Ad ogni file speciale è associata una coppia di numeri interi. Major number: caratterizza una intera classe di dispositivi (terminale, disco rigido, CD-ROM). Minor number: caratterizza una specifica istanza di un dispositivo in una classe (il primo disco, il secondo terminale). Major e minor number sono visibili con il comando ls -l /dev. 14
15 File speciali del disco (/dev/sd*) Il disco rigido (SSD, CD-ROM, DVD-ROM) è caratterizzato da file speciali del tipo /dev/sd*. sd: SCSI (SATA) device. Sulla macchina del docente: ls -l /dev/sd* Sono rilevati i seguenti file speciali: /dev/sda, /dev/sda1, /dev/sda2 /dev/sdb, /dev/sdb1 Due dischi rigidi distinti (sda e sdb): sda con due partizioni (sda1, sda2); sdb con una partizione (sdb1). 15
16 Esercizi (1 min.) 1. Quanti dispositivi a blocchi di tipo disco (con quante partizioni) sono attaccati e riconosciuti sulla vostra macchina? 16
17 Il comando strings (Estrae stringhe da file) Il comando strings estrae stringhe da un file. man 1 strings per tutti gli (interessantissimi) dettagli. L'opzione -a forza la ricerca in tutto il file (non solo nelle sezioni contenenti dati). Si provi il comando su un eseguibile: strings -a /bin/ls Cosa si ottiene? 18
18 Alcune informazioni estraibili (Dai programmi eseguibili) Si ottengono alcune informazioni interessanti. Il nome del programma che carica /bin/ls (/lib64/ld-linux-x86-64.so.2), chiamato caricatore dinamico (dynamic loader). I simboli (nomi di funzioni, variabili globali) usati dal programma. Le stringhe stampate dal programma. Informazioni sul compilatore usato per costruire il binario eseguibile. 19
19 Esercizi (5 min.) 2. Si estraggano le stringhe contenute in un disco rigido a scelta. 20
20 Clone di dischi (One-liner equivalente a Ghost/Clonezilla) Il comando seguente: dd if=/dev/sda of=/dev/sdb effettua una copia blocco per blocco del disco identificato da /dev/sda nel disco identificato da /dev/sdb. Strumento per la clonazione di dischi. 22
21 Masterizzazione di CD (DVD) (One-liner equivalente all'uso di Nero) Analogamente, il comando seguente: dd if=img.iso of=/dev/cdrw effettua una copia blocco per blocco dell'immagine img.iso nel CD inserito nell'unità /dev/cdrw. Strumento per la masterizzazione di CD. 23
22 File speciali del terminale (/dev/tty*, /dev/pts/*) Il terminale (fisico, virtuale testuale, virtuale in ambiente grafico) è caratterizzato da file speciali del tipo /dev/tty*, /dev/vcs* e /dev/pts/*. tty: terminale testo (Ctrl-Alt-Fx, x=1,, 6). vcs: buffer di memoria del tty corrispondente. pts: pseudoterminale allocato dinamicamente da ssh, gnome-terminal, konsole, etc. 24
23 File speciali del terminale (/dev/tty*, /dev/pts/*) Sulla macchina del docente: ls -l /dev/{tty,vcs,pts}* Sono rilevati i seguenti file speciali: /dev/tty0,, /dev/tty63 /dev/vcs, /dev/vcs1, /dev/vcs8 /dev/pts/0,, /dev/pts/4 25
24 Lettura di un terminale (Cosa sta succedendo su un terminale?) Il comando seguente stampa ogni secondo la schermata del secondo terminale (tty2): watch -n 1 fold -w 80 /dev/vcs2 Ripete ogni secondo Si dia il comando precedente e si vada sul terminale TTY2 con Ctrl-Alt-F2. Si digitino delle stringhe e si osservi il risultato del primo comando. Ridimensiona l'output ad 80 caratteri Il file da stampare ridimensionato 26
25 Statistiche di un processo (Come si chiama? Quali risorse consuma?) Per un processo di PID p il kernel crea la directory /proc/p contenente statistiche di ogni tipo. man 5 proc per conoscere ogni dettaglio. Ogni file in questa directory è associata ad una variabile o struttura dati interna al kernel. Quali statistiche sono disponibili? 27
26 Statistiche di un processo (Statistiche disponibili; p è il PID del processo) Nome del comando: cat /proc/p/cmdline Variabili di ambiente: cat /proc/p/environ Limiti sulle risorse: cat /proc/p/limits File aperti: ls -l /proc/p/fd IO: cat /proc/p/io Aree di memoria: cat /proc/p/maps Schedulazione CPU: cat /proc/p/sched Informazioni di stato: cat /proc/p/stat Informazioni thread: cat /proc/p/task/* 28
27 Esercizi (10 min.) 3. Si esegua l'applicazione chromium. Si risponda alle seguenti domande: quanti file apre? quante librerie dinamiche usa? 29
28 Premessa (Doverosa) Nel resto della lezione si illustreranno le principali operazioni su file system, file e directory. Il file system utilizzato è EXT3. Stephen Tweedie (2001). Stephen Tweedie (1969 -) 31
29 OPERAZIONI SU UN FILE SYSTEM: CREAZIONE 32
30 Creazione di un file system (Famiglia di comandi mkfs; in particolare, mkfs.ext3) Prima di poter essere utilizzato, un dispositivo di memorizzazione di massa va preparato all'uso. In GNU/Linux, la creazione di un file system avviene tramite la famiglia di comandi mkfs. mkfs: make file system. Per il file system EXT3, il comando è mkfs.ext3. 33
31 Creazione di un supporto ospitante (Laddove dovesse mancare una chiavetta USB o un disco) Solitamente un file system è creato su un supporto fisico di memorizzazione secondaria (disco rigido, chiavetta). È anche possibile creare il file system su un file! A tal scopo, si crea innanzitutto un file di dimensione opportuna (ad es. 100MB) contenente zeri: dd if=/dev/zero of=ext3.img bs=1m count=100 File speciale del File ospitante dispositivo il file system generatore di zeri Copia 1M da if 100 volte 34
32 Creazione di un file system su file (Si esegue mkfs.ext3 sul file appena creato) Per creare il file system si digiti il seguente comando: mkfs.ext3 ext3.img Tale comando scrive diverse strutture di controllo all'interno del file, in posizioni ben specifiche. Il risultato è un file system che potrà essere utilizzato in seguito. 35
33 Esercizi (2 min.) 4. Si tracci l'esecuzione del comando appena dato. Si salvi la traccia nel file seguente: mkfs-img.trace. 36
34 Quali operazioni effettua mkfs.ext3? (Interessante a sapersi) Si apra la traccia e si cerchino le occorrenze chiamate di sistema che: aprono (open()) mkfs-img.ext3. chiudono (close()) mkfs-img.ext3. leggono (read()) da mkfs-img.ext3. scrivono (write()) su mkfs-img.ext3. riposizionano (llseek()) mkfs-img.ext3. leggono i metadati (fstat()) di mkfs-img.ext3. 38
35 Quali operazioni effettua mkfs.ext3? (Interessante a sapersi) Il programma mkfs.ext3 apre ext3.img in sola lettura (per non alterarlo) e ne determina la dimensione. Successivamente riapre il file in lettura/scrittura, azzerando il file system (sequenza di pwrite() di zeri). Poi, scrive alcune strutture di controllo in posizioni precise e quasi equidistanti (le ultime pwrite() non di zeri). Infine, forza i buffer non ancora scritti su disco (fsync()) e chiude il file (fclose()). 39
36 Operazioni di mkfs.ext3 su chiave USB (Sono le stesse viste ora? Se sì, il VFS astrae veramente le operazioni!) Le operazioni viste ora cambiano sensibilmente o no in presenza di un dispositivo fisico (ad es., una chiavetta USB)? Il file mkfs-usb.trace in 15-esempi.tar.bz2 contiene la traccia del comando: mkfs.ext3 /dev/sdc1 (dove /dev/sdc1 è il file speciale di una chiavetta USB). L'unica grande differenza è l'apertura del file speciale /dev/sdc1. Per il resto, le operazioni sono grosso modo le stesse! 40
37 La struttura di EXT3 (Uno schema generale) Il supporto (file, partizione) è suddiviso in diversi gruppi di blocchi (block group) di dimensione uguale. Ciascun gruppo di blocchi contiene un certo numero di: strutture di controllo. blocchi contenenti dati (inizialmente, vuoti). Block Group 0... Block Group n Super Block Group Descriptor Data Block Bitmap Inode Bitmap Inode Table Data Block 1 blocco > 1 blocco 1 blocco 1 blocco > 1 blocco > 1 blocco 41
38 Quanto è grande un singolo blocco? (Bella domanda! Ce lo dice il comando stat) Il comando stat visualizza i metadati di un file (grandezza, permessi, autore, data di creazione, data di modifica, ). Con l'opzione -f, stat ritorna informazioni relative al file system. stat -f ext3.img Sulla macchina del docente, il file system EXT3 creato usa blocchi di 4KB. 42
39 Il superblocco (Contiene informazioni sull'intero file system) Il superblocco (Super Block) memorizza alcune informazioni riguardanti il file system. Dimensione dei blocchi, numero totale di blocchi, numero di blocchi liberi, device major e minor, Ogni gruppo di blocchi contiene una copia del superblocco (per motivi legati alla robustezza). Block Group 0... Block Group n Super Block Group Descriptor Data Block Bitmap Inode Bitmap Inode Table Data Block 1 blocco > 1 blocco 1 blocco 1 blocco > 1 blocco > 1 blocco 43
40 Il descrittore dei gruppi (Contiene informazioni sul blocco di gruppi) Il descrittore dei gruppi (Group Descriptor) memorizza alcune informazioni riguardanti il gruppo di blocchi corrente. Posizione delle varie bitmap, tabella delle strutture di controllo (inode), strutture di controllo libere, blocchi liberi,... Block Group 0... Block Group n Super Block Group Descriptor Data Block Bitmap Inode Bitmap Inode Table Data Block 1 blocco > 1 blocco 1 blocco 1 blocco > 1 blocco > 1 blocco 44
41 La bitmap dei blocchi di dati (Specifica quali blocchi di dati sono liberi e quali allocati) La bitmap dei blocchi dei dati (Data Block Bitmap) specifica quali blocchi di dati sono liberi e quali allocati. Deve essere contenuta in un singolo blocco. Block Group 0... Block Group n Super Block Group Descriptor Data Block Bitmap Inode Bitmap Inode Table Data Block 1 blocco > 1 blocco 1 blocco 1 blocco > 1 blocco > 1 blocco 45
42 La bitmap degli inode (Specifica quali strutture di controllo sono libere e quali allocati) La bitmap degli inode (Inode Bitmap) specifica quali strutture di controllo sono libere e quali allocate. Deve essere contenuta in un singolo blocco. Block Group 0... Block Group n Super Block Group Descriptor Data Block Bitmap Inode Bitmap Inode Table Data Block 1 blocco > 1 blocco 1 blocco 1 blocco > 1 blocco > 1 blocco 46
43 La tabella degli inode (Specifica quali strutture di controllo sono libere e quali allocati) La tabella degli inode (Inode Table) contiene tutte le strutture di controllo del file system. Un blocco più strutture impacchettate. Block Group 0... Block Group n Super Block Group Descriptor Data Block Bitmap Inode Bitmap Inode Table Data Block 1 blocco > 1 blocco 1 blocco 1 blocco > 1 blocco > 1 blocco 47
44 I blocchi dati (Memorizzano il contenuto dei file) I blocchi dati (Data Block) memorizzano il contenuto dei file. Block Group 0... Block Group n Super Block Group Descriptor Data Block Bitmap Inode Bitmap Inode Table Data Block 1 blocco > 1 blocco 1 blocco 1 blocco > 1 blocco > 1 blocco 48
45 OPERAZIONI SU UN FILE SYSTEM: CONTROLLO 49
46 Controllo di consistenza (AKA File system check ) Ciascun file system ha un applicativo per il controllo ed il mantenimento della consistenza dei metadati e dei blocchi. In Linux: suite di programmi fsck.nome_fs. fsck.ext3, fsck.vfat, Avvio (GNU/Linux): automatico, al boot, a file system montato in sola lettura, per il controllo della struttura in caso di problemi (segnalati dalla presenza di un file). manuale, da linea di comando (a file system smontato), con possibilità di riparazione. 50
47 Operazioni effettuate da fsck (Possono variare sensibilmente con il tipo di file system) Controllo di consistenza. Superblocco (dimensione del file system, numero di inode dichiarati, contatori di blocchi e inode liberi). Struttura delle directory (elementi disconnesse). Conteggio degli hard link di file e directory. Blocchi dati con checksum corrotto. Riparazione. Impostazione di metadati a valori consistenti. Ricostruzione della struttura delle directory. Marcatura di un blocco come inusabile. 51
48 Controllo di un file system su file (Si esegue fsck.ext3 sul file system appena creato) Per controllare il file system si digiti il seguente comando: fsck.ext3 ext3.img 52
49 Esercizi (2 min.) 5. Quali segnali gestisce fsck.ext3? 53
50 OPERAZIONI SU UN FILE SYSTEM: MONTAGGIO 55
51 Aggancio di un nuovo file system (File system mount) Un file system, prima di essere utilizzato deve essere associato ad un dispositivo di memorizzazione secondaria. deve essere agganciato ad un file system esistente, usando una directory come punto di attacco. Tali due operazioni prendono il nome di file system mount o, più brevemente, mount. La directory di aggancio prende il nome di mount point (punto di attacco). 56
52 Tabella di mount Aggancio file system: prima / Disco rigido (Due alberi staccati) Root file system su disco rigido Root directory / File system su CD-ROM Mount point /media/cdrom 57
53 Tabella di mount File system su CD-ROM Aggancio file system: dopo / Disco rigido /media/cdrom CDROM (Due alberi uniti) Root file system su disco rigido Mount point /media/cdrom Root directory / 58
54 Opzioni di mount (Lettura e scrittura, esecuzione, sincrona, asincrona) read-only: il file system è montato in sola lettura. sync: le scritture sono sincrone (eseguite una dietro l'altra, in maniera bloccante). async: le scritture sono asincrone (eseguite in blocco, più avanti, nel momento più favorevole). exec: si permette l'esecuzione dei programmi. 59
55 Montaggio del file system in UNIX (Il comando mount) Il comando mount permette di associare un supporto (file speciale, file contenente un file system) ad un mount point. Sintassi generale: mount -o options -t fs_type special_file mount_point Ad es. (montaggio in sola lettura): mount -o ro -t ext3 /dev/sda2 /mnt Se non si specificano opzioni e tipo, mount prova a scoprire il tipo del file system e a montarlo con opzioni di default (read write, esecuzione). 60
56 Montaggio del file system creato (Si esegue il comando mount sul file system creato) Si provi a montare il file system creato con il comando seguente: mount ext3.img /mnt La directory /mnt è, per convenzione, dedicata al montaggio di un file system esterno. (Nulla osta a montare il file system su un'altra directory). OCCHIO: mount vuole i privilegi di root! 61
57 Esercizi (3 min.) 6. Usando mount è possibile visualizzare tutti i file system montati? Se sì, come? 62
58 Visione dei file system su supporto (Supporto secondario fisico: dispositivo o file) Il comando lsblk visualizza i file system memorizzati su supporti fisici o file, con annessi mount point. lsblk È possibile ordinare l'output su campi specifici con l'opzione -x. lsblk -x mostra i campi disponibili. 64
59 Esercizi (3 min.) 7. Si ordini l'output di lsblk per dimensione del file system. 65
60 La tabella di mount (Fire up Il kernel mantiene una tabella di mount. In tale tabella sono mantenute tutte le associazioni dispositivo mount point. In Linux, la tabella di mount è implementata tramite la struttura dati struct vfsmount. File $LINUX/include/mount.h 67
61 Come interviene il VFS 1/2 (Meccanismo generale di associazione file system directory) Il comando mount invoca la chiamata di sistema mount. man 2 mount per conoscere tutti i dettagli. $LINUX/fs/namespace.c. mount() invoca la funzione di lavoro do_mount(). Nel caso di mount di un file system nuovo viene invocata la do_new_mount(). 68
62 Come interviene il VFS 2/2 (Meccanismo generale di associazione file system directory) do_new_mount() individua il tipo di file system ed invoca il meccanismo di montaggio del VFS tramite la vfs_kern_mount(). vfs_kern_mount() aggiorna la tabella di mount con il nuovo file system. 69
63 VFS e i diversi file system (Che possono usare superblocchi, ma anche no) File system diversi possono usare superblocchi di formato diverso. Altri file system (ad esempio, quelli virtuali come /proc) il superblocco non lo usano proprio! Il VFS fornisce una astrazione generale di superblocco: la struct super_ block. $LINUX/include/linux/fs.h Per un file system su disco, contiene i dati del relativo superblocco. Per un file system virtuale, è riempita dal kernel. 70
64 super_block e vfs_kern_mount() (Si usa super_block per rappresentare un qualsiasi file system montato) Nella vfs_kern_mount(): viene allocato un nuovo elemento della tabella di mount. alloc_vfsmnt() viene montato un file system. mount_fs() l'elemento della tabella viene popolato con il super_block del file system. mnt mnt.mnt_sb = root d_sb; Superblocco del VFS Superblocco del FS su disco 71
65 Sgancio del file system (File system umount) Il file system può essere staccato dal suo mount point tramite l'operazione di unmount (umount nel gergo UNIX), sostanzialmente l'inversa di mount. L'unmount è preceduto da un flush dei buffer del kernel. NOTA BENE: per motivi di efficienza, le scritture su di un file system sono eseguite in blocco, al momento più favorevole. Estrarre fisicamente un dispositivo senza aver smontato il suo file system equivale a corromperne i dati! 72
66 Root file system (La radice di tutti i mali) Almeno un file system deve essere presente all'avvio del SO, affinché il mount degli altri file system sia sempre possibile. Tale file system prende il nome di root file system e contiene almeno il comando init (directory /sbin o /usr/bin) per avviare i servizi della macchina. Tipicamente, il root file system è associato ad un disco rigido installato permanentemente. 73
67 Smontaggio del file system (Il comando umount) Il comando umount rompe l'associazione tra file system e mount point. Sintassi generale: umount [special_file mount_point] Ad es. (montaggio in sola lettura): umount /dev/sda2 umount /mnt 74
68 Smontaggio del file system creato (Si esegue il comando umount sul file system creato) Si provi a smontare il file system creato con il comando seguente: umount /mnt OCCHIO: umount vuole i privilegi di root! 75
69 OPERAZIONI SU UN FILE SYSTEM: RAPPRESENTAZIONE DI FILE 76
70 File Control Block (La struttura di controllo) Il File Control Block è la struttura che memorizza le proprietà durevoli di un file. Proprietario. Date notevoli (creazione, ultimo accesso, modifica). Dimensione. Permessi di accesso. Puntatori a blocchi di dati (il primo o tutti). Il FCB è memorizzato su disco. Hard disk FCB 77
71 L'inode EXT3 (Memorizza i metadati di un file) Nei file system UNIX (e, dunque, anche in EXT3), il FCB è l'inode. Esso è definito tramite la struttura dati seguente: struct ext3_inode. $LINUX/fs/ext3/ext3.h La sua dimensione tipica è di 128 byte. 78
72 Memorizzazione dei blocchi nell'inode (Tramite uno schema gerarchico di puntatori a blocchi) Nell'inode sono contenuti 15 puntatori a blocchi. Puntatori 1-12: puntatori diretti (blocchi diretti). Puntatore 13: puntatore a puntatore di blocchi (blocco indiretto singolo). Puntatore 14: puntatore a puntatore a puntatore di blocchi (blocco indiretto doppio). Puntatore 15: puntatore a puntatore a puntatore a puntatore di blocchi (blocco indiretto triplo). In tal modo è possibile memorizzare file di dimensioni estremamente eterogenee usando una tabella dei puntatori contenuta. 79
73 Organizzazione dell'inode (Metadati, blocchi diretti, blocchi indiretti singoli, doppi e tripli) Modo (permessi) dati Proprietario dati Timestamp Dimensione dati... Blocchi diretti... dati Indiretto singolo Indiretto doppio Indiretto triplo... dati dati dati dati dati dati 80
74 OPERAZIONI SU UN FILE SYSTEM: RAPPRESENTAZIONE DI DIRECTORY 81
75 La directory (Easier than I thought) Una directory è un file contenente coppie del tipo (nome, puntatore). Nome: Nome ad alto livello di un contenitore di informazioni (file, directory). Puntatore: punta ad una struttura dati contenente i metadati di un file o di un'altra directory. nome nome nome nome FCB FCB FCB FCB 82
76 Strutture di directory (Oggi si usa il modello a grafo) Una directory può essere rappresentata mediante diversi modelli (e relative strutture dati). 1.A singolo livello. 2.A due livelli. 3.Ad albero. 4.A grafo
77 I difetti dei primi schemi (AKA Perché oggi si usa lo schema a grafo ) Schema a singolo livello (console anni '80): estremamente scomodo nei sistemi multiutente (che succede se due utenti nominano allo stesso modo un file?). Schema a doppio livello (VMS): esiste un completo isolamento fra utenti. Schema ad albero (MSDOS): è scomodo condividere file fra utenti senza copiarli; è impossibile creare collegamenti a file. 84
78 Directory a grafo aciclico (Aciclico niente cicli infiniti di directory) Il file system è modellato con un grafo aciclico. Vertici: directory o file. Archi: relazioni fra directory e file contenuti. Vertice radice: rappresenta la directory radice del file system (UNIX: /, Windows: C:\). In tale modello, il contenuto di un file può essere referenziato da due elementi di directory (hard link) distinti. Usato da: SO UNIX. 85
79 Directory a grafo aciclico (Aciclico niente cicli infiniti di directory) / home bin I due elementi di directory puntano allo stesso FCB (dunque, allo stesso contenuto). Hard link amap amap6 Hard link 86
80 Un esempio di hard link (Debian) Nel SO Debian GNU/Linux, i due comandi eseguibili sudo e sudoedit (in /usr/bin) sono due hard link allo stesso contenuto. ls -l /usr/bin/sudo* Si osserva il contatore di hard link (secondo campo). Il contatore è posto a 2 (due elementi di directory puntano allo stesso contenuto). Rationale: il programma si comporta in maniera diversa a seconda del suo nome (ARGV[0]). Non c'è bisogno di installare due programmi quasi identici; se ne usa uno solo risparmio di spazio. 87
81 Limitazioni del modello a grafo aciclico (Diverse, purtroppo) Non è possibile introdurre un ciclo nel grafo. Niente link a directory superiori (si creerebbe un ciclo infinito). cd directory in una directory con ciclo stallo. Non è possibile creare un hard link ad un file in un altro file system. File system diversi implementazioni diverse delle directory. Ogni file system dovrebbe conoscere l'implementazione delle directory di ogni altro file system impraticabile. 88
82 Directory a grafo ciclico (Ciclico possibili cicli infiniti di directory) Il file system è modellato con un grafo ciclico. Vertici: directory o file. Archi: relazioni fra directory e file contenuti. Vertice radice: rappresenta la directory radice del file system (UNIX: /, Windows: C:\). In tale modello, è possibile creare link in grado di chiudere cicli (noti con il nome di soft link). Il contenuto è unico! I metadati del file sono unici! Usato da: SO UNIX (soft link), Windows 89 (collegamenti simbolici).
83 Directory a grafo ciclico (Ciclico possibili cicli infiniti di directory) home / bin I due elementi di directory puntano ad FCB diversi. Il contenuto puntato Il contenuto puntato da questo FCB è il da questo FCB è percorso del file quello del file originale. collegato. Hard link gawk awk Hard link Soft link awk gawk 90
84 Directory in EXT3 (Un file contenente una tabella di nomi e puntatori) In EXT3, una directory è implementata alla stregua di un file speciale (simbolo d nell'output di ls -l). Il contenuto di una directory è una lista di elementi del tipo: (nome, inode, lunghezza elemento). L'elemento è rappresentato dalla struct ext3_dir_entry. $LINUX/fs/ext3/ext3.h. 91
85 tempo Cancellazione di una directory (L'elemento precedente si ridimensiona opportunamente) Tabella directory prima della cancellazione di File4 File1 File2 File3 File4 File5 Inode 410 Inode 900 Inode 419 Inode 429 Inode 482 Tabella directory dopo la cancellazione di File4 File1 File2 Inode 410 Inode 900 File3 Inode 419 File4 Inode 429 L'elemento precedente si ridimensiona inglobando l'elemento cancellato File5 Inode
86 OPERAZIONI SU UN FILE SYSTEM: GESTIONE DELLO SPAZIO LIBERO 93
87 Il problema (Contro cosa si deve combattere) Lo spazio di memorizzazione secondario, seppur presente in misura molto maggiore rispetto alla memoria centrale, è comunque limitato. Come tenere traccia dei blocchi liberi? Gestione (efficiente) di un elenco (grande) di blocchi di liberi. In EXT3 si usa una bitmap. 94
88 Bitmap in EXT3 (Block bitmap, inode bitmap) Nell'area dei metadati di ciascun gruppo EXT3 alloca un intero blocco per la bitmap dei blocchi. 0: blocco libero, 1: blocco occupato. Il blocco della bitmap è puntato da un campo del descrittore di gruppo struct ext3_group_desc, definita nel file $LINUX/fs/ext3/ext3.h. Campo bg_block_bitmap, per la precisione. Vi è una bitmap analoga per gli inode, bg_inode_bitmap. 95
89 Gestione della bitmap (Operazioni di set/get sui bit) La gestione della bitmap è affidata ad alcune funzioni in $LINUX/fs/ext3/ext3.h. ext3_set_bit(): imposta ad 1 un bit. ext3_clear_bit(): imposta a 0 un bit. ext3_test_bit(): ritorna il valore di un bit. ext3_find_next_zero_bit(): trova l'indice del prossimo bit impostato a zero. Tali funzioni sono usate dagli allocatori di blocchi (balloc.c) e inode (ialloc.c). 96
90 OPERAZIONI SU UN FILE SYSTEM: ALLOCAZIONE DEI BLOCCHI 97
91 Lo scenario (A cosa sono soggetti kernel e disco) Solitamente, diversi processi vogliono scrivere sul disco contemporaneamente. Il SO si trova nella situazione di dover allocare blocchi di file system a diversi processi, per le operazioni di scrittura. Come allocare tali blocchi, in modo tale da usare lo spazio libero in maniera efficace? garantire un accesso veloce ai file (record logicamente vicini dovrebbero corrispondere a blocchi su disco fisicamente vicini)? 98
92 Frammentazione interna (Blocco troppo grande può non essere usato tutto) Se il blocco è di dimensione grande, un processo che scrive file piccoli rischia di allocare un blocco e di usarne una minima parte, con enorme spreco di spazio. Si ha frammentazione interna. 99
93 Frammentazione esterna (Blocco troppo grande può non essere usato tutto) Se il blocco è di dimensione piccola, un processo che scrive file grandi rischia di richiedere tantissimi blocchi, potenzialmente sparpagliati sul disco. In seguito a creazioni e cancellazioni di file, i blocchi liberi risultano disposti a gruviera. Si ha frammentazione esterna. 100
94 Allocazione inode per file (Nello stesso gruppo di blocchi, preferibilmente) Quando si crea un nuovo file, EXT3 prova ad allocare un inode nello stesso gruppo di blocchi della directory superiore. Rationale: tutti i file di una directory sono scritti in posizioni vicine sul disco. Tutti i file in /usr Tutti i file in /bin stesso gruppo. stesso gruppo. Ad es., ls -l /bin è velocissimo su un disco rotazionale (movimenti della testina ridotti). 101
95 Allocazione inode per file (Altrimenti, ricerca quadratica veloce oppure ricerca lineare lenta) Se il gruppo di blocchi i-mo è pieno, si opera una ricerca quadratica. Si cerca nei gruppi di blocchi: i % n (i + 1) % n (i ) % n (i ) % n Se tali gruppi di blocchi sono tutti pieni, si opera una ricerca lineare su tutti i gruppi di blocchi. Funzione ext3_get_inode(). $LINUX/fs/ext3/inode.c. 102
96 Allocazione inode per directory (In un gruppo di blocchi non molto utilizzato) Quando si crea una nuova directory, EXT3 prova ad allocare un inode in un gruppo di blocchi non molto utilizzato (il cui numero di blocchi e inode occupati sia sotto la media sui vari gruppi di blocchi). Rationale: mantenere bilanciati i diversi gruppi di blocchi. 103
97 Allocazione blocchi dati (Possibilmente vicino al precedente) Quando un file o una directory sono aumentati, EXT3 alloca un nuovo blocco dati. Primo obiettivo: si tenta l'allocazione di un blocco contiguo al precedente. Se si riesce, si tenta anche una pre-allocazione di otto blocchi (anche se ne è chiesto uno solo). Rationale: favorire la contiguità del file su disco (aumenta le prestazioni in dischi rotazionali). 104
98 Allocazione blocchi dati (Altirmenti, su blocchi distanti nello stesso gruppo o in gruppi successivi) Se invece il blocco contiguo non è libero, si prova con il blocco immediatamente successivo. Se si trova un blocco nello stesso gruppo di blocchi, si tenta la pre-allocazione. Se non si trova un blocco libero, si cerca negli altri gruppi di blocchi. Funzione ext3_get_block(). $LINUX/fs/ext3/inode.c. 105
99 OPERAZIONI SU FILE: METADATI 106
100 Tipi di file (File di testo, documenti, eseguibili, script di shell) I file possono essere classificati in tipi, in modo tale da assegnare ad essi una applicazione di default che li possa gestire. Esempi: Codice sorgente editor del programmatore. File multimediale riproduttore audio/video. Come fa il SO a riconoscere il tipo di file? Associazione di una estensione. Analisi del contenuto del file. 107
101 Estensione (.txt,.doc,.exe,.sh) Si aggiunge al nome del file una estensione secondo lo schema: <nome_file><separatore><estensione> Esempi: command.com, autoexec.bat, report.doc In tale schema: nome_file è un nome assegnato dall'utente. estensione è una stringa rappresentante univocamente il tipo di dato in questione. separatore è un carattere che delinea il nome dall'estensione (solitamente, un punto). 108
102 Supporto per le estensioni: associazione diretta (Il SO decide l'applicazione di default) Il meccanismo più semplice di riconoscimento del tipo del file è la associazione diretta. Il SO legge l'estensione del file e gli associa automaticamente una applicazione tipo. Il nome dell'applicazione tipo: è cablato nel SO (MS-DOS, UNIX linea di comando con filtro lesspipe). è scritto come metadato del file (Mac OS). 109
103 Supporto per le estensioni: lista di estensioni 1/2 (L'applicazione dichiara la sua lista di estensioni) Ciascuna applicazione gestisce una lista di estensioni gradite. Ad esempio, Libreoffice.doc,.odt,.docx Diverse applicazioni possono leggere lo stesso tipo di file. Abiword, Openoffice, Libreoffice.doc Una sola applicazione può essere impostata come il default per un dato tipo di file. 110
104 Supporto per le estensioni: lista di estensioni 2/2 (L'applicazione dichiara la sua lista di estensioni) Quando un utente clicca due volte sull'icona di un file in un ambiente desktop, il SO carica l'applicazione di default. Quando un utente clicca col tasto destro sull'icona del file e seleziona Apri con..., viene mostrata la lista delle applicazioni in grado di gestire il tipo di file. Approccio usato nei SO: Windows UNIX (desktop grafico) 111
105 Analisi del contenuto (Approccio signature-based, simile al modus operandi di un antivirus) Ciascun file è riconoscibile da una o più sequenze di byte (dette magic number) in offset strategici. Ad esempio, un eseguibile in formato ELF contiene i caratteri 'E', 'L', 'F' nel secondo, terzo e quarto byte. Si digiti less /bin/ls per verificare. Il sistema operativo contiene tutti i magic number in un database locale su file, detto magic file. /usr/share/file/misc/magic 112
106 L'interfaccia ai magic file (Approccio signature-based ; molto più potente delle estensioni) Il comando file (UNIX, linea di comando) scandisce un file alla ricerca dei magic number, fino a quando non ne trova uno corretto. file file.txt file.txt: ASCII text, with very long lines. 113
107 Il tipo di dato file eseguibile (AKA Come far partire i programmi eseguibili digitando il loro nome) In GNU/Linux, un file eseguibile (riconosciuto dalla signature del formato ELF) è associato ad un programma detto caricatore (loader). /lib/ld-linux.so.2 Il caricatore: carica in memoria le librerie necessarie all'esecuzione. carica il programma. 114
108 Il tipo di dato file eseguibile (AKA Come far partire gli script digitando il loro nome) Il caricatore controlla se il file inizia con una riga simile (detta she-bang): #!/bin/bash Tale linea specifica l'interprete dello script. In tal caso, il caricatore: carica l'interprete (con relative librerie) esegue l'interprete con argomento pari al nome dello script. 115
109 Esercizi (10 min.) 8. Si trovino tutti i file di testo nel file system. Si usino i seguenti comandi: find, file. 116
110 OPERAZIONI SU FILE: I/O BUFFERIZZATO 119
111 La tabella dei file aperti (Il kernel deve sapere quali file ha aperto un processo) Ciascun PCB di processo contiene un puntatore ad una tabella dei file aperti. Tale tabella contiene strutture dati descriventi, all'intenro del kernel, i file attualmente aperti dal processo. In Linux, la task_struct ha un campo struct files_struct *files. 120
112 I/O low-level e bufferizzato (Si interagisce direttamente col kernel oppure si usa un buffer della GLIBC) I/O diretto (basso livello, low-level): le operazioni sono inviate direttamente al kernel, una per una. I/O bufferizzato: le operazioni di I/O sono gestite da un buffer intermedio. Letture e scritture sono ritardate fino al riempirsi del buffer. 121
113 Buffering in GNU/Linux (Due buffer; uno applicativo, uno del kernel) Buffer applicativo. Usato dalle funzioni di libreria del C. Le operazioni di I/O lavorano con un buffer più grande di un carattere. Una chiamata di sistema Un minimo di lavoro per il kernel. Buffer del kernel. Usato per ricordarsi delle letture fatte (le richieste successive sono servite da RAM). Usato per raggruppare le scritture (essendo più lente delle letture, sono fatte tutte insieme). 122
114 Buffering in GNU/Linux (Un'immagine vale 1000 parole) Applicazione Libreria del C Funzioni di I/O (Bufferizzato o no) Buffer applicativo User Kernel Chiamate di sistema Hardware Esecutore I/O Buffer kernel 123
115 Esempio: read bufferizzata (Un'immagine vale 1000 parole) User Kernel Applicazione 9 Libreria del C 3 1 Funzioni di I/O (Bufferizzato o no) 2 8 Chiamate di sistema 6 Buffer applicativo 7 Hardware Esecutore I/O 4 5 Buffer kernel 124
116 Impostazione del buffer applicativo (Tre modalità distinte) Nessun buffer: il buffer ha dimensione nulla (non viene utilizzato). Singola riga: il buffer è considerato riempito quando raggiunge la sua massima dimensione o quando si incontra un carattere newline. Buffering completo: il buffer è considerato riempito quando raggiunge la sua massima dimensione. 125
117 Flushing dei buffer (Applicativi e kernel) È possibile forzare in ogni istante il contenuto dei buffer applicativo e/o kernel sul disco. Un concetto, due nomi distinti. Flush: svuotamento del buffer applicativo. Sync: svuotamento del buffer del kernel. 126
118 I/O diretto e file descriptor (Il legame tra descrittore di file e tabella dei file aperti) In caso di I/O diretto, un file aperto è identificato da un intero detto descrittore di file (file descriptor). Il descrittore di file è un indice all'elemento relativo della tabella dei file aperti. Il descrittore di file è ottenuto come valore di ritorno della chiamata di sistema open(). 127
119 I/O bufferizzato e FILE * (Il legame tra FILE * e tabella dei file aperti) In caso di I/O bufferizzato, un file aperto è chiamato stream ed è identificato da un puntatore ad una struct _IO_FILE (FILE * nella libreria del C). Tale struttura contiene: il descrittore del file con cui identificare l'elemento della tabella dei file aperti. un puntatore al buffer applicativo di default. informazioni di controllo dello stream (posizione della testina, lunghezza del buffer,...). Il FILE * è ottenuto come valore di ritorno della funzione di libreria fopen(). 128
120 Applicazione Descrittore del file User Kernel Descrittore di file e FILE * (Un'immagine vale 1000 parole) FILE * Descrittore del file I/O non bufferizzato Tabella dei file aperti Descrittore del file I/O bufferizzato Hardware 129
121 Il monitor dei poveri (Un grande classico della letteratura) Si provi a costruire un monitor di CPU dei poveri usando il comando esterno mpstat e prendendo la terza colonna dell'output. mpstat è nel pacchetto software sysstat. Il task è scomponibile in una pipeline a tre stadi. Avvio del monitor (mpstat 1). Compattazione degli spazi tra i campi del record (tr -s ). Individuazione della terza colonna, usando come separatore il singolo spazio (cut -f3 -d ). mpstat 1 tr -s cut -f3 -d 130
122 Il comando non funziona (Perché?) Si lanci la pipeline e si scopra, con tristezza, che non funziona. mpstat 1 tr -s cut -f3 -d Che cosa è successo? In realtà, la pipeline immessa funziona. Probabilmente, uno dei comandi è bufferizzato su un record logico abbastanza grande. Finché il record logico non è riempito, il buffer non è scaricato sulla pipe e l'applicazione successiva non riceve niente. 131
123 Analisi del buffering (Chi è stato?) Chi può essere il colpevole? Comando esterno mpstat. Non può essere! Il suo output è orientato alle linee! Altrimenti non vedreste output periodico... Comando esterno cut. Si verifichi se è lui. Si tolga tr dalla pipeline e si veda se l'output si blocca. mpstat 1 cut -f3 -d L'output è di nuovo istantaneo cut è innocente. Il colpevole deve essere il comando esterno tr. 132
124 Dimostrazione del buffering (Con tanto di prove) Il comando esterno tr è presente nel pacchetto coreutils (utility di base del sistema). Se si scarica l'archivio sorgente con il seguente comando (Debian): apt-get source coreutils (BIG FAT WARNING: abilitare i repository dei sorgenti se non si riesce a scaricare l'archivio) e si entra nella directory coreutils-8.13/src, aprendo il file tr.c (sorgente di tr) si scopre che l'i/o è bufferizzato con record logici di dimensione pari a BUFSIZ (32KB). 133
125 Come si controlla il buffering? (Come si risolve il problema?) Il problema si risolve impostando il buffering in modalità line oriented per il comando esterno tr. Fortunatamente, il comando esterno stdbuf effettua proprio questa operazione in maniera estremamente semplice. stdbuf -ol tr -s : imposta il buffering line oriented (-ol) per il comando esterno tr -s man stdbuf per tutti i dettagli Si provi la seguente pipeline: mpstat 1 stdbuf -ol tr -s cut -f 3 -d 134
126 Esercizi (5 min.) 9. Si modifichi la pipeline precedente in modo tale da monitorare la percentuale di tempo in cui la CPU è inattiva (CPU idle). 135
127 OPERAZIONI SU FILE: RIPOSIZIONAMENTO 137
128 Modifica della posizione del file (AKA Seeking ) Si interroghi il manuale circa la presenza di funzioni per la modifica della posizione del file. apropos -s2,3 reposition Si ottiene: lseek(): chiamata di sistema per il riposizionamento in un file (I/O non bufferizzato). fseek(): funzione di libreria per il riposizionamento in uno stream (I/O bufferizzato). 138
129 I tipi di riposizionamento (In avanti/indietro, da inizio/posizione attuale/fine file) File contenente N byte di dati Byte non scritti dopo EOF N-2 N-1 N N+1... SEEK_SET SEEK_CUR SEEK_END Valore del terzo parametro di lseek() Esempio d'uso: sorgente lseek_txt.c dentro l'archivio 15-esempi.tar.bz2. 139
130 Esercizi (5 min.) 10. Si modifichi il programma lseek_txt.c in modo tale da spostare la posizione al penultimo carattere del file. 140
Lezione T11 Virtual File System
Lezione T11 Virtual File System Sistemi Operativi (9 CFU), CdL Informatica, A. A. 2013/2014 Dipartimento di Scienze Fisiche, Informatiche e Matematiche Università di Modena e Reggio Emilia http://weblab.ing.unimo.it/people/andreolini/didattica/sistemi-operativi
DettagliLezione 15 File System
Lezione 15 File System Sistemi Operativi (9 CFU), CdL Informatica, A. A. 2014/2015 Dipartimento di Scienze Fisiche, Informatiche e Matematiche Università di Modena e Reggio Emilia http://weblab.ing.unimo.it/people/andreolini/didattica/sistemi-operativi
DettagliCapitolo 11 -- Silberschatz
Implementazione del File System Capitolo 11 -- Silberschatz Implementazione del File System File system: Definizione dell aspetto del sistema agli occhi dell utente Algoritmi e strutture dati che permettono
DettagliSistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory
FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File
DettagliSistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1
IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza
DettagliIl file system. meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate. in memoria di massa
Il File System 1 Il file system E quella componente del SO che fornisce i meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate in memoria di massa Realizza i concetti astratti
DettagliIl File System. Il file system
Il File System Il file system Parte di SO che fornisce i meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate in memoria di massa Realizza i concetti astratti di file:
DettagliSistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione
IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza
DettagliIl Software. Il software del PC. Il BIOS
Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:
DettagliOrganizzazione di Sistemi Operativi e Reti
Organizzazione di Sistemi Operativi e Reti Corso di Laurea Triennale in Ingegneria Informatica Sara Lioba Volpi (sara.volpi@iet.unipi.it) Quarta esercitazione Sommario Virtual file system (VFS) concetto
DettagliIl software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi
Il Software Il software impiegato su un computer si distingue in: Software di sistema Sistema Operativo Compilatori per produrre programmi Software applicativo Elaborazione testi Fogli elettronici Basi
DettagliSistemi Operativi Il Sistema Operativo Windows (parte 3)
Sistemi Operativi Il Sistema Operativo Windows (parte 3) Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Crediti per queste slides al Prof. Tullio Vardanega Architettura di NTFS 1 NTFS file system adottato
DettagliTerza lezione: Directory e File system di Linux
Terza lezione: Directory e File system di Linux DIRECTORY E FILE SYSTEM Il file system di Linux e Unix è organizzato in una struttura ad albero gerarchica. Il livello più alto del file system è / o directory
DettagliIL SISTEMA OPERATIVO IL SISTEMA OPERATIVO INTERFACCE TESTUALI INTERFACCE TESTUALI FUNZIONI DEL SISTEMA OPERATIVO INTERFACCE GRAFICHE
IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE
DettagliFile system II. Sistemi Operativi Lez. 20
File system II Sistemi Operativi Lez. 20 Gestione spazi su disco Esiste un trade-off,tra spreco dello spazio e velocità di trasferimento in base alla dimensione del blocco fisico Gestione spazio su disco
DettagliFoLUG Forlì Linux User Group. Partizionamento
FoLUG Forlì Linux User Group con la partecipazione della Circoscrizione n 3 di Forlì Partizionamento Quello che occorre sapere sul disco fisso per installare UBUNTU 10.10 o altri sistemi operativi. FoLUG
DettagliIl Sistema Operativo: il File System
Il Sistema Operativo: il File System Il File System è quella parte del S.O. che si occupa di gestire e strutturare le informazioni memorizzate su supporti permanenti (memoria secondaria) I file vengono
DettagliSoftware di base. Corso di Fondamenti di Informatica
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Software di base Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti
DettagliIl sistema operativo: interazione con l utente
interazione con l utente S.O fornisce un meccanismo per specificare le attività da eseguire (es. copiare un file) L interazione avviene mediante un linguaggio testuale (DOS) o grafico (Windows) linguaggio
DettagliSistemi Operativi. Organizzazione logica ed implementazione di un File System
Modulo di Sistemi Operativi per il corso di Master RISS: Ricerca e Innovazione nelle Scienze della Salute Unisa, 17-26 Luglio 2012 Sistemi Operativi Organizzazione logica ed implementazione di un File
DettagliIl Sistema Operativo
Il Sistema Operativo Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al meglio le risorse del Sistema
DettagliLe Infrastrutture Software ed il Sistema Operativo
Le Infrastrutture Software ed il Sistema Operativo Corso di Informatica CdL: Chimica Claudia d'amato claudia.damato@di.uniba.it Il Sistema Operativo (S0) (Inf.) E' l'insieme dei programmi che consentono
DettagliGestione del file system
Gestione del file system Gestione del file system Il gestore del file system è quella parte del sistema operativo incaricato di gestire le informazioni memorizzate sui dispositivi di memoria permanente
DettagliGestione della memoria centrale
Gestione della memoria centrale Un programma per essere eseguito deve risiedere in memoria principale e lo stesso vale per i dati su cui esso opera In un sistema multitasking molti processi vengono eseguiti
DettagliLink e permessi. Corso di Laurea Triennale in Ingegneria delle TLC e dell Automazione. Corso di Sistemi Operativi A. A. 2005-2006
Corso di Laurea Triennale in Ingegneria delle TLC e dell Automazione Corso di Sistemi Operativi A. A. 2005-2006 Link e permessi Link Un riferimento ad un file è detto link Ogni file può avere un numero
DettagliIl Sistema Operativo (1)
E il software fondamentale del computer, gestisce tutto il suo funzionamento e crea un interfaccia con l utente. Le sue funzioni principali sono: Il Sistema Operativo (1) La gestione dell unità centrale
DettagliSistemi Operativi (modulo di Informatica II)
Sistemi Operativi (modulo di Informatica II) Implementazione del file system Patrizia Scandurra Università degli Studi di Bergamo a.a. 2009-10 Implementazione del File System Sommario Realizzazione del
DettagliIndice. settembre 2008 Il File System 2
Il File System Indice 4. Il File System 5. Vantaggi del FS 6. Protezione 7. Condivisione 8. I file - 1 9. I file - 2 10. Attributi dei file 11. Directory 12. Livelli di astrazione - 1 13. Livelli di astrazione
DettagliSistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo
Sistema Operativo Fondamenti di Informatica 1 Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al
DettagliStruttura del Micro Filesystem (µfs)
Struttura del Micro Filesystem (µfs) Il Micro Filesystem deve essere organizzato all'interno di un unico file regolare Linux (dev_ufs) ed può basato sul filesystem FAT-32 con la gestione dei permessi in
DettagliInformatica e Bioinformatica: Sistemi Operativi
Informatica e Bioinformatica: Sistemi Operativi 11 marzo 2013 Macchina Hardware/Software Sistema Operativo Macchina Hardware La macchina hardware corrisponde alle componenti fisiche del calcolatore (quelle
DettagliSistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
DettagliMECCANISMI E POLITICHE DI PROTEZIONE 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
DettagliCon il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.
Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell
DettagliUniversità degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica
Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica Il presente esame scritto deve essere svolto in forma individuale in un tempo massimo di 60 minuti dalla sua
DettagliSistema operativo: Gestione della memoria
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Sistema operativo: Gestione della memoria La presente dispensa e
DettagliL informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia
L informatica È la disciplina scientifica che studia INTRODUZIONE I calcolatori, nati in risposta all esigenza di eseguire meccanicamente operazioni ripetitive Gli algoritmi, nati in risposta all esigenza
DettagliIntroduzione ai Sistemi Operativi
Introduzione ai Sistemi Operativi Sistema Operativo Software! Applicazioni! Sistema Operativo! È il livello di SW con cui! interagisce l utente! e comprende! programmi quali :! Compilatori! Editori di
DettagliIl memory manager. Gestione della memoria centrale
Il memory manager Gestione della memoria centrale La memoria La memoria RAM è un vettore molto grande di WORD cioè celle elementari a 16bit, 32bit, 64bit (2Byte, 4Byte, 8Byte) o altre misure a seconda
DettagliCompilatore risorse display grafico LCD serie IEC-line
Compilatore risorse display grafico LCD serie IEC-line aggiornamento: 22-11-2012 IEC-line by OVERDIGIT overdigit.com 1. Il display grafico LCD I PLC della serie IPC-line possono disporre opzionalmente
DettagliIl sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione
Il sistema di I/O Hardware di I/O Interfacce di I/O Software di I/O Introduzione 1 Sotto-sistema di I/O Insieme di metodi per controllare i dispositivi di I/O Obiettivo: Fornire ai processi utente un interfaccia
DettagliCorso di Sistemi di Elaborazione delle informazioni
Corso di Sistemi di Elaborazione delle informazioni Sistemi Operativi Francesco Fontanella Complessità del Software Software applicativo Software di sistema Sistema Operativo Hardware 2 La struttura del
DettagliEsercitazione su Windows. Introduzione al calcolatore Introduzione a Windows
Esercitazione su Windows Introduzione al calcolatore Introduzione a Windows Sistemi Operativi Moderni Multi-Utente Multi-Processo Strutturati a Cipolla Dispongono di Interfaccia Grafica (GUI) oltre che
DettagliIl SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)
Il software Software Il software Il software è la sequenza di istruzioni che permettono ai computer di svolgere i loro compiti ed è quindi necessario per il funzionamento del calcolatore. Il software può
DettagliIL SOFTWARE TIPI DI SOFTWARE. MACCHINE VIRTUALI Vengono definite così perché sono SIMULATE DAL SOFTWARE, UNIFORMANO L ACCESSO SISTEMA OPERATIVO
IL SOFTWARE L HARDWARE da solo non è sufficiente a far funzionare un computer Servono dei PROGRAMMI (SOFTWARE) per: o Far interagire, mettere in comunicazione, le varie componenti hardware tra loro o Sfruttare
DettagliMac Application Manager 1.3 (SOLO PER TIGER)
Mac Application Manager 1.3 (SOLO PER TIGER) MacApplicationManager ha lo scopo di raccogliere in maniera centralizzata le informazioni piu salienti dei nostri Mac in rete e di associare a ciascun Mac i
DettagliIn un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :
Un Sistema Operativo è un insieme complesso di programmi che, interagendo tra loro, devono svolgere una serie di funzioni per gestire il comportamento del computer e per agire come intermediario consentendo
DettagliLezione 12. Sistemi operativi. Marco Cesati System Programming Research Group Università degli Studi di Roma Tor Vergata
Lezione 12 Sistemi operativi 19 maggio 2015 System Programming Research Group Università degli Studi di Roma Tor Vergata SO 15 12.1 Di cosa parliamo in questa lezione? Organizzazione e realizzazione dei
DettagliINTERAZIONE CON L UTENTEL
IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE
DettagliDefinizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base
Sistema operativo Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Architettura a strati di un calcolatore
DettagliAutomatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione
Automatizzare i compiti ripetitivi I file batch Anno accademico 2000-01 1 Spesso capita di dover eseguire ripetutatmente una data sequenza di comandi Introdurli uno a uno da tastiera è un processo lento
DettagliBreve guida a Linux Mint
Breve guida a Linux Mint Il Desktop. Il "desktop" (scrivania) è la parte del sistema operativo che è responsabile per gli elementi che appaiono sul desktop: il Pannello, lo sfondo, il Centro di Controllo,
DettagliCorso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa. Raccolta prove scritte. Prova scritta
Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa Raccolta prove scritte Realizzare una classe thread Processo che deve effettuare un numero fissato di letture da una memoria
DettagliConfigurazione della ricerca desktop di Nepomuk. Sebastian Trüg Anne-Marie Mahfouf Traduzione della documentazione in italiano: Federico Zenith
Configurazione della ricerca desktop di Nepomuk Sebastian Trüg Anne-Marie Mahfouf Traduzione della documentazione in italiano: Federico Zenith 2 Indice 1 Introduzione 4 1.1 Impostazioni di base....................................
DettagliNozioni di Informatica di base. dott. Andrea Mazzini
Nozioni di Informatica di base dott. Andrea Mazzini Hardware e Software Hardware: la parte fisica del calcolatore Software: l insieme di programmi che un calcolatore richiede per funzionare Nozioni di
Dettagli. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi
Capitolo Terzo Primi passi con Microsoft Access Sommario: 1. Aprire e chiudere Microsoft Access. - 2. Aprire un database esistente. - 3. La barra multifunzione di Microsoft Access 2007. - 4. Creare e salvare
DettagliPARTE 4 La Macchina Software
PARTE 4 La Macchina Software 94 Macchina Hardware e Macchina Software applicativi sistema operativo macchina hardware Agli albori dell'informatica, si programmava in binario, cioe` in linguaggio macchina,
Dettagli12. Implementazione di un File System. 12.1.1 Struttura a livelli. 12.2.1 Allocazione contigua
12. Implementazione di un File System 1 Struttura del file system Metodi di allocazione Gestione dello spazio libero Implementazione delle directory Prestazioni ed efficienza 2 Utente 12.1.1 Struttura
DettagliGestione dei File in C
Gestione dei File in C Maurizio Palesi DIIT Università di Catania Viale Andrea Doria 6, 95125 Catania mpalesi@diit.unict.it http://www.diit.unict.it/users/mpalesi Sommario In questo documento saranno introdotte
DettagliInstallazione LINUX 10.0
Installazione LINUX 10.0 1 Principali passi Prima di iniziare con l'installazione è necessario entrare nel menu di configurazione del PC (F2 durante lo start-up) e selezionare nel menu di set-up il boot
DettagliIl Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10
Il Software e Il Sistema Operativo Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10 Cosa Impareremo Programmi e Processi Struttura del Sistema Operativo Sviluppo di Programmi I files e la loro
DettagliMANUALE EDICOLA 04.05
MANUALE EDICOLA 04.05 Questo è il video che si presenta avviando il programma di Gestione Edicola. Questo primo video è relativo alle operazioni di carico. CARICO Nello schermo di carico, in alto a sinistra
DettagliIl Sistema Operativo. C. Marrocco. Università degli Studi di Cassino
Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.
DettagliInterfaccia del file system
Interfaccia del file system Concetto di file Modalità di accesso Struttura delle directory Montaggio di un file system Condivisione di file Protezione 9.1 File E un insieme di informazioni correlate e
Dettagli5-1 FILE: CREAZIONE NUOVO DOCUMENTO
Capittol lo 5 File 5-1 FILE: CREAZIONE NUOVO DOCUMENTO In Word è possibile creare documenti completamente nuovi oppure risparmiare tempo utilizzando autocomposizioni o modelli, che consentono di creare
DettagliConsiglio regionale della Toscana. Regole per il corretto funzionamento della posta elettronica
Consiglio regionale della Toscana Regole per il corretto funzionamento della posta elettronica A cura dell Ufficio Informatica Maggio 2006 Indice 1. Regole di utilizzo della posta elettronica... 3 2. Controllo
DettagliCorso di Informatica
Corso di Informatica Modulo T2 1 Sistema software 1 Prerequisiti Utilizzo elementare di un computer Significato elementare di programma e dati Sistema operativo 2 1 Introduzione In questa Unità studiamo
DettagliControllo I/O Costituito dai driver dei dispositivi e dai gestori dei segnali d interruzione.
C6. REALIZZAZIONE DEL FILE SYSTEM Struttura del file system Un file è analizzabile da diversi punti di vista. Dal punto di vista del sistema è un contenitore di dati collegati tra di loro, mentre dal punto
DettagliIl computer: primi elementi
Il computer: primi elementi Tommaso Motta T. Motta Il computer: primi elementi 1 Informazioni Computer = mezzo per memorizzare, elaborare, comunicare e trasmettere le informazioni Tutte le informazioni
Dettagli2.2.2.1 Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento.
Uso del computer e gestione dei file 57 2.2.2.1 Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento. All interno
DettagliGHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.
*+33(GLWRU GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. Il programma si basa su un architettura di tasti funzionali presenti
DettagliInformatica - A.A. 2010/11
Ripasso lezione precedente Facoltà di Medicina Veterinaria Corso di laurea in Tutela e benessere animale Corso Integrato: Matematica, Statistica e Informatica Modulo: Informatica Esercizio: Convertire
DettagliIntroduzione al sistema operativo Il file system: file, directory,...
,OVRIWZDUHGLVLVWHPD cosa vedremo: Introduzione al sistema operativo Il file system: file, directory,...... 223,OVRIWZDUHLQWURGX]LRQH L hardware da solo non è sufficiente per il funzionamento dell elaboratore
DettagliIntroduzione alle tecnologie informatiche. Strumenti mentali per il futuro
Introduzione alle tecnologie informatiche Strumenti mentali per il futuro Panoramica Affronteremo i seguenti argomenti. I vari tipi di computer e il loro uso Il funzionamento dei computer Il futuro delle
DettagliImplementazione del File System
Implementazione del file system Implementazione del File System Struttura del file system. Realizzazione del file system. Implementazione delle directory. Metodi di allocazione. Gestione dello spazio libero.
DettagliGUIDA UTENTE PRIMA NOTA SEMPLICE
GUIDA UTENTE PRIMA NOTA SEMPLICE (Vers. 2.0.0) Installazione... 2 Prima esecuzione... 5 Login... 6 Funzionalità... 7 Prima Nota... 8 Registrazione nuovo movimento... 10 Associazione di file all operazione...
DettagliRegistratori di Cassa
modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...
DettagliPrimi Passi con GNU/Linux
Primi Passi con GNU/Linux Relatore: P pex email: pipex08@gmail.com Feb-2010 Pre-Installazione Funzionerà tutto? lista del proprio Hardware ricerca della "compatibilità" sotto Linux Utilizzare una Live
DettagliProtezione. Protezione. Protezione. Obiettivi della protezione
Protezione Protezione La protezione riguarda i meccanismi per il controllo dell accesso alle risorse in un sistema di calcolo da parte degli utenti e dei processi. Meccanismi di imposizione fissati in
Dettagli11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0
11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0 PAG. 2 DI 38 INDICE 1. PREMESSA 3 2. SCARICO DEL SOFTWARE 4 2.1 AMBIENTE WINDOWS 5 2.2 AMBIENTE MACINTOSH 6 2.3 AMBIENTE
Dettaglilo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000
Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,
DettagliParte V. Sistemi Operativi & Reti. Sistemi Operativi. Sistemi Operativi
Parte V & Reti Sistema operativo: insieme di programmi che gestiscono l hardware Hardware: CPU Memoria RAM Memoria di massa (Hard Disk) Dispositivi di I/O Il sistema operativo rende disponibile anche il
DettagliDatabase. Si ringrazia Marco Bertini per le slides
Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida
DettagliGuida iscrizione Community. istruzione.social.marche.it
Guida iscrizione Community istruzione.social.marche.it 1. Collegarsi con un browser all indirizzo : http://istruzione.social.marche.it 2. Viene visualizzata la seguente schermata di cohesion : 3. Se siete
DettagliRiccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino
Integration Services Project SQL Server 2005 Integration Services Permette di gestire tutti i processi di ETL Basato sui progetti di Business Intelligence di tipo Integration services Project SQL Server
DettagliOrganizzazione degli archivi
COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i
DettagliDrivers. Introduzione Tipologie Struttura Interazione con il kernel
Drivers Introduzione Tipologie Struttura Interazione con il kernel Driver Un driver è un modulo del sistema operativo Esterno al kernel Dedicato alla gestione di una specifica periferica Come altre funzionalità
DettagliPROGRAMMI UTENTE INTERPRETE COMANDI FILE SYSTEM GESTIONE DELLE PERIFERICHE GESTIONE DELLA MEMORIA GESTIONE DEI PROCESSI (NUCLEO) HARDWARE
IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE
DettagliSistemi Operativi (modulo di Informatica II)
Sistemi Operativi (modulo di Informatica II) Implementazione del file system Patrizia Scandurra Università degli Studi di Bergamo a.a. 2011-12 Implementazione del File System Sommario Realizzazione del
DettagliSoftware di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche
Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica
Dettagli11 Realizzazione del File System. 11.1.1 Struttura a livelli (fig. 11.1) 11.4 Allocazione dei file
11 Realizzazione del File System 1 Metodi di allocazione Allocazione contigua Allocazione concatenata e varianti Allocazione indicizzata e varianti Gestione dello spazio libero 11.1.1 Struttura a livelli
DettagliSistemi Operativi. 5 Gestione della memoria
Gestione della memoria Compiti del gestore della memoria: Tenere traccia di quali parti della memoria sono libere e quali occupate. Allocare memoria ai processi che ne hanno bisogno. Deallocare la memoria
DettagliPORTALE CLIENTI Manuale utente
PORTALE CLIENTI Manuale utente Sommario 1. Accesso al portale 2. Home Page e login 3. Area riservata 4. Pagina dettaglio procedura 5. Pagina dettaglio programma 6. Installazione dei programmi Sistema operativo
DettagliSISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09
SISTEMI OPERATIVI Prof. Enrico Terrone A. S: 2008/09 Che cos è il sistema operativo Il sistema operativo (SO) è il software che gestisce e rende accessibili (sia ai programmatori e ai programmi, sia agli
DettagliCorso di Amministrazione di Reti A.A. 2002/2003
Struttura di Active Directory Corso di Amministrazione di Reti A.A. 2002/2003 Materiale preparato utilizzando dove possibile materiale AIPA http://www.aipa.it/attivita[2/formazione[6/corsi[2/materiali/reti%20di%20calcolatori/welcome.htm
DettagliSoftware relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi
Software relazione Hardware Software di base Software applicativo Bios Sistema operativo Programmi applicativi Software di base Sistema operativo Bios Utility di sistema software Software applicativo Programmi
DettagliSistemi Operativi. ugoerr+so@dia.unisa.it 12 LEZIONE REALIZZAZIONE DEL FILE SYSTEM CORSO DI LAUREA TRIENNALE IN INFORMATICA. Sistemi Operativi 2007/08
Sistemi Operativi Docente: Ugo Erra ugoerr+so@dia.unisa.it 12 LEZIONE REALIZZAZIONE DEL FILE SYSTEM CORSO DI LAUREA TRIENNALE IN INFORMATICA UNIVERSITA DEGLI STUDI DELLA BASILICATA Sommario della lezione
DettagliTelerilevamento e GIS Prof. Ing. Giuseppe Mussumeci
Corso di Laurea Magistrale in Ingegneria per l Ambiente e il Territorio A.A. 2014-2015 Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Strutture di dati: DB e DBMS DATO E INFORMAZIONE Dato: insieme
DettagliCapitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti
Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta
DettagliPer chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass
0_Iniziare con GRASS Avvio di Grass e creazione della cartella del Database di GRASS Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass
Dettagli