Il file system. meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate. in memoria di massa



Documenti analoghi
Il File System. Il file system

Il File System. Sistemi Operativi L-A AA

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

Il File System. Sistemi Operativi T AA

Gestione del file system. Astrazione di File System. Attributi del file. File

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

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

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

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

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

Il Software. Il software del PC. Il BIOS

Capitolo Silberschatz

Interfaccia del file system

Il Sistema Operativo: il File System

Indice. settembre 2008 Il File System 2

Sistemi Operativi. Organizzazione logica ed implementazione di un File System

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Il Sistema Operativo

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1

Il Sistema Operativo. Introduzione di programmi di utilità. Elementi di Informatica Docente: Giorgio Fumera

Gestione della memoria centrale

Link e permessi. Corso di Laurea Triennale in Ingegneria delle TLC e dell Automazione. Corso di Sistemi Operativi A. A

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione

Sistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1

MECCANISMI E POLITICHE DI PROTEZIONE 13.1

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo

Le Infrastrutture Software ed il Sistema Operativo

12. Implementazione di un File System Struttura a livelli Allocazione contigua

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia

PARTE 4 La Macchina Software

Sistemi Operativi. 11 LEZIONE INTERFACCIA DEL FILE SYSTEM CORSO DI LAUREA TRIENNALE IN INFORMATICA. Sistemi Operativi 2007/08

Il software: Istruzioni per il computer. I tre tipi di software di sistema. Compiti del sistema operativo

Sistemi Operativi Il Sistema Operativo Windows (parte 3)

PROGETTAZIONE FISICA

Strutturazione logica dei dati: i file

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione

Software di base. Corso di Fondamenti di Informatica

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10

Introduzione ai Sistemi Operativi

Il Sistema Operativo (1)

Sistemi Operativi. 5 Gestione della memoria

Organizzazione di Sistemi Operativi e Reti

Sistemi Operativi. 12 LEZIONE REALIZZAZIONE DEL FILE SYSTEM CORSO DI LAUREA TRIENNALE IN INFORMATICA. Sistemi Operativi 2007/08

Il File System. È la componente del S.O. che si occupa della gestione della memoria di massa e dell organizzazione logica dei dati

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico

Terza lezione: Directory e File system di Linux

Il sistema operativo: interazione con l utente

Sistemi Operativi GESTIONE DELLA MEMORIA CENTRALE. D. Talia - UNICAL. Sistemi Operativi 6.1

Il Sistema Operativo. Funzionalità. Sistema operativo. Sistema Operativo (Software di base)

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

Sistema operativo: Gestione della memoria

Il calcolatore - Applicazioni

Gestione del file system

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Sistemi Operativi (modulo di Informatica II)

Controllo I/O Costituito dai driver dei dispositivi e dai gestori dei segnali d interruzione.

File system II. Sistemi Operativi Lez. 20

Database. Si ringrazia Marco Bertini per le slides

Infrastrutture Software

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Struttura del Micro Filesystem (µfs)

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO INTERFACCE TESTUALI INTERFACCE TESTUALI FUNZIONI DEL SISTEMA OPERATIVO INTERFACCE GRAFICHE

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

Sistemi operativi. Esempi di sistemi operativi

I file di dati. Unità didattica D1 1

Approccio stratificato

La Gestione delle risorse Renato Agati

Gestione della Memoria

Corso di Informatica

Protezione. Protezione. Protezione. Obiettivi della protezione

1. BASI DI DATI: GENERALITÀ

I database relazionali (Access)

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

Funzioni del Sistema Operativo

Implementazione del File System

Laboratorio di Informatica

Corso di Sistemi di Elaborazione delle informazioni

Il software. la parte contro cui si può solo imprecare. Funzioni principali del sistema operativo. (continua) Gestione della memoria principale

SISTEMI OPERATIVI DISTRIBUITI

Dispensa di Fondamenti di Informatica. Architettura di un calcolatore

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)

11 Realizzazione del File System Struttura a livelli (fig. 11.1) 11.4 Allocazione dei file

Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa. Raccolta prove scritte. Prova scritta

Informatica. Il software (S.O.) e ancora sulle basi numeriche

Introduzione al data base

INFORMATICA. Il Sistema Operativo. di Roberta Molinari

