Gli Extended file system di Linux (Ext2/Ext3/Ext4)



Documenti analoghi
File System II parte

Sistemi Operativi III. Giorgio Richelli giorgio

Il sistema operativo LINUX Il file system. Indice. Blocchi logici. Indice. Super block. G. Di Natale, S. Di Carlo

The Second Extended File System

MBR (MASTER BOOT RECORD)

Sistemi Operativi. Lez. 16 File System: aspetti implementativi

Capitolo Silberschatz

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

Sistemi Operativi (modulo di Informatica II)

Sistemi Operativi. Organizzazione logica ed implementazione di un File System

Sistemi Operativi (modulo di Informatica II)

Struttura del File-System! Implementazione del File System! Filesystem!

Esempi di File System

File system II. Sistemi Operativi Lez. 20

Struttura del Micro Filesystem (µfs)

Interfaccia del file system

#GNU/Linux for NaLUG member

Implementazione del File System

Sistemi Operativi Il Sistema Operativo Windows (parte 3)

Realizzazione del file system

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

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

File system. Realizzazione del file system. Struttura del file system. Struttura del file system. Realizzazione del file system

Se mi lasci ti cancello: Cancellazione sicura asincrona su ext3

Esempi di File System

Sistemi Operativi. Implementazione del File System

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

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

File System ext2. Struttura del filesystem ext2.

Sistemi Operativi File System (parte 2)

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

Indice. settembre 2008 Il File System 2

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

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

Il file system. File system. Fornisce il meccanismo per la memorizzazione e l accesso di dati e programmi Consiste di due parti

Gestione del File System

Implementazione del File System

Corso base GNU/Linux Latina Linux Group. Sito web: Mailing list:

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

Filesystem. Il file system è organizzato in blocchi logici contigui

Il File System. Il file system

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

Lezione T10 Implementazione FS

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

Il file system di Unix. Caratteristiche generali dei FS comunemente usati da Unix/Linux

Il file system permette all utente di creare file (collezioni di dati) che abbiano le proprieta :

Gestione del File System

File e Directory. M. Guarracino - File e Directory 1

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

Sistemi Operativi Da Unix a GNU/Linux (parte 3)

Sistemi Operativi. Lez. 14 File System: aspetti implementativi

Sistemi Operativi 1. ROMFS e VFS

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

Sommario. G. Piscitelli

Installazione LINUX 10.0

TECNICO SUPERIORE PER L AUTOMAZIONE INDUSTRIALE. Sistemi Operativi. Utilizzo dei sistemi operativi ELEMENTI DI INFORMATICA UFC_05

Scrivere alla fine di un file Vi sono due modi per scrivere alla fine di un file:

Gestione di File e Directory

Digressione: man 2...

Realizzazione del File System

Laboratorio di Sistemi Operativi

Fondamenti di GNU/Linux

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

Analisi di alcune implementazioni moderne di file systems: Ext3, ReiserFS e WinFS

Come installare Ubuntu Linux

CAP.8: Il file system

File System in CP/M. Esempi di File System CP/M. Il programma può scrivere sopra la shell se necessario

1.4: Il File System. File, directory, file system. Struttura e operazioni su file e directory. Implementazione delle directory

Il Sistema Operativo: il File System

Zettabyte File System

FoLUG Forlì Linux User Group. Partizionamento

Modulo 4: Gestore del File System (Memoria secondaria) Componenti

I.S. Sobrero. Dipartimento di Informatica. Utilizzo. 16/02/2007 Marco Marchisotti

Introduzione ai Device Drivers in Linux. E.Mumolo, DEEI

Lezione T11 Virtual File System

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

Struttura ed Evoluzione di Dischi e Filesystem. massimo maiurana

Architettura di storage

Architettura degli Elaboratori. Lez. 8 : Il Livello di Sistema Operativo

Sistemi Operativi FILE SYSTEM : INTERFACCIA. D. Talia - UNICAL. Sistemi Operativi 8.1

&& (nessun altro processo ha il file aperto) && (il fd e chiuso) Cancella il file;

Gestione del File System

Controllo di processi

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.

Trasparenze del Corso di Sistemi Operativi

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

Il concetto di file. Sistemi Operativi A Parte V - Il file system. Struttura dei file. Attributi dei file (1)

Gestione della memoria. Paginazione Segmentazione Segmentazione con paginazione

Esercitazione Laboratorio di Sistemi Operativi Cognome Nome Mat.

Drivers. Introduzione Tipologie Struttura Interazione con il kernel

Corso di avvicinamento al Software Libero

costruttori e distruttori

Il recupero dati dai file system di Linux

Filesystem e permessi NTFS

SISTEMI OPERATIVI DISTRIBUITI

Realizzazione del file system

10. Interfaccia del File System

CHE COS È. I file vengono utilizzati come supporto per la memorizzazione dei programmi (sia programmi di sistema che programmi utente) e dei dati

Transcript:

Gli Extended file system di Linux (Ext2/Ext3/Ext4) Gli extended file systems sono i file system di default di Linux Ext3, Ext4 sono le versioni migliorate di Ext2 (dimensioni file, prestazioni...) e ne condividono la struttura Struttura di Ext2: il disco é diviso in gruppi di blocchi Ogni gruppo di blocchi contiene i metadati e i dati dei file Metadati = informazioni sul file, non i dati del file Metadati: Superblocco, BGDT (BlockGroupDescriptorTable=Tabella Descrizione Gruppi di Blocchi), BlockBitmap, InodeBitmap, InodeTable

