Il sistema operativo LINUX Il file system. Indice. Blocchi logici. Indice. Super block. G. Di Natale, S. Di Carlo
|
|
- Sergio Rosa
- 8 anni fa
- Visualizzazioni
Transcript
1 Il sistema operativo LINUX Il file system Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica Blocchi logici Il file system è organizzato in blocchi logici contigui dimensione fissa di 124, 248 o 496 byte indipendente dalla dimensione del blocco fisico (generalmente 512 byte) Un blocco speciale, detto super block, in posizione fissa all inizio del FS ne descrive le caratteristiche Caratteristiche del FS dimensioni, struttura, Parametri modificabili del FS max mount count, Stato del FS state, free blocks, mount count, Super block Non contiene informazioni sulla struttura fisica e sul tipo di device utilizzato (perché ne costituisce una astrazione) struct ext2_super_block { u32 s_inodes_count; u32 s_blocks_count; u32 s_r_blocks_count; u32 s_free_blocks_count; u32 s_free_inodes_count; u32 s_first_data_block; u32 s_blocks_per_group; u32 s_inodes_per_group; u32 s_mount_count; u32 s_max_mount_count; u32 s_state; }; 1
2 Cylinder group Compartimentano il FS impediscono che un errore sulle bitmap e/o inode table corrompa tutto il FS Replicano il super block e la group descriptor table Consentono di allocare i file nei pressi della directory che li contiene dumpe2fs <device> mostra i gruppi di una partizione ext2 Cylinder group struct ext2_group_desc { u32 bg_block_bitmap; u32 bg_inode_bitmap; u32 bg_inode_table; u32 bg_free_blocks_count; u32 bg_free_inodes_count; u32 bg_used_dirs_count; u32 bg_pad; u32 bg_reserved[3]; }; Inode Ogni file o directory è associato ad un inode descrive le caratteristiche del file identifica i blocchi di cui è composto il file Numerati a partire da 1 Alcuni sono riservati al sistema bad block inode, root inode, boot loader inode 2
3 Inode struct ext2_inode { u32 i_mode; u32 i_uid; u32 i_size; /* Size in bytes (major/minor device) */ u32 i_atime; /* Access time */ u32 i_ctime; /* Creation time */ u32 i_mtime; /* modification time */ u32 i_gid; u32 i_links_count; u32 i_blocks; /* Blocks count */ u32 i_flags; u32 i_block[ext2_n_blocks]; }; double double triple triple Directory E un file che contiene record di tipo directory entry Una directory entry associa un nome file al suo inode 3
4 Directory Directory entry #define EXT2_NAME_LEN struct ext2_dir_entry { u32 inode; u32 rec_len; /* Directory entry length */ u32 name_len; u32 name[ext2_name_len]; }; link Hard link (fisico) entry che punta ad un inode puntato da un altra directory entry no cross-file system Soft link (simbolico) entry che punta ad un inode che punta ad un blocco contenente il path name del file corrispondente Fast soft link il path name (<6 byte) è memorizzato nell inode (nei 15 byte dell i_block) Fast Symbolic Link 4
5 Virtual File System Linux supporta diversi FS: ext2, minix, msdos, vfat, iso966, hpfs, VFS astrae il particolare FS fisico occupandosi di mappare le system call orientate ai file sulle funzioni supportate dal FS Al mount VFS individua (attraverso una tabella di configurazione del kernel) la specifica funzione da utilizzare che: legge il super blocco e ne inizializza le variabili restituisce a VFS un descrittore di file con cui verranno mappate le successive system call File descriptor open( ) Individua univocamente un file aperto Ciascun processo può utilizzare fino a OPEN_MAX (<limits.h>) file descriptor File descriptor di default: standard input 1 standard output 2 standard error #include <sys/stat.h> #include <fcntl.h> int open(const char *path, int flags); int open(const char *path, int flags, mode_t mode); int fd; fd=open( file.txt,o_wronly O_CREAT, S_IRUSR S_IWRUSR); open( ) flags #include <sys/stat.h> Setta i permessi #include <fcntl.h> quando si crea un nuovo file int open(const char *path, int flags); int open(const char *path, int flags, mode_t mode); int fd; fd=open( file.txt,o_wronly O_CREAT, S_IRUSR S_IWUSR); Di base: O_RDONLY open for read-only access O_WRONLY open for write-only access O_RDWR open for read/write access In bitwise-or: O_CREATE creailfilesenonesiste O_EXCL erroreseo_creatèsettatoeil file esiste O_TRUNC rimuove il ceontenuto del file O_APPEND appende al file 5
6 modi open( ): mode S_I[RWX]USR rwx S_I[RWX]GRP --- rwx --- S_I[RWX]OTH rwx I permessi con cui viene effetivamente creato un file sono modificati dall umask dell utente proprietario del processo mode & (~umask) access( ) int access(char *pathname, int mode); Return value: KO 1OK Mode: R_OK read access W_OK write access X_OK execute access F_OK file exists access( ) if ( access( f1.txt, F_OK) ) { /* file exists */ } read( ) write( ) int read(int fd, void *buf, size_t nbytes); Return values: -1 error EOF n numero di byte letti int write(int fd, void *buf, size_t nbytes); write scrive sui buffer di sistema, non sul disco! fd = open (file, O_WRONLY O_SYNC); O_SYNC forza la sync dei buffer, ma solo su FS ext2 6
7 close( ) lseek( ) int close(int fd); Return values: -1 error OK int lseek(int fd, off_t offset, int base); Base: SEEK_SET dall inizio del file SEEK_CURR dalla posizione corrente SEEK_END dalla fine del file Esempio: lseek(fd, (off_t), SEEK_SET); stat( ) struct stat #include <sys/stat.h> int fstat(inf fd, struct stat *sbuf); int stat(char *path, struct stat *sbuf); int lstat(char *path, struct stat *sbuf); Restituisce in sbuf l inode del file Se il file è un link simbolico, lstat restituisce l inode che punta al nome file, anziché l inode che punta al file dev_t st_dev; /* device number for file */ ino_t st_ino; umode_t st_mode; nlink_t st_nlink; uid_t st_uid; gid_t st_gid; dev_t st_rdev; /* device number for device */ off_t st_size; time_t st_atime; time_t st_mtime; time_t st_ctime; chmod( ) umask( ) int chmod(char *pathname, mode_t mode); int fchmod(int fd, mode_t mode); mode_t umask(mode_t mask); oldmask = umask(); umask(oldmask); 7
8 chown( ) mkdir( ) e rmdir( ) int chown(char *path, uid_t owner, gid_t group); int fchown(int fd, uid_t owner, gid_t group); #include <fcntl.h> int mkdir(char *pathname, mode_t mode); int rmdir(char *pathname); opendir( ), readdir( ) e closedir( ) #include <dirent.h> DIR *opendir(char *pathname); struct dirent *readdir(dir *dirptr); int closedir(dir *dirptr); opendir( ), readdir( ) e closedir( ) #include <dirent.h> #include <stdio.h> main { DIR *dp; struct dirent *link; dp = opendir ( /home ); while ((link=readdir(dp))!=) printf ( %s\n, link->d_name); closedir (dp); } link( ) e unlink( ) int link(char *src_path, char* newlink_path); int unlink(char *pathname); unlink rimuove l inode se link count va a zero 8
Gli Extended file system di Linux (Ext2/Ext3/Ext4)
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
DettagliFile e Directory. M. Guarracino - File e Directory 1
File e Directory M. Guarracino - File e Directory 1 Date dei file Ogni volta che accediamo ai dati contenuti in un file, il sistema memorizza la data di ultimo accesso La stessa cosa accade quando modifichiamo
DettagliDigressione: man 2...
Syscall File I/O Digressione: man 2... Le funzioni della libreria standard UNIX associate alle system call di Linux sono documentate nella sezione 2 di man e.g.: man 2 open Ogni manpage di system call
DettagliFile I/O. M. R. Guarracino: File I/O 1
File I/O M. R. Guarracino: File I/O 1 File I/O Gran parte delle operazioni su file in ambiente UNIX possono essere eseguite utilizzando solo cinque funzioni: open read write lseek close M. R. Guarracino:
DettagliScrivere alla fine di un file Vi sono due modi per scrivere alla fine di un file:
Scrivere alla fine di un file Vi sono due modi per scrivere alla fine di un file: usare lseek per spostarsi alla fine del file e poi scrivere: lseek(filedes, (off_t)0, SEEK_END); write(filedes, buf, BUFSIZE);
Dettagli&& (nessun altro processo ha il file aperto) && (il fd e chiuso) Cancella il file;
CREAZIONE ritorna fd o 1 Pseudocodice dell operazione: If(file esiste) If(Write permission) Tronca la lunghezza a 0 e lascia il file aperto in scrittura; Else Exit(-1); Else Alloca un nuovo INODE con link=1
DettagliGestione di File e Directory
Gestione di File e Directory Duplicazione di file descriptor Un file descriptor puo' essere duplicato utilizzando: int dup (int filedes); int dup2(int filedes, int filedes2); dup restituisce un file descriptor
DettagliCORSO DI SISTEMI OPERATIVI A - ESERCITAZIONE 3. 1 strace : visualizzazione delle system call invocate da un processo
UNIVERSITÀ DEGLI STUDI DI PARMA Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica a.a. 2005-2006 CORSO DI SISTEMI OPERATIVI A - ESERCITAZIONE 3 1 strace : visualizzazione delle system call
DettagliCORSO DI SISTEMI OPERATIVI A - ESERCITAZIONE 3
UNIVERSITÀ DEGLI STUDI DI PARMA Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica-Informatica-Telecomunicazioni a.a. 2001-2002 CORSO DI SISTEMI OPERATIVI A - ESERCITAZIONE 3 1 Trasferimento
DettagliInput-Output di basso livello
Input-Output di basso livello File in UNIX Il kernel di UNIX vede tutti i file come flussi non formattati di byte; il compito di interpretare ogni struttura logica interna ad un file e lasciato alle applicazioni.
DettagliFile System II parte
File System II parte Cosa è il FS E quella parte del Sistema Operativo che fornisce i meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate in memoria di massa. Realizza
DettagliCapitolo 3 -- Stevens
I/O non bufferizzato (1) Capitolo 3 -- Stevens System Call open close read write lseek 1.2 sono degli interi non negativi file descriptor il kernel assegna un file descriptor ad ogni file aperto le funzioni
DettagliGestione dei file: filosofia. carica in memoria l i-node del file read / write. close cose rilascia le strutture dati di memoria del file
File system 1 Gestione dei file: filosofia open carica in memoria l i-node del file read / write accedono al file tramite il suo i-node close cose rilascia le strutture dati di memoria del file 2 Gestione
DettagliCorso di Sistemi Operativi A.A CHIAMATE DI SISTEMA PER FILE E SEMAFORI. Fabio Buttussi
Corso di Sistemi Operativi A.A. 2008-2009 - CHIAMATE DI SISTEMA PER FILE E SEMAFORI Fabio Buttussi System call per l accesso a file Nome open close read write lseek creat remove unlink stat Significato
DettagliFile e Directory. M. Guarracino - File e Directory 1
File e Directory M. Guarracino - File e Directory 1 File e Directory Abbiamo visto come si possono utilizzare funzioni di I/O per i file: open, read, write, lseek e close Vogliamo ora analizzare ulteriori
DettagliScrivere alla fine di un file Vi sono due modi per scrivere alla fine di un file:
Scrivere alla fine di un file Vi sono due modi per scrivere alla fine di un file: usare lseek per spostarsi alla fine del file e poi scrivere: lseek(filedes, (off_t)0, SEEK_END); write(filedes, buf, BUFSIZE);
DettagliScrivere alla fine di un file Vi sono due modi per scrivere alla fine di un file:
Scrivere alla fine di un file Vi sono due modi per scrivere alla fine di un file: usare lseek per spostarsi alla fine del file e poi scrivere: lseek(filedes, (off_t)0, SEEK_END); write(filedes, buf, BUFSIZE);
DettagliComandi. Sistema Operativo
Introduzione Programmazione di sistema in UNIX File comandi utente Shell Comandi Sistema Operativo Programmi in C Servizi di sistema (primitive, system call) solo per driver fork exec wait exit char I/O
Dettagli1. File normale: contiene dati 2. Directory: contiene nomi di altri file ed informazioni sugli stessi
File Tipi di file 2 1. File normale: contiene dati 2. Directory: contiene nomi di altri file ed informazioni sugli stessi 3. File speciali di caratteri: es. un terminale, /dev/tty 4. File speciali a blocchi:
DettagliCorso di Laboratorio di Sistemi Operativi A.A
Corso di Laboratorio di Sistemi Operativi A.A. 2016 2017 Lezione 14 Ivan Scagnetto ivan.scagnetto@uniud.it Nicola Gigante gigante.nicola@spes.uniud.it Dipartimento di Scienze Matematiche, Informatiche
DettagliProgrammazione di sistema in UNIX. Immagine di un processo in UNIX. Area dati. File comandi utente
Programmazione di sistema in UNIX File comandi utente Shell Gestione processi Comandi Sistema Operativo Servizi di sistema (primitive, system call) fork exec wait exit char I/O block I/O open create close
DettagliCREAZIONE DI UN FILE
#include #include CREAZIONE DI UN FILE fd = creat(filename, mode); int fd, mode; char *filename; La primitiva creat crea un file, se non ne esiste uno col nome specificato, oppure
DettagliLaboratorio di Sistemi Operativi
II Semestre - Marzo/Giugno 2008 matricole congr. 0 mod 3 I/O non bufferizzato System Call open close read write lseek 2 1 file descriptor sono degli interi non negativi il kernel assegna un file descriptor
DettagliFilesystem. Il file system è organizzato in blocchi logici contigui
Filesystem Il file system è organizzato in blocchi logici contigui dimensione fissa di 1024, 2048 o 4096 byte indipendente dalla dimensione del blocco fisico (generalmente 512 byte) Un blocco speciale,
DettagliThe Second Extended File System
The Second Extended File System Struttura e implementazione Salvatore Davide Rapisarda Indice 1. Definizione di file system e termini legati ad esso.3 2. Dischi rigidi 5 2.1 Hardware dei dischi rigidi
DettagliFiles, File I/O, File Sharing. Franco Maria Nardini
Files, File I/O, File Sharing Franco Maria Nardini UNIX file types UNIX non richiede una struttura interna del file. Dal punto di vista del sistema operativo c e un solo tipo di file. Struttura e interpretazione
DettagliInter-process communication
Primitive di Comunicazione 1 Inter-process communication Nell'attività del sistema si rende necessario la cooperazione tra processi per realizzare le diverse funzionalità offerte all'utente. La cooperazione
DettagliCAP.8: Il file system
Struttura interna del sistema operativo Linux CAP.8: Il file system Primitive per la gestione dei file 28/10/2013 File System Il gestore del file system è quel componente del Sistema Operativo che realizza
DettagliLaboratorio di Sistemi Operativi Marzo-Giugno 2008 Matr. Congr. 0 mod 3
Marzo-Giugno 2008 Matr. Congr. 0 mod 3 File & Directory (2) #include #include umask mode_t umask (mode_t cmask); Descrizione: setta la maschera di creazione per l accesso ad
DettagliLaboratorio di Sistemi Operativi primavera 2009 open
primavera 2009 open System Call close read I/O non bufferizzato write lseek 2 file descriptor file descriptor...ancora sono degli interi non negativi il kernel assegna un file descriptor ad ogni file aperto
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
DettagliDigressione: man (2)...
Syscall File I/O Digressione: man (2)... Le funzioni della libreria standard UNIX associate alle system call di Linux sono documentate nella sezione 2 di man e.g.: man 2 open Ogni manpage di system call
DettagliModulo 13: System call relative al File System
Modulo 13: System call relative al File System Chiamate di sistema relative ai file Restituzione descrittore Uso di namei Assegnazione inode Attributi I/O File System Struttura Manipolazione open creat
DettagliLaboratorio di Sistemi Operativi
II Semestre - Marzo/Giugno 2008 Matricole congr. 0 mod 3 File & Directory #include #include stat,fstat e lstat int stat (const char *pathname, struct stat *buf); int fstat (int
DettagliPer operare su un file abbiamo bisogno di aprirlo, scriverlo, leggerlo, chiuderlo:
I/O (Input/Output) System Call di I/O 2 Per operare su un file abbiamo bisogno di aprirlo, scriverlo, leggerlo, chiuderlo: open (e creat) write read close lseek 1 File descriptors 3 File descriptor (fd)
DettagliSistemi Operativi III. Giorgio Richelli e-mail: giorgio richelli@it.ibm.com
Sistemi Operativi III Giorgio Richelli e-mail: giorgio richelli@it.ibm.com I file system Ext2 ed Ext3 Obiettivi del file system Ext2 : Completa conformità alle tradizionali caratteristiche di file e file
DettagliChiamate di sistema. Gestione sistematica di errori Chiamate che lavorano su file
Chiamate di sistema Gestione sistematica di errori Chiamate che lavorano su file 1 Chiamate di sistema: errori Le chiamate di sistema possono fallire in caso di fallimento ritornano un valore diverso da
Dettagli1. Standard input 2. Standard output 3. Standard error
System Call di I/O 2 Per operare su un file abbiamo bisogno di aprirlo, scriverlo, leggerlo, chiuderlo: open (e creat) write read close lseek I/O (Input/Output) File descriptors 3 Standard file 4 File
DettagliLaboratorio di Sistemi Operativi primavera 2009
primavera 2009 dimensione di file La dimensione dei files (in bytes) è in st_size (della struttura stat) File & Directory (2) La dimensione del blocco utilizzato nelle operazioni di I/O è contenuto in
DettagliProgrammazione di sistema in Linux: gestione dei file. E. Mumolo
Programmazione di sistema in Linux: gestione dei file E. Mumolo Struttura di Linux System Call per il file system System Call per i processi Hardware: dischi, CPU, monitor, tastiera, schede di rete, porte
DettagliModulo 5: Programmazione di sistema --- Parte C: System call per la gestione dei file
1 Modulo 5: --- Parte C: System call per la gestione dei file Laboratorio di Sistemi Operativi I Anno Accademico 2006-2007 Francesco Pedullà (Tecnologie Informatiche) Massimo Verola (Informatica) Copyright
DettagliIl File-System. I file in ambiente Linux Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino
Il File-System I file in ambiente Linux Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino 2 File System Il file-system è uno degli aspetti più visibili di un sistema operativo
DettagliIntroduzione ai Device Drivers in Linux. E.Mumolo, DEEI mumolo@units.it
Introduzione ai Device Drivers in Linux E.Mumolo, DEEI mumolo@units.it 1 Device Drivers Moduli software che gestiscono le periferiche attraverso il file system Tutte le periferiche sono viste come file
DettagliLaboratorio di sistemi operativi A.A. 2010/2011 Gruppo 2 Gennaro Oliva 16 Input/Output
Laboratorio di sistemi operativi A.A. 2010/2011 Gruppo 2 Gennaro Oliva 16 Input/Output I lucidi di seguito riportati sono distribuiti nei termini della licenza Creative Commons Attribuzione/Condividi allo
DettagliModello di Programma in UNIX
Modello di Programma in UNIX Spazio di Indirizzamento per ogni singolo PROCESSO (Modello ad ambiente locale) Aree Dati Stack Heap Dati non inizializzati Dati dinamici Processo riferisce dati codice Dati
DettagliTipi di file. File. Proprietà dei file. Link simbolici. Set-user-ID e set-group-id. Identificatori e processi
Tipi di file 2 File 1. File normale: contiene dati 2. Directory: contiene nomi di altri file ed informazioni sugli stessi 3. File speciali di caratteri: es. un terminale, /dev/tty 4. File speciali a blocchi:
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2018-2019 Pietro Frasca Lezione 22 Martedì 08-01-2019 Struttura logica del file system una tipica organizzazione
DettagliFiles e Directories. Franco Maria Nardini
Files e Directories Franco Maria Nardini stat(2) Famiglia di system call Ritornano gli attributi estesi del file riferito in caso di link simbolico, lstat(2) ritorna attributi del link stesso le altre,
DettagliIl File System di Unix
Il File System di Unix 1 Il File System di UNIX Organizzazione logica / bin etc usr dev anna paolo.profile file1 mbox testi... Sistemi Operativi L A - Il File System di Unix 2 2 Il File System di UNIX
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
DettagliUNIX file system: organizzazione logica. Il File System di UNIX. UNIX file system: organizzazione fisica
UNIX file system: organizzazione logica / Il File System di UNIX omogeneità: tutto è file tre categorie di file file ordinari direttori bin.profile etc usr dev anna file1 paolo mbox dispositivi fisici:
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
DettagliLaboratorio di Sistemi Operativi
II Semestre - Marzo/Giugno 2008 matricole congr. 0 mod 3 I/O non bufferizzato-2 dup, dup2 System Call sync, fsync, fdatasync fcntl 2 1 Condivisione di file Unix supporta la possibilità che più processi
DettagliFile. Struttura. Gestione memoria - 19/01/2003 2/11
File Struttura L informazione memorizzata in RAM non soddisfa alcuni requisiti: volume elevato (eventualmente > VM) persistenza / stabilità (rispetto a processi / crash / power out) condivisione / accesso
DettagliFile. Gestione memoria - 19/01/2003 1/11
File L informazione memorizzata in RAM non soddisfa alcuni requisiti: volume elevato (eventualmente > VM) persistenza / stabilità (rispetto a processi / crash / power out) condivisione / accesso simultaneo
DettagliSistemi Operativi. Lez. 16 File System: aspetti implementativi
Sistemi Operativi Lez. 16 File System: aspetti implementativi Layout disco Tutte le informazioni necessarie al file system per poter operare, sono memorizzate sul disco di boot MBR: settore 0 del disco,
DettagliChiamate di sistema. Gestione sistematica di errori Chiamate che lavorano su file
Chiamate di sistema Gestione sistematica di errori Chiamate che lavorano su file 1 Chiamate di sistema: errori Le chiamate di sistema possono fallire in caso di fallimento ritornano un valore diverso da
DettagliIl File System di UNIX
Il File System di UNIX UNIX file system: organizzazione logica / bin etc usr dev omogeneità: tutto è file tre categorie di file file ordinari direttori anna paolo.profile file1 mbox testi... dispositivi
DettagliI/O su Socket TCP: read()
I/O su Socket TCP: read() I socket TCP, una volta che la connessione TCP sia stata instaurata, sono accedibili come se fossero dei file, mediante un descrittore di file (un intero) ottenuto tramite una
DettagliSISTEMI OPERATIVI. Linguaggio C e Linux. Diffusione dei linguaggi di programmazione IEEE Giorgio Giacinto 2016.
SISTEMI OPERATIVI Linguaggio C e Linux Diffusione dei linguaggi di programmazione IEEE 2016 2 Diffusione dei linguaggi di programmazione IEEE 2015 e 2014 2015 2014 3 Diffusione dei linguaggi di programmazione
DettagliSistemi Operativi. II Semestre - Marzo/Giugno 2012 Matricole congr. 0 mod 3. File & Directory
II Semestre - Marzo/Giugno 2012 Matricole congr. 0 mod 3 File & Directory #include Leggere Directory DIR *opendir(const char *pathname); ritorna NULL su errore struct dirent *readdir(dir *dp);
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
DettagliFilesystem. Introduzione Struttura logica Struttura fisica
Filesystem Introduzione Struttura logica Struttura fisica Filesystem Il filesystem E' un modulo del sistema operativo che si occupa di fornire una astrazione ai meccanismi di memorizzazione di massa Si
DettagliSistemi Operativi. II Semestre - Marzo/Giugno 2011 Matricole congr. 0 mod 3. File & Directory. Leggere Directory
II Semestre - Marzo/Giugno 2011 Matricole congr. 0 mod 3 File & Directory Leggere Directory DIR *opendir(const char *pathname); ritorna NULL su errore struct dirent *readdir(dir *dp); ritorna
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:
DettagliSystem calls. permettono ai programmi utente di richiedere servizi al Sistema Operativo. servizi come scrittura di file, stampa su video, ecc.
Le System Calls System calls permettono ai programmi utente di richiedere servizi al Sistema Operativo servizi come scrittura di file, stampa su video, ecc. corrispondenti procedure di libreria GNU C Library
Dettagli1.4: Il File System. File, directory, file system. Struttura e operazioni su file e directory. Implementazione delle directory
1.4: Il File System File, directory, file system Struttura e operazioni su file e directory Implementazione delle directory Struttura del file system Metodi di allocazione Gestione dello spazio libero
DettagliGestione dei file: filosofia. carica in memoria l i-node del file read / write. close cose rilascia le strutture dati di memoria del file
File system 1 Gestione dei file: filosofia open carica in memoria l i-node del file read / write accedono al file tramite il suo i-node close cose rilascia le strutture dati di memoria del file 2 Caratteristiche
DettagliLaboratorio di Sistemi Operativi primavera 2009
primavera 2009 stat,fstat e lstat File & Directory (1) int stat (const char *pathname, struct stat *buf); int fstat (int fd, struct stat *buf); int lstat (const char *pathname,
DettagliFiles, File I/O. Franco Maria Nardini
Files, File I/O Franco Maria Nardini UNIX file types UNIX non richiede una struttura interna del file. Dal punto di vista del sistema operativo c è un solo tipo di file. Struttura e interpretazione sono
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
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à
DettagliLab. di Sistemi Operativi - Esercitazione n 7- -Gestione dei processi Unix-
Lab. di Sistemi Operativi - Esercitazione n 7- -Gestione dei processi Unix- 1 Sommario Esercizi sulla gestione dei processi Creazione di un nuovo processo: fork Sincronizzazione tra processi: wait 2 -
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
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
DettagliDirectory. Le directory unix sono file.
Le directory unix sono file. Directory Molte system call per i file ordinari possono essere utilizzate per le directory. E.g. open, read, fstat, close. Tuttavia le directory non possono essere create con
DettagliIgino Corona
Sistemi Operativi Esercitazione 6: Comunicazione fra processi in Linux PIPE Igino Corona igino.corona@diee.unica.it 17 Novembre 2009 File In Linux, un le può essere un contenitore di informazione o uno
DettagliFile system. Chiamate di sistema POSIX Esempi: Chiamate di sistema Windows Esempio: Esercizi. 4.3 BSD Linux NTFS. Sistemi Operativi mod B 12.
File system Chiamate di sistema POSIX Esempi: 4.3 BSD Linux Chiamate di sistema Windows Esempio: NTFS Esercizi 12.1 Le chiamate di sistema di UNIX per file UNIX mette a disposizione sia chiamate di sistema
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
Dettagliprincipali componenti di un calcolatore La memoria secondaria La memoria secondaria Unita disco consolle CPU stampante
principali componenti di un calcolatore LABORATORIO DI PROGRAMMAZIONE 2 Corso di laurea in matematica macchina di Von Neumann Sistemi Operativi : memoria secondariae file system Marco Lapegna Dipartimento
DettagliArchitettura dei calcolatori e sistemi operativi. Input Output. IO 2 Il File System
Architettura dei calcolatori e sistemi operativi Input Output IO 2 Il File System File System E quel componente del Sistema Operativo che realizza i servizi di gestione dei file file: unità di archiviazione
DettagliModulo 8 System call per la gestione dei file
1 Modulo 8 Laboratorio di Sistemi Operativi I Anno Accademico 2008-2009 Copyright 2005-2007 Francesco Pedullà, Massimo Verola Copyright 2001-2005 Renzo Davoli, Alberto Montresor (Universitá di Bologna)
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
DettagliEsercitazione [8] Pipe e FIFO
Esercitazione [8] Pipe e FIFO Leonardo Aniello - aniello@dis.uniroma1.it Daniele Cono D'Elia - delia@dis.uniroma1.it Sistemi di Calcolo - Secondo modulo (SC2) Programmazione dei Sistemi di Calcolo Multi-Nodo
DettagliProgram m azione di Sistem a 2a
Program m azione di Sistem a 2a Lucidi per il corso di Laboratorio di Sistemi Operativi tenuto da Paolo Baldan presso l'università Ca' Foscari di Venezia, anno accademico 2004/ 2005. Parte di questo materiale
DettagliSistemi Operativi. Esercitazione 10. Corso di Laurea Triennale in Ingegneria Informatica. daniel.cesarini@for.unipi.it
Sistemi Operativi Corso di Laurea Triennale in Ingegneria Informatica Esercitazione 10 Virtual Filesystem mount, umount I/O, Unix I/O, Standard I/O Pipe e Fifo daniel.cesarini@for.unipi.it 1 Domande sulle
DettagliSystem call per l accesso a file
System call per l accesso a file Nome open creat close read write lseek unlink remove fcntl Significato apre un file in lettura e/o scrittura o crea un nuovo file crea un file nuovo chiude un file precedentemente
DettagliFilesystem-centrismo
Filesystem Filesystem-centrismo i sistemi UNIX sono filesystem-centrici : tutte le risorse hw/sw di sistema sono mappate all'interno del filesystem ed indirizzate come tali esempi: disco ide /dev/hda console
DettagliEsercitazione di Lab. di Sistemi Operativi 1 a.a. 2011/2012
Sommario: Esercitazione di Lab. di Sistemi Operativi 1 a.a. 2011/2012 - System Call Parte 1 open (apertura file) creat (creazione file) close (chiusura file) write (scrittura file) read (lettura file)
DettagliEsercitazione di Lab. di Sistemi Operativi. - I/0 di basso livello
Esercitazione di Lab. di Sistemi Operativi - I/0 di basso livello 1 System Call Fasi delle compilazione Il compilatore GNU gcc Esercizi Sommario 2 - System call - 3 Richiami sulle System Call Unix permette
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:
DettagliStruttura del sistema operativo GNU/Linux
Struttura del sistema operativo GNU/Linux http://www.glugto.org/ Cos'è un filesystem Cosa vuol dire FHS Composizione albero di directory Concetto di Mount Utente root Permessi su files e directory GNU/Linux
DettagliChiamate di sistema per la Inter Process Communication (IPC) in POSIX. E.Mumolo, DEEI mumolo@units.it
Chiamate di sistema per la Inter Process Communication (IPC) in POSIX E.Mumolo, DEEI mumolo@units.it Pipe Cos'è un pipe? E' un canale di comunicazione che unisce due processi Caratteristiche: La più vecchia
DettagliEsercitazione 4. Gestione dei file in Unix
Esercitazione 4 Gestione dei file in Unix Primitive fondamentali (1/2) open close Apre il file specificato e restituisce il suo file descriptor (fd) Crea una nuova entry nella tabella dei file aperti di
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
DettagliLaboratorio di Sistemi Operativi
Le FIFO pipe vs fifo la pipe può essere usata solo tra processi "imparentati" (che hanno un antenato comune che ha creato la pipe) la fifo consente di scambiare dati tra processi qualsiasi 2 1 FIFO (named
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
Dettagli