Interfaccia del file system. Fabio Buttussi HCI Lab Dipart. di Matematica ed Informatica Università degli Studi di Udine

SISTEMI OPERATIVI. Realizzazione del file system. Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) (MODULO DI INFORMATICA II)

Organizzazione degli archivi

Excel. A cura di Luigi Labonia. luigi.lab@libero.it

Progettazione Fisica FILE

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

B+Trees. Introduzione

Architettura dei calcolatori II parte Memorie

File system. Chiamate di sistema POSIX Esempi: Chiamate di sistema Windows Esempio: Esercizi. 4.3 BSD Linux NTFS. Sistemi Operativi mod B 12.

Corso di Amministrazione di Reti A.A. 2002/2003

Il computer: primi elementi

Transcript:

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 di file: unità logica di memorizzazione di direttorio: insieme di file (e direttori) di partizione: insieme di file associato ad un particolare dispositivo fisico (o porzione di esso) Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti da natura e tipo di dispositivo utilizzato 2

Organizzazione del File System La struttura di un file system essere rappresentata da un insieme di componenti organizzate in vari livelli: " Applicazioni " " Struttura logica" " Accesso " " Organizzazione fisica" " " Dispositivo virtuale" Hardware: memoria secondaria"

Organizzazione del file system Struttura logica: presenta alle applicazioni una visione astratta delle informazioni memorizzate, basata su file, directory, partizioni, ecc.. Realizza le operazioni di gestione di file e directory: copia, cancellazione, spostamento, ecc. Accesso: definisce e realizza i meccanismi per accedere al contenuto dei file; in particolare: Definisce l unità di trasferimento da/verso file: record logico Realizza i metodi di accesso (sequenziale, casuale, ad indice) Realizza i meccanismi di protezione Organizzazione fisica: rappresentazione di file e directory sul dispositivo: Allocazione dei file sul dispositivo (unità di memorizzazione = blocco): mapping di record logici su blocchi. Vari metodi di allocazione. Rappresentazione della struttura logica sul dispositivo. Dispositivo Virtuale: appoggiandosi direttamente sull HW presenta una vista astratta del dispositivo, che appare come una sequenza di blocchi di dimensione costante. 4

File È un insieme di informazioni; ad es.: programmi dati (in rappresentazione binaria) dati (in rappresentazione testuale) Ogni file è individuato da (almeno) un nome simbolico mediante il quale può essere riferito (ad esempio, nellinvocazione di comandi o system call) Ogni file è caratterizzato da un insieme di attributi 5

Attributi del file A seconda del SO, i file possono avere attributi diversi. Solitamente: tipo: stabilisce l appartenenza a una classe (eseguibili, testo, musica, non modificabili, ) indirizzo: puntatore/i a memoria secondaria dimensione: numero di byte contenuti nel file data e ora (di creazione e/o di modifica) In SO multiutente anche: utente proprietario protezione: diritti di accesso al file per gli utenti del sistema 6

Attributi del file Descrittore del file: è la struttura dati che contiene gli attributi di un file Ogni descrittore di file deve essere memorizzato in modo persistente: il SO mantiene l insieme dei descrittori di tutti i file presenti nel file system in apposite strutture in memoria secondaria (ad es. UNIX: i-list) 7

Tipi di file: nomi ed estensioni In alcuni SO, l estensione inclusa nel nome di un file rappresenta il suo tipo NON è il caso di UNIX 8

Operazioni sui file Compito del SO è consentire l accesso on-line ai file (ogni volta che un processo modifica un file, tale cambiamento è immediatamente visibile per tutti gli altri processi) Tipiche Operazioni Creazione: allocazione di un file in memoria secondaria e inizializzazione dei suoi attributi Lettura di record logici dal file Scrittura: inserimento di nuovi record logici all interno di file Cancellazione: eliminazione del file dal file system Ogni operazione richiederebbe la localizzazione di informazioni su disco, come: indirizzi dei record logici a cui accedere altri attributi del file record logici -> costo elevato 9