Struttura di Ext2: il disco é diviso in gruppi di blocchi Il superblocco é copiato in ogni blocco (per affidabilitá) Le bitmap per allocazione e rilascio dei blocchi sono distribuite nel FS Una bitmap occupa 1 blocco: se i blocchi sono di 1024 byte, un bitmap descrive 1024 x 8 bit, cioé 8192 blocchi=8mbyte per gruppo Se i blocchi sono di 1024B i file minori di 8MB sono allocati in un Gruppo di Blocchi (i dati non sono sparsi nel disco!)

Metadati di Ext2 Superblocco Occupa un blocco dati Contiene la dimensione dei blocchi, il numero dei blocchi... Normalmente il Superblocco é copiato nel primo blocco di ciascun file (per backup) BGDT (Block Group Descriptor Table) contiene la descrizione di ogni gruppo di blocchi descrizione di un gruppo di blocchi: indirizzo delle Bitmap e tabella degli Inode Bitmap blocchi Inode blocchi dati Tabella INODE lista degli INODE ogni INODE contiene informazioni sul file: dimensione, propriet, tempi

Ext2 INODE Dimensione del blocco: 1KB Dimensioni massime 2 KB 4KB 8KB Dimensione massima del file: 16GB 256GB 2TB 2TB Dimensione massima del filesystem: 2TB 8TB 16TB 32 TB

Contenuti INODE di Ext2: Tipo di file e permessi Proprietario Dimensione del file Ora di creazione e dell ultima modifica Puntatori ai blocchi Contenuti Superblocco di Ext2: Numero magico per verificare che si tratta del SB di Ext2 Livello di revisione per conoscere le proprietá Conteggio dei montaggi e numero massimo di montaggi Numero di gruppi di blocchi Dimensione dei blocchi (per es. 1024 Byte) Blocchi per gruppo Numero di Blocchi liberi Numero di Inode liberi Primo Inode First Prev Next Last Go Back Full Screen Close Quit

Ext2 directory Lunghezza massima dei nomi file: 255 caratteri Lunghezza tabella variabile

Metadati di Ext2 /* * Structure of the super block */ struct ext2_super_block { u32 s_inodes_count; /* Inodes count */ u32 s_blocks_count; /* Blocks count */ u32 s_r_blocks_count; /* Reserved blocks count */ u32 s_free_blocks_count; /* Free blocks count */ u32 s_free_inodes_count; /* Free inodes count */ u32 s_first_data_block; /* First Data Block */ u32 s_log_block_size; /* Block size */ s32 s_log_frag_size; /* Fragment size */ u32 s_blocks_per_group; /* # Blocks per group */ u32 s_frags_per_group; /* # Fragments per group */ u32 s_inodes_per_group; /* # Inodes per group */ u32 s_mtime; /* Mount time */ u32 s_wtime; /* Write time */ u16 s_mnt_count; /* Mount count */ s16 s_max_mnt_count; /* Maximal mount count */ u16 s_magic; /* Magic signature */ u16 s_state; /* File system state */ }; u16 s_errors; /* Behaviour when detecting errors */ u16 s_pad; u32 s_lastcheck; /* time of last check */ u32 s_checkinterval; /* max. time between checks */ u32 s_creator_os; /* OS */ u32 s_rev_level; /* Revision level */ u16 s_def_resuid; /* Default uid for reserved blocks */ u16 s_def_resgid; /* Default gid for reserved blocks */ u32 s_reserved[235]; /* Padding to the end of the block */

Metadati di Ext2 struct ext2_inode { u16 i_mode; /* File mode */ u16 i_uid; /* Owner Uid */ u32 i_size; /* Size in bytes */ u32 i_atime; /* Access time */ u32 i_ctime; /* Creation time */ u32 i_mtime; /* Modification time */ u32 i_dtime; /* Deletion Time */ u16 i_gid; /* Group Id */ u16 i_links_count; /* Links count */ u32 i_blocks; /* Blocks count */ u32 i_flags; /* File flags */ u32 i_block[ext2_n_blocks];/* Pointers to blocks */ u32 i_version; /* File version (for NFS) */ u32 i_file_acl; /* File ACL */ u32 i_dir_acl; /* Directory ACL */ u32 i_faddr; /* Fragment address */ }; First Prev Next Last Go Back Full Screen Close Quit

Metadati di Ext2 struct ext2_group_desc { u32 bg_block_bitmap; /* Blocks bitmap block */ u32 bg_inode_bitmap; /* Inodes bitmap block */ u32 bg_inode_table; /* Inodes table block */ u16 bg_free_blocks_count; /* Free blocks count */ u16 bg_free_inodes_count; /* Free inodes count */ }; u16 bg_used_dirs_count; /* Directories count */ u16 bg_pad; u32 bg_reserved[3]; #define EXT2_NAME_LEN 255 struct ext2_dir_entry { u32 inode; /* Inode number */ u16 rec_len; /* Directory entry length */ u16 name_len; /* Name length */ char name[ext2_name_len]; /* File name */ }; Ext2 implementa i Symbolic Link Veloci (path lincato direttamente nell Inode)

File System Journaled Memorizza i tipi di cambiamenti ai file in un Journal Il Journal é un file che risiede in una porzione separata del file system Il file system Journaled legge il Journal per verificare lo stato del file Se lo stato é diverso Erroneous Journaling File system popolari di Linux: Ext3, Ext4, ReiserFS, XFS, JFS