NTFS
Da Wikipedia, l'enciclopedia libera.
NTFS | |
---|---|
Sviluppatore | Microsoft |
Nome completo | New Technology File System |
Introdotto | Giugno 1993 (Windows NT 3.1) |
Identificatore della partizione | 0x07 (MBR) EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (GPT) |
Struttura | |
Struttura contenuti directory | B+ tree |
Allocazione dei file | Bitmap/Extents |
Blocchi danneggiati | Bitmap/Extents |
Limiti | |
Dimensione massima di un file | 16 TiB nella corrente implementazione
(16 EiB in theory) |
Numero massimo di file | 4,294,967,295 (232 − 1) |
Dimensione massima del nome di un file | 255 characters |
Dimensione massima del volume | 256 TiB nell'attuale implementazione (16 EiB nell'architettura) |
Caratteri permessi nel nome di un file | Unicode (UTF-16), ogni carattere tranne "/" |
Caratteritiche | |
Date memorizzate | Creazione, modifica, POSIX, accessi |
Date supportate | Gennaio 1, 1601 - May 28, 60056 |
Fork | Sì |
Attributi | Read-only, hidden, system, archive |
Permessi file system | ACL |
Compressione trasparente | Per-file, LZ77 (Windows NT 3.51 onward) |
Crittografia trasparente | Per-file, DESX (Windows 2000 onward), Triple DES (Windows XP onward), AES (Windows XP Service Pack 1, Windows 2003 onward) |
NTFS (acronimo per New Technology File System), file system dei sistemi operativi basati su kernel NT.
Questo file system nasce negli anni '90, quando Microsoft abbandonò lo sviluppo congiunto con IBM del sistema operativo OS/2 e decise di sviluppare in proprio Windows NT (che significa New Tecnology). Proprio per questo alcuni degli aspetti presenti nel file system HPFS di OS/2 sono presenti anche in NTFS.
Indice |
[modifica] Caratteristiche principali
NTFS è un notevole passo avanti rispetto a FAT, l'altro file system di Microsoft. Queste le sue principali caratteristiche:
- Affidabilità - NTFS è un sistema transazionale, questo vuol dire che se un'operazione è interrotta a metà (ad esempio per un blackout) viene persa solo quell'operazione ma non è compromessa l'integrità del file system.
- Permessi e Controllo d'Accesso - a ciascun file o cartella è possibile assegnare dei diritti di accesso (lettura, scrittura, modifica, cancellazione e altri).
- Nomi lunghi e Unicode - i nomi dei file e delle cartelle possono essere lunghi fino a 255 caratteri e possono contenere caratteri di tutte le lingue del mondo grazie alla codifica Unicode.
- Dimensioni e Flessibilità - La dimensione dei volumi e il massimo numero di file sono praticamente illimitati; la dimensione del volume può raggungere al massimo i 256 Terabytes(232 clusters - 1), il numero limite di files è invece di circa 4,3 miliardi (232 - 1). La dimensione massima di un singolo file è di 16 Terabytes, contro i 4 GigaBytes di FAT e FAT32. Sono supportati nativamente i volumi sparsi e il mirroring. Sono finalmente disponibili gli hardlink.
La performance di NTFS è nettamente superiore a quella di FAT e di FAT32. A partire da Windows 2000, è inoltre possibile montare un volume NTFS come sottocartella di un altro volume NTFS.
NTFS permette inoltre di utilizzare trasparentemente delle opzioni di compressione (la compressione è mediocre, meno di ZIP, ma permette l'accesso immediato a qualunque punto del file) e di crittografia (chiamato anche EFS e purtroppo non molto sicuro).
In NTFS sono stati aggiunti i cosiddetti punti di reparse, ovvero dei meccanismi che consentono le giunzioni (hardlink) tra directory, altrimenti impossibili per la struttura del filesystem.
[modifica] Struttura
NTFS sfrutta un'indicizzazione a 64 bit, sebbene la sua implementazione sia basata soltanto su 32 bit.
La struttura principale di un filesystem NTFS è la Master File Table (MFT), una tabella strutturata in blocchi (solitamente in record di 1KB) che contiene gli attributi di tutti i file del volume, inclusi i metadati. Tali attributi possono essere attributi residenti quando sono presenti in MFT, oppure, se non memorizzabili a causa del poco spazio, vengono salvato in qualche altra posizione del filesystem e prendono il nome di attributi non residenti.
Le directory sono memorizzate come file: in ogni file-directory sono presenti degli attributi speciali, memorizzati in ordine lessicografico, che si riferiscono ai file contenuti in tale directory.
I dati veri e propri dei file sono memorizzati in flussi puntati da appositi attributi Data.
[modifica] Possibili inconvenienti
Il più grosso inconveniente di NTFS è che è più complesso da amministrare di FAT e di FAT32. Gli utenti dei sistemi operativi Microsoft infatti erano abituati a poter accedere alle partizioni FAT anche con un semplice dischetto di boot DOS. Questa in realtà non è una vera limitazione di NTFS, quanto piuttosto il risultato del fatto che NTFS è un file system più moderno, completo e complesso. Il vero limite, invece, è legato al fatto che Microsoft non ha reso pubbliche le specifiche di NTFS, e quindi NTFS è un file system di fatto chiuso e proprietario. Anche per questo, nonostante le sue qualità, non ha conosciuto fortuna al di fuori dei sistemi operativi Microsoft.
Sono tuttavia in corso progetti di reverse engineering che mirano a rendere accessibili le partizioni NTFS anche da altri sistemi operativi.
A partire dal kernel 2.6.12 è possibile accedere ad un file system NTFS da Linux anche in scrittura senza danneggiare la struttura del file system e non solo in lettura come accadeva nelle versioni precedenti del kernel, anche se in maniera rischiosa e comunque abbastanza limitata. Interessanti sono anche i progetti Captive [1] (che utilizza attraverso WINE una libreria nativa di Windows XP per l'accesso alle partizioni di tipo NTFS), Linux-NTFS project [2] e ntfs-3g [3] (Il driver è attualmente in BETA ma permette un completo supporto in lettura e scrittura tramite FUSE).
Esiste anche un driver, ntfs-mount [4], per l'accesso (per ora solo in lettura) alle partizioni NTFS da sistema operativo Solaris/OpenSolaris.
[modifica] Voci correlate
[modifica] Collegamenti esterni
- Approfondimento su NTFS
- Linux-NTFS, progetto Open Source per accedere ad NTFS con il sistema operativo Linux