INFO4008 Programmation Unix Systèmes de Gestion de Fichiers



Documents pareils
6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Système de Gestion de Fichiers

Chapitre 3 : Système de gestion de fichiers

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université

Connaître la durée de vie d'un SSD

Cours de Système : Gestion de Fichiers

Structure fonctionnelle d un SGBD

On distingue deux grandes catégories de mémoires : mémoire centrale (appelée également mémoire interne)

LES MÉMOIRES FLASH : ENTRE MÉMOIRE VIVE ET MÉMOIRE DE STOCKAGE. Etienne Nowak 12 mars Etienne Nowak - 12 mars GIS-SPADON

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

EX4C Systèmes d exploitation. Séance 14 Structure des stockages de masse

1. Systèmes d entrée/sortie 2. Systèmes de fichiers 3. Structure de mémoire de masse (disques)

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

Leçon 1 : Les principaux composants d un ordinateur

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

Programmation C. Apprendre à développer des programmes simples dans le langage C

SYSTÈME DE GESTION DE FICHIERS

Protection des données avec les solutions de stockage NETGEAR

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Session 8: Android File System

Sur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11)

Chapitre 4 : Les mémoires

Mise à jour : February 4, / 93

TP3 : Manipulation et implantation de systèmes de fichiers 1

LES SYSTÈMES DE FICHIERS

Gestion répartie de données - 1

Principe. Technologies utilisées. 1. Linux et LVM. Les snapshots (instantannés) sous Linux et FreeBSD. Présentation de LVM. Organisation de LVM

L'organisation du système de fichier NTFS est encore plus complexe, fonctionnant un peu à la façon d'une base de données.

Technologie des disques SSD et IBM i

La gestion des disques

TIC. Tout d abord. Objectifs. L information et l ordinateur. TC IUT Montpellier

Introduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007

Guide des mémoires Flash. Mémoires Flash portables pour ordinateurs, appareils photos numériques, téléphones portables et autres dispositifs

Fonctions De Base D un Système D Exploitation. I- introduction : II- Gestion des processus :

Plan de cette matinée

Sauvegarde des fichiers

Préface. Ce document est le fruit d'un travail de longue haleine. Notre équipe marketing espère qu'il vous apportera entière satisfaction.

Hiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique

SQL Server 2008 et YourSqlDba

Analyse et réalisation d un système de disques répartis à forte disponibilité

Le Network File System de Sun (NFS)

La mémoire. Un ordinateur. L'octet. Le bit

Solution Haute Disponibilité pour Linux

Satellite Pro R50 C O N Ç U P O U R V O T R E E N T R E P R I S E. TOSHIBA recommande Windows 8.

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Ordinateur Logiciel Mémoire. Entrées/sorties Périphériques. Suite d'instructions permettant de réaliser une ou plusieurs tâche(s), de résoudre un

LA mémoire principale est le lieu où se trouvent les programmes et les

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

Sauvegarde collaborative entre pairs Ludovic Courtès LAAS-CNRS

Partie 7 : Gestion de la mémoire

Codage d information. Codage d information : -Définition-

Capacité de mémoire Tablettes

Windows 2000: W2K: Architecture. Introduction. W2K: amélioration du noyau. Gamme windows W2K pro: configuration.

SRS Day. Attaque BitLocker par analyse de dump mémoire

1.1 L EXPLORATEUR WINDOWS

Micro ordinateur & Périphériques Mémoire de masse Disque dur (SOLUTION)

LENOVO THINKSERVER GUIDE DES PRODUITS. Haute évolutivité et flexibilité conjointes au développement de l entreprise

Tests de performance du matériel

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Fiche Produit. Plateforme de sauvegarde en marque blanche Kiwi Business

Remplacer le disque dur d'un ordinateur portable par un SSD

LOT 1 - ACQUISITION DE SERVEURS INFORMATIQUES LOT 2 - ACQUISITION DE 5 POSTES INFORMATIQUES

Problématiques de stockage d un Data Center

Chapitre 3. Sécurité des Objets

Guide pour l Installation des Disques Durs SATA et la Configuration RAID

DESKTOP Internal Drive. Guide d installation

LE DISQUE DUR : IDE (Integrated Device Electronique) : La nouvelle référence.

qwertyuiopasdfghjklzxcvbnmqwerty uiopasdfghjklzxcvbnmqwertyuiopasd fghjklzxcvbnmqwertyuiopasdfghjklzx cvbnmqwertyuiopasdfghjklzxcvbnmq

TD : Codage des images

A -Systèmes de fichiers 1 - FAT vs NTFS

Livre blanc. Au cœur de Diskeeper 2010 avec IntelliWrite

Informatique Industrielle Année Architecture des ordinateurs Note de cours T.Dumartin

Présentation du système informatique utilisé et éléments d architecture des ordinateurs