Per migliorare l efficienza: Operazioni sui file SO mantiene in memoria una struttura che registra i file attualmente in uso (file aperti) - tabella dei file aperti per ogni file aperto {puntatore al file, posizione su disco,...} viene fatto il memory mapping dei file aperti: i file aperti (o porzioni di essi) vengono temporaneamente copiati in memoria centrale accessi più veloci Operazioni necessarie Apertura: introduzione di un nuovo elemento nella tabella dei file aperti e eventuale memory mapping del file Chiusura: salvataggio del file in memoria secondaria ed eliminazione dell elemento corrispondente dalla tabella dei file aperti 10

Struttura interna dei file Ogni dispositivo di memorizzazione secondaria viene partizionato in blocchi (o record fisici): Blocco: unità di trasferimento fisico nelle operazioni di I/O da/verso il dispositivo. Sempre di dimensione fissa L utente vede il file come un insieme di record logici: Record logico: unità di trasferimento logico nelle operazioni di accesso al file (es. lettura, scrittura di blocchi). Di dimensione variabile 11

Blocchi & record logici Uno dei compiti di SO (parte di gestione del file system) è stabilire una corrispondenza tra record logici e blocchi Di solito: Dimensione(blocco) >> Dimensione(record logico) impaccamento di record logici all interno di blocchi blocco record logici 12

Metodi di accesso L accesso a file può avvenire secondo varie modalità: accesso sequenziale accesso diretto accesso a indice Il metodo di accesso è indipendente: dal tipo di dispositivo utilizzato dalla tecnica di allocazione dei blocchi in memoria secondaria 13

Accesso sequenziale Il file è una sequenza [R 1, R 2,..., R N ] di record logici: per accedere ad un particolare record logico R i, è necessario accedere prima agli (i-1) record che lo precedono nella sequenza: R 1 R 2 R i-1 R i le operazioni di accesso sono del tipo: readnext: lettura del prossimo record logico della sequenza writenext: scrittura del prossimo record logico È necessario registrare la posizione corrente: puntatore al file R 1 R 2 R i-1 R i puntatore 14

Accesso sequenziale R 1 R 2 R i-1 R i ogni operazione di accesso (lettura/scrittura) posiziona il puntatore al file sull'elemento successivo a quello letto/scritto UNIX prevede questo tipo di accesso 15

Accesso diretto Il file è un insieme {R 1, R 2,..., R N } di record logici numerati: si può accedere direttamente a un particolare record logico specificandone il numero operazioni di accesso sono del tipo read i: lettura del record logico i write i: scrittura del record logico i Utile quando si vuole accedere a grossi file per estrarre/aggiornare poche informazioni (ad esempio nell accesso a database) 16

Accesso a indice Ad ogni file viene associata una struttura dati contenente l indice delle informazioni contenute per accedere a un record logico, si esegue una ricerca nell indice (utilizzando una chiave) chiave Rossi Mario Rossi File indice File 17

Directory (o direttorio) Strumento per organizzare i file all interno del file system: una directory può contenere più file è realizzata mediante una struttura dati che associa al nome di ogni file come e/o dove esso è allocato in memoria di massa Operazioni sui direttori: Creazione/cancellazione di directory Aggiunta/cancellazione di file Listing: elenco di tutti i file contenuti nella directory Attraversamento della directory Ricerca di file in directory 18

Tipi di directory La struttura logica delle directory può variare a seconda del SO Schemi più comuni: a un livello a due livelli ad albero a grafo aciclico 19

Tipi di directory Struttura a un livello: una sola directory per ogni file system dati0 mbox filez... pippo Problemi unicità dei nomi multiutenza: come separare i file dei diversi utenti? 20

Tipi di directory Struttura a due livelli primo livello (directory principale): contiene una directory per ogni utente del sistema secondo livello: directory utenti (a un livello) paolo ugo mario f1 dati fx dati mbox abc ff0 mbox 21

Tipi di directory Struttura ad albero: organizzazione gerarchica a N livelli. Ogni direttorio può contenere file e altri direttori sys user kern direttorio radice b ts Mario Paolo Anna... Ugo DIR dati fx dati mbox abc ff0 mbox fx ris mbox 22

Tipi di directory Struttura a grafo aciclico (es. UNIX): estende la struttura ad albero con la possibilità di inserire link differenti allo stesso file sys user kern direttorio radice b ts Mario Paolo Anna... Ugo DIR dati dati ff mbox abc ff0 mbox fx ris mbox uno stesso file può essere riferito con nomi diversi 23

Una singola unità disco può contenere più partizioni Directory e partizioni Una singola partizione può utilizzare più di una unità disco Unità disco e organizzazione/posizione di directory all interno del file system devono essere correlati? 24

File System Mounting Molti SO richiedono il mounting esplicito allinterno del file system prima di poter usare una (nuova) unità disco o una partizione file system esistente file system da montare 25

Dopo il mounting ad un determinato mount point 26

File system e protezione Il proprietario/creatore di un file dovrebbe avere la possibilità di controllare: quali azioni sono consentite sul file da parte di chi Possibili tipologie di accesso - Read - Write - Execute - Append - Delete - List 27

Liste di accesso e gruppi (es. UNIX) Modalità di accesso: read, write, execute 3 classi di utenti RWX 1) owner access 7 1 1 1 RWX 2) group access 6 1 1 0 RWX 3) public access 1 0 0 1 Amministratore può creare gruppi (con nomi unici) e inserire/eliminare utenti in/da quel gruppo Dato un file o una directory, si devono definire le regole di accesso desiderate owner group public Cambiamento di gruppo: comando chgrp G game Cambiamento di diritti di accesso: chmod 761 game 28

Gestione access control list in MS Windows XP 29

Un esempio di directory listing in UNIX 30

Organizzazione fisica del file system SO si occupa anche della realizzazione del file system sui dispositivi di memorizzazione secondaria: realizzazione dei descrittori e loro organizzazione allocazione dei blocchi fisici gestione dello spazio libero Come può essere realizzato il file system sui dispositivi di memorizzazione secondaria? 31

Metodi di allocazione Ogni blocco contiene un insieme di record logici contigui Quali sono le tecniche più comuni per l allocazione dei blocchi sul disco? allocazione contigua allocazione a lista allocazione a indice 32

Allocazione contigua Ogni file è mappato su un insieme di blocchi fisicamente contigui Vantaggi costo della ricerca di un blocco possibilità di accesso sequenziale e diretto Svantaggi individuazione dello spazio libero per l allocazione di un nuovo file frammentazione esterna: man mano che si riempie il disco, rimangono zone contigue sempre più piccole, a volte inutilizzabili Necessità di azioni di compattazione aumento dinamico delle dimensioni di file f2 f2 f2 f0 f0 f0 f3 f3 f3 f3 f3 f1 f1 f1 33

Allocazione a lista (concatenata) I blocchi sui quali viene mappato ogni file sono organizzati in una lista concatenata Vantaggi non c è frammentazione esterna minor costo di allocazione inizio f2 124 Svantaggi: possibilità di errore se link danneggiato maggior occupazione (spazio occupato dai puntatori) difficoltà di realizzazione dell accesso diretto costo della ricerca di un blocco blocco 124 f2 f2 f2 f2 34

Tabella di allocazione dei file (FAT) Alcuni SO (ad es. DOS e OS/2) realizzano l allocazione a lista in modo più efficiente e robusto: per ogni partizione, viene mantenuta una tabella (FAT) in cui ogni elemento rappresenta un blocco fisico concatenamento dei blocchi sui quali è allocato un file è rappresentato nella FAT 0 1 eof File1 124 inizio 124 201 201 1 35

Allocazione a indice Allocazione a lista: i puntatori ai blocchi sono distribuiti sul disco elevato tempo medio di accesso a un blocco complessità della realizzazione del metodo di accesso diretto Allocazione a indice: tutti i puntatori ai blocchi utilizzati per l allocazione di un determinato file sono concentrati in un unico blocco per quel file (blocco indice) 36

Allocazione a indice A ogni file è associato un blocco (indice) in cui sono contenuti tutti gli indirizzi dei blocchi su cui è allocato il file Vantaggi stessi dell allocazione a lista, più possibilità di accesso diretto maggiore velocità di accesso (rispetto a liste) Svantaggi possibile scarso utilizzo dei blocchi indice indice f2 124 f2 f2 f2 Blocco indice n. 124 37

Metodi di allocazione Riassumendo, gli aspetti caratterizzanti sono: grado di utilizzo della memoria tempo di accesso medio al blocco realizzazione dei metodi di accesso Esistono SO che adottano più di un metodo di allocazione; spesso: file piccoli allocazione contigua file grandi allocazione a indice 38