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 teoria)

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 \ / : * ? < > |
Caratteristiche
Date memorizzate Creazione, modifica, POSIX, accessi
Date supportate Gennaio 1, 1601 - May 28, 60056
Fork
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 novanta, quando Microsoft abbandonò lo sviluppo congiunto con IBM del sistema operativo OS/2 e decise di sviluppare in proprio Windows NT (che significa New Technology). 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 al File Allocation Table (FAT), l'altro file system di Microsoft. Queste le sue principali caratteristiche:

  • Affidabilità - NTFS è un sistema transazionale (o "Journaled" come si dice nei sistemi operativi Apple come Mac OS X); 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 il quale resta comunque leggibile dal computer.
  • 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(248 clusters - 1), il numero limite di file è 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[senza fonte]. A partire da Windows 2000, è inoltre possibile montare un volume NTFS come sottodirectory 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).

In NTFS sono stati aggiunti i cosiddetti punti di reparse, ovvero dei meccanismi che consentono le giunzioni (junctions) 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 salvati 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 diverso e DOS non lo supporta. 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 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.

Nei sistemi basati su Linux, a partire dalla versione 2.6.30 del kernel, è possibile accedere anche in scrittura ad un file system NTFS senza danneggiarne la struttura e permette un completo supporto in lettura e scrittura tramite FUSE).

Esiste anche un driver, ntfs-mount [1], per l'accesso alle partizioni NTFS da sistema operativo Solaris/OpenSolaris. Analogamente è possibile accedere in lettura a partizioni NTFS anche da DOS, ad esempio utilizzando Active@ NTFS Reader for DOS [2], programma freeware nella versione floppy, shareware nella versione CD avviabile.

Nonstante quanto sia stato detto sopra riguardo la presenza di journal e altre tecnologie di sicurezza in NTFS, esso e' si un passo avanti rispetto a FAT e FAT32 pero' NTFS rimane comunque un filesystem di concezione piuttosto obsoleta, dei primi anni 90 (copiato inizialmente da HPFS di OS/2). Se paragonato con altri filesystem molto più moderni tipici degli ambienti Unix/Linux come ad esempio EXT3/4,XFS e altri, NTFS risulta essere molto più lento in lettura/scrittura e molto meno affidabile rispetto alle perdite di dati se sottoposto ripetuti mancamenti di alimentazione elettrica o reset della macchina.

[modifica] Voci correlate

  • FAT16 e FAT32, gli altri file system di Microsoft

[modifica] Collegamenti esterni

  • Linux-NTFS, progetto Open Source per accedere ad NTFS con il sistema operativo Linux
  • NTFS-3G, driver open source stabile, per accedere in lettura e scrittura a partizioni NTFS
  • Paragon NTFS for Mac OS X driver commerciale per OSX per leggere e scrivere su partizioni NTFS
Strumenti personali