Le système de gestion des fichiers, les entrées/sorties.

Effacement des supports de données

INSTALL ATION D UNE D I S T RIBUTION

L ORDINATEUR. Les composants. La carte mère. Le processeur. Fréquence

LINUX. Préparation à la certification LPIC-2 (examens LPI 201 et LPI 202) Résumé. Sébastien BOBILLIER

UPSTREAM for Linux on System z

Serveur Lynx CALLEO Application 2240S Fiches Technique

Présentation du module Base de données spatio-temporelles

Clients et agents Symantec NetBackup 7

Livre blanc Haute disponibilité sous Linux

Quel PC pour quels usages? 1) PC de Bureau ou Portable? Les différents types de portables. - Les ultra-portables. - Les portables généralistes

Serveur Lynx CALLEO Application 2240 Fiches Technique

Quelques bases sur les ordinateurs

PARAGON Disk Wiper. Guide de l utilisateur. Paragon Technology GmbH, System Programmierung. Copyright Paragon Technology GmbH

Windows Serveur 2008 R2

Tsoft et Groupe Eyrolles, 2005, ISBN :

Choix d'un serveur. Choix 1 : HP ProLiant DL380 G7 Base - Xeon E GHz

La technologie Java Card TM

IDEC. Windows Server. Installation, configuration, gestion et dépannage

Windows 7, Configuration

Technologie de déduplication de Barracuda Backup. Livre blanc

Windows Server Chapitre 1: Découvrir Windows Server 2008

Chapitre 02. Configuration et Installation

Ordinateur portable Latitude E5410

Transcription:

I. Système de Gestion de Fichiers Un SGF est la partie d un système d exploitation chargée de : Établir la correspondance entre l organisation logique (vue utilisateur) et l organisation physique. Fournir une interface à l utilisateur. Optimiser en espace et en temps l utilisation des disques. Assurer le stockage permanent des données. Assurer l intégrité (blocs endommagés, corrompus, etc.) Assurer le partage et la protection des données (attributs, droits). II. Fichiers sous Unix/Linux Sous Unix/Linux, tout est fichier. C est-à-dire qu un fichier est un objet permettant de manipuler un flot d octets : Fichiers ordinaires. Répertoires (ou catalogues, en anglais directories). Fichiers spéciaux (périphériques, tubes, liens, sockets). II.1. Arborescences et chemins Un répertoire est associé à un ensemble de fichiers et d autres répertoires. Tout répertoire a un père et un seul. Il existe un seul répertoire n ayant pas de père, appelé la racine. Il existe un chemin unique dans l arborescence pour atteindre chacun des descendants. Le chemin d un élément est la concaténation de tous les répertoires en partant de la racine. Un fichier peut être accédé par plusieurs chemins, éventuellement avec des noms différents. Les autres noms d un fichier sont des liens. II.2. Disque, partition, volume, montage Un disque est un support non volatile de données. L unité d allocation d un disque s appelle un secteur. Un disque dur classique est organisé en secteurs (contenant de 512 à 16384 octets), cylindres (contenant de 20 à 200 secteurs) et plateaux (contenant de 800 à 4000 cylindres) par exemple. On ne manipule (lectures / écritures) pas les octets individuellement mais plutôt des blocs physiques composé de plusieurs octets (typiquement 512 ou 1024). Éric Hervet - 1/8 - Hiver 2015

Une partition est une portion du disque. Un volume est composé d une ou plusieurs partitions. Un volume comporte un système de gestion de fichiers (filesystem). Le montage d un volume est l opération qui consiste à intégrer le répertoire racine d un volume à un point donné du répertoire général courant, appelé le point de montage. SSD : solid-state drives Les SSD sont constitués de mémoires à semi-conducteurs à l état solide, (mémoire flash) par opposition aux disques durs classiques où les données sont écrites sur un support magnétique en rotation rapide. Les SSD sont matériellement plus solides que les disques durs classiques. Leurs plateaux sont le plus souvent en verre depuis 2003. Ils sont de ce fait beaucoup plus résistants aux chocs et aux vibrations. Ils sont également beaucoup plus performants (débit de lecture/écriture, latence inexistante, consommation). Par contre en 2012 le rapport prix/espace d un SSD est environ 10 fois plus qu un disque dur mécanique. Depuis environ une dizaine d années, les disques durs mécaniques tournent à 7200 tours/minute. Le temps moyen de recherche est souvent compris entre 8ms et 12ms, et le temps d accès moyen entre 12ms et 16ms. Les SSD suppriment en théorie le problème des temps d accès, ramené à l ordre de 0.1ms. Ils sont nettement plus performants en lecture, mais pas nécessairement beaucoup plus en écriture du fait qu ils ne peuvent réécrire que des zones bien plus grandes qu un secteur disque. La mémoire flash est un type d EEPROM 1 qui permet la modification de plusieurs espaces mémoires en une seule opération. La cellule de base d une mémoire flash est un transistor MOS 2 possédant une grille flottante. Il existe trois types de mémoires flash : SLC 3 où chaque cellule peut stocker un seul bit (deux valeurs), la MLC 4 où chaque cellule peut stocker le plus souvent deux bits (quatre valeurs), et la TLC 5, variante de MLC avec trois bits (huit valeurs). La technologie flash peut prendre deux formes : NOR ou NAND selon le type de porte utilisée pour chaque cellule de stockage. Le flash NOR (Toshiba & Intel, 1988) possède une interface d adressage permettant un accès aléatoire et rapide à n importe quelle position et permet d exécuter des instructions directement à partir du flash (XIP, execute In Place). Le flash NOR est bien adapté pour contenir les systèmes d exploitation de téléphones portables, appareils photos, cartes mères, etc. 1. Electrically-Erasable Programmable Read-Only Memory. 2. Metal Oxide Semiconductor. 3. Single Level Cell. 4. Multi Level Cell. 5. Triple Level Cell. Éric Hervet - 2/8 - Hiver 2015

Le flash NAND (Toshiba, 1989) est plus rapide que NOR à l écriture et à l effacement, et offre une plus grande densité et un coût moins élevé par bit. Par contre son interface d entrée/sortie n autorise que l accès séquentiel, ce qui limite la vitesse de lecture. Le flash NAND est normalement plus utilisé pour le stockage d informations (cartes SD, MMC, etc.). Mais à cause de son plus faible coût, il est utilisé aussi pour les téléphones portables en utilisant la mémoire RAM par blocs et avec un système de gestion des erreurs (ECC, Error Code Correction). Il existe des systèmes de fichiers spécialement conçus pour les mémoires flash : JFFS(2) 6, UBIFS 7, etc. http://linuxfr.org/news/les-systèmes-de-fichiers-pour-disques-ssd La commande Unix/Linux mkfs permet d installer un type de système de fichier dans un volume. Ex. : mkfs -t ext4 /dev/sda1 La commande mount permet de monter un volume à un point de montage (répertoire racine de l arborescence du volume). Ex. : mount -t vfat /dev/sda2 /home/moi/windows Du point de vue conceptuel, un système de gestion de fichiers fournit une méthode d organisation des fichiers et répertoires d un volume : Il découpe le volume en blocs (clusters), un bloc étant l unité d adressage. Il comporte un certain nombre de blocs réservés au système pour sa propre gestion (espace libre, etc.). Les autres blocs sont des blocs de données. Il a des algorithmes spécifiques pour organiser les données. II.3. Algorithmes et fragmentation Il existe plusieurs types d algorithmes pour écrire et lire des fichiers sur un disque : Allocation contigüe : on doit déplacer un fichier lorsque sa taille augmente. Allocation par liste chaînée (non contigüe) : un fichier est divisé en blocs et on doit : Déterminer la taille optimale des blocs. 6. Journaling Flash File System. 7. Unsorted Block Images File System. Éric Hervet - 3/8 - Hiver 2015

Gérer les espaces libres. Représenter l ensemble des blocs constituant un fichier. Allocation par liste chaînée avec table d allocation. Allocation par noeud d index (index-node ou inode). Selon le type adopté, un phénomène de fragmentation se produit : L utilisation de blocs de taille fixe introduit de la fragmentation interne. L allocation par liste chaînée n introduit aucune fragmentation externe. L allocation contigüe introduit de la fragmentation externe. II.4. Performance et fiabilité Les performances d un système de gestion de fichiers dépendent du compromis entre l algorithme d allocation et la fragmentation que l on permet (optimisation physique / optimisation logique). La fiabilité est le résultat direct d une bonne consistance du système de gestion de fichiers. Il faut la vérifier de temps en temps. Sous Unix/Linux, la commande fsck permet de : Vérifier la consistance des blocs. Vérifier la consistance des fichiers. Vérifier la cohérence des blocs alloués / blocs libres. Vérifier les compteurs de références des i-noeuds. II.5. Journalisation La journalisation est une forme d optimisation qui consiste à retarder dans le temps les opérations, longues, de modification du système de fichiers, car : Les disques durs sont (très) lents. Les mémoires vives (RAM) permettent de stocker beaucoup plus d informations, en quantité et en temps. Les écritures, souvent en petite quantité, prennent énormément de temps en comparaison des capacités de traitement des machines actuelles. Le journal est une fraction du système de fichiers dans lequel sont enregistrées (sur le disque) les modifications qui seront réalisées plus tard. Éric Hervet - 4/8 - Hiver 2015

II.6. I-noeud (inode) En interne, un fichier est décrit par un i-noeud qui contient : Des éléments binaires pour coder les droits d accès, le type du fichier. Le numéro du propriétaire et son numéro de groupe principal. La taille du fichier. La date et l heure des derniers accès en lecture et en écriture. La date et l heure de dernière modification de l i-noeud. Le nombre de liens physiques. Des pointeurs vers les blocs de données. Il est à noter que la structure d i-noeud ne contient pas le nom du fichier. Les i-noeuds sont spécifiques à un volume. FIGURE 1 Structure d un i-noeud. Éric Hervet - 5/8 - Hiver 2015

II.7. Répertoire Un répertoire est en fait un fichier qui contient la liste des noms de fichiers / répertoires qu il contient et leurs numéros i-noeuds associés (Fig. 2). FIGURE 2 Structure d un répertoire (directory). II.8. Liens Liens physiques (ou liens durs) Un lien physique est une association nom de fichier => i-noeud. Une entrée de répertoire est donc un lien physique. Un i-noeud peut être référencé plusieurs fois. Liens symboliques Problème avec les liens physiques : ils sont spécifiques à un volume. Les liens physiques ne sont donc pas utilisables dans toute l arborescence. Un lien symbolique est un fichier spécial contenant le chemin du fichier référencé. Un lien symbolique n incrémente pas le compteur de référence d un i-noeud. Si le fichier cible est effacé, le lien est pendant (dangling). II.9. Système de Gestion de Fichiers ext2 La Fig. 3 montre la structure du système de gestion de fichiers ext2 (second extended file system). Ext2 a été conçu par Rémy Card en 1993 et a été utilisé pendant des années pour les systèmes Linux. Superblock : contient des informations sur la géométrie et l occupation du groupe. Group Descriptor : contient l emplacement des cartes de blocs et i-noeuds libres. Block Bitmap : contient la liste des blocs inutilisés. Inode Bitmap : contient la liste des i-noeuds libres dans la table des i-noeuds. Éric Hervet - 6/8 - Hiver 2015

FIGURE 3 Structure d un répertoire (directory). Les limites théoriques de ext2 sont : Taille d un bloc 1Ko 2Ko 4Ko 8Ko Taille maximale fichier 16Go 256Go 2To 2To Taille maximale volume 4To 8To 16To 32To II.10. Système de Gestion de Fichiers ext3 Ext3 a ajouté une extension à ext2 : la journalisation. Ext3 a été introduit en 2001 par Stephen Tweedie avec le noyau Linux 2.4.15. Un journal est simplement un outil qui trace les opérations d écriture tant qu elles ne sont pas terminées en vue de garantir l intégrité des données en cas d arrêt brutal. Les limites théoriques de ext3 sont les mêmes que pour ext2. II.11. Système de Gestion de Fichiers ext4 Ext4 (sortie expérimentale fin 2006) est le successeur de ext3 et est considéré comme stable à partir du noyau Linux 2.6.28 (Ubuntu 9.10, Fedora 11, etc.). Ext4 permet de gérer les volumes d une taille allant jusqu à 1 exbi-octets (2 60 octets, soit 1 152 921 504 606 846 976 octets!), et des tailles de fichiers jusqu à 16 tebi-octets (1 tebi-octets = 2 40 octets, soit 1 099 511 627 776 octets). Mais sa fonctionnalité majeure est l allocation par extent qui permettent la pré-allocation d une zone contigüe pour un fichier, afin de minimiser la fragmentation. De plus, ext4 a une compatibilité descendante avec ext3, ce qui signifie qu une partition ext3 peut être montée comme ext4. L inverse est possible à la condition que la partition ext4 n ait jamais utilisé l allocation par extent pour sauvegarder des fichiers, mais seulement l allocation binaire comme dans ext3. Éric Hervet - 7/8 - Hiver 2015

II.12. Système de Gestion de Fichiers Btrfs Btrfs 8 est un système de fichiers encore en développement (introduit en 2007) basé sur le Copy-On-Write, qui devrait succéder à ext4. Lorsqu un processus crée une copie de lui-même, les pages de la mémoire qui doivent être modifiées soit par le processus, soit par sa copie, sont marquées copy-on-write. Lorsque le processus modifie une page mémoire, le noyau du système d exploitation copie la page mémoire pour que les changements de la mémoire d un processus n affectent pas celle d un autre. Btrfs ajoute aussi d autres fonctionnalités à ext3/4, par exemple la possibilité de créer un système de gestion de fichiers qui regroupe plusieurs périphériques (disques classiques, disques RAID, mémoire flash, etc.) pouvant être ajoutés ou supprimés dynamiquement. La taille maximale d un fichier sous Btrfs est 16 exbi-octets (2 64 octets) et la taille maximale d un volume 16 exbi-octets (2 44 octets). 8. B-tree file system, souvent prononcé Better FS. Éric Hervet - 8/8 - Hiver 2015