DISCO -> PARTIZIONE -> FORMATTAZIONE -> FILE SYSTEM -> SISTEMA OPERATIVO

DISCO

Un hard disk è costituito da due o più dischi rigidi sovrapposti inseriti in un contenitore sigillato. il sistema operativo (OS) riserva una parte del disco per il "ritrovamento dei file" il quale consiste di due parti: la tabella di allocazione dei file (registra la posizione di ciascun file sul disco) e la directory principale, in cui vengono memorizzati i nomi, le dimensioni, ora e data di file presenti, nonchè gli attributi dei file. Ogni hard disk è suddiviso in tracce, settori e cilindri. La superficie di ogni piatto del disco rigido è divisa in TRACCE, cerchi concentrici. Sono identificate da un numero, partendo da zero e arrivando al limite superiore caratteristico di ciascun disco.
Le tracce, a loro volta, sono suddivise in SETTORI, utilizzati per immagazzinare una determinata quantità di informazioni. Il modo in cui sono memorizzate le informazioni, come cioè sono gestiti i settori e le tracce di un disco, dipende dal file system (spiegato più avanti). I cerchi concentrici sono chiamati tracce in quanto seguendo questi cerchi il computer trova le informazioni. La quantità di tracce dipende dal disco, non esiste un numero unico.
Anche i settori variano la loro dimensione a seconda del tipo di disco. La capacità di memorizzazione è uguale per tutti i settori, da ciò consegue che sulle tracce interne le informazioni sono più concentrate rispetto alle tracce più esterne. Tutte le tracce che sono disposte alla stessa distanza dall’estremità del disco formano un CILINDRO. Il numero dei cilindri corrisponde al numero di tracce presenti su una faccia.

FORMATTAZIONE

Spesso gli hard disk presentano bad sector, cioè settori difettosi che non possono essere utilizzati per la memorizzazione dei dati; è possibile ovviare a questi problemi procedendo con la formattazione del disco. Spesso però tale procedura non permette di ricuperare i cluster danneggiati, pertanto può essere necessario dover intervenire con la formattazione a basso livello dell'hard disk, operazione che porta alla completa ricostruzione delle informazioni magnetiche presenti sul disco.

Una prima formattazione fisica (detta anche a basso livello) (LLF) viene solitamente eseguita dal produttore del disco fisso (creazione sulla superficie magnetica del disco delle aree magnetizzate che individuano traccie e settori)

Per i floppy disk è lo stesso "drive" che consente di effettuare la formattazione a basso livello che viene svolta nella prima parte dell'esecuzione del comando format del DOS

Alcuni bios integrano utility per la formattazione a basso livello; in questo caso, sarà sufficiente entrare nel bios e ricercare l'apposito menù. Più spesso, sarà necessario utilizzare apposite utility sotto DOS.
Prima di procedere alla formattazione a basso livello è necessario cambiare il "mode" dell'hard disk da "LBA" o "Auto" in "Normal"; tale parametro può essere variato da bios, nel menù "Standard CMOS Setup".
 

I dati vengono memorizzati magnetizzando in modo diverso punti diversi della superficie e vengono riletti "misurando" lo stato di magnetizzazione dei punti della superficie. In definitiva le informazioni sul disco magnetico vengono lette e scritte identificando in quale settore di quale traccia si trova il blocco che si vuole leggere o scrivere

PARTIZIONI

Per essere formattato, un disco, drve essere prima partizionato. Tre sono i motivi principali per cui è bene partizionare un hard-disk: Organizzazione - Ottimizzazione - Sicurezza

Esistono due tipi principali di partizioni: primarie ed estese

Un disco fisso che si presenta con la sola lettera C, ha una sola partizione (dos primaria) e nessuna partizione dos estesa. La partizione PRI DOS, è quella che comunemente impostiamo come ATTIVA ed invece la partizione EXT DOS, è quella che contiene le unità logiche. le unità logiche sono ENTITA' VIRTUALI all'interno della Partizione Dos estesa

si hanno dei metodi per avere una partizione suddivisa su più hard-disk, tramite i sistemi RAID

ogni disco fisso può ospitare al massimo quattro partizioni, una delle quali può essere estesa

Può esistere una sola partizione estesa su un hard-disk

E' quindi possibile avere, sullo stesso disco fisso, quattro partizioni primarie oppure tre primarie ed una estesa

In ogni partizione primaria può essere installato un qualunque sistema operativo (massimo 4) perchè le partizioni primarie sono quelle da cui i sistemi operativi possono effettuare il boot e contengono un file-system

Una partizione estesa può essere suddivisa in molte unità logiche, invece la partizione primaria può contenere solo una unità logica. L' unità logica è quella che normalmente viene indicata con una lettera da C: a Z:

Ogni partizione estesa può contenere solo 24 unità logiche.

Questa limitazione non si applica più per Windows 2000 e XP, queste versioni non hanno più bisogno di una lettera per ogni partizione. Questa limitazione non vale neanche per Unix/Linux dato che non hanno mai usato lettere.
 

Le lettere di unita' vengono assegnate da FDISK e dal BIOS nel seguente modo:
- PRIMA TUTTE le partizioni PRIMARIE
- POI, nel loro ordine, tutte le unita' logiche nelle partizioni estese.
Il che vuol dire che, se avete installato piu' di un HD fisico, ed avete creato partizioni primarie ed estese su entrambi, le lettere non sarnno consequenziali da un HD all'altro.
Poniamo, per esempio, che abbiate DUE HD: nel primo UNA PRIMARIA ed UNA ESTESA con dentro DUE LOGICHE. Nel secondo, UNA PRIMARIA ed UNA ESTESA, con dentro UNA LOGICA.
Le lettere di unita' si disporranno nel seguente modo:

C: PRIMARIA del PRIMO HD
D: PRIMARIA del SECONDO HD
E: Prima LOGICA del primo HD
F: Seconda LOGICA del primo HD
G: Prima LOGICA del secondo HD

L'ordine in cui gli HD fisici vengono considerati e' quello dei connettori EIDE:

Prima il PRIMARY MASTER, poi il PRIMARY SLAVE, ed a seguire il SECONDARY MASTER ed il SECONDARY SLAVE.

Le informazioni sul numero e tipo di partizioni sono contenute nella parte finale dell'MBR (Master Boot Record, cilindro 0, lato 0, settore 1 dell'hard-disk)

Le partizioni estese fungono da "contenitore" per un numero limitato di partizioni logiche (E: F: G:.......)

Le partizioni estese devono essere necessariamente suddivise in una o più unità logiche per essere utilizzabili. Le unità logiche, a differenza delle partizioni primarie, possono essere tutte attive contemporaneamente.

Per utilizzare le partizioni è necessario formattarle (ad alto livello) (logica) (HLF).

Alcuni sistemi operativi per avviarsi richiedono di essere installati nella partizione primaria, altri invece possono  essere installati anche in una partizione estesa.

  Partizione primaria Partizione estesa
- Dos Si No
- Windows 95/98 Si No
- Windows NT Si Si
- Linux Si Si
- OS/2 Si Si


Linux e tutti gli Unix in generale usano invece 4 caratteri: i primi due indicano il tipo di unità (hd: ide/eide, sd: scsi, fd: floppy), il 3° indica il canale cui è collegato il dispositivo fisico (a per il primary ide, b il secondary, ecc., e in modo equivalente per gli scsi, mentre per i floppy si usano 0 e 1, senza il quarto carattere), e l'ultimo carattere è un numero, che indica il numero della partizione (da 1 a 4 le primarie e le estese, da 5 in poi i volumi logici)

Questo schema cambia con i kernel della serie 2.4

Dopo aver creato le varie partizioni, bisognerà effettuare una formattazione logica

Ogni sistema operativo utilizza un metodo di memorizzazione (detto file system) ovvero un sistema per organizzare i file nei dispositivi in modo da avere un accesso diretto, senza il vincolo della sequenzialità.

FILE SYSTEM

Una volta, si usava il file system FAT12 o FAT16 File Allocation Table (Tabella di Allocazione dei File). La FAT è quella porzione di disco rigido in cui è descritta la posizione di ogni singolo file (cluster). La dimensione dei clusters dipende dal tipo di File System utilizzato. Senza entrare nei minimi dettagli, si intuisce che il il File System FAT32 (il più avanzato) consente di migliorare le prestazioni del disco rigido e di aumentarne lo spazio. Con il File System FAT16 non sono supportate le partizioni superiori a 2GB, mentre con il File System FAT32 non sono supportate le partizioni di dimensioni inferiori a 512MB

Windows 2000 supporta i seguenti file system: FAT16, FAT32 e NTFS 5

Windows NT 4.0 aveva il file system NTFS 4

Windows 2000 consente la lettura e la scrittura di partizioni EXT2 (ovvero quelle su cui è installato Linux) solo mediante l'adozione di utilità sviluppate da terze parti

Windows 98, Windows 98 Second Edition e Windows 95 OSR2 permettono invece lettura e scrittura delle sole partizioni formattate come FAT16 o FAT32

la prima versione di Windows 95 nonché Windows 3.1x e il DOS supportavano solo FAT12

FAT  usato da DOS, Windows 3.x e dalla prima versione di Windows 95. limite della partizione = 2Gb (4 Gb se sono abilitati i cluster a 64K)

FAT32 usato da Windows 9x (eccetto Windows 95a, Windows ME, Windows 2000 e Windows XP

NTFS file system preferito da Windows NT, Windows 2000 e Windows XP

LINUX usato da Linux sulle partizioni Ext2, Ext3 e Swap 

File Allocation Table a 12/16 bit 

Dimensione della partizione 

Dimensione di ogni singolo cluster 

<128 Mbyte 

2 Kbyte 

<256 Mbyte 

4 Kbyte 

<512 Mbyte 

8 Kbyte 

<1 Gbyte 

16 Kbyte 

2 Gbyte 

32 Kbyte 

 

Dimensione dei cluster per la FAT 16 , FAT32 e NTFS
Dimensione della partizione Dimensione del cluster FAT 16 Dimensione del cluster FAT 32 Dimensione del cluster NTFS *
Fino a 127 Mb 2 Kb 512 bytes
Da 128 a 255 Mb 4 Kb
Da 256 a 511 Mb 8 Kb
DA 512 a 1.023 Mb 16 Kb 1 Kb
Da 1.024 a 2.047 Mb 32 Kb 2 Kb
Fino a 6 Gb 4 Kb 4 Kb
Da 6 a 16 Gb 8 Kb
Da 16 a 32 Gb 16 Kb
Da 32 a 2 Tb 32 Kb
*NTFS è disponibile con Windows XP


 

l'utilità FDISK non supporta tutti i file system

GDISK è un'utilità inclusa nel pacchetto Norton Ghost di Symantec

Partition Magic pur essendo necessario avviarlo in modalità DOS previo inserimento di un dischetto di avvio, mette a disposizione un'intuitiva interfaccia grafica in perfetto stile Windows rendendo possibile anche l'uso del mouse

I famosi boot manager, non fanno altro che cambiare dinamicamente, a seconda della scelta dell'utente, la partizione configurata come attiva. E' ovvio che è possibile impostare una sola partizione attiva

Partition Magic supporta tutti i file system più comuni (FAT16/32, NTFS 4/5, EXT2, HPFS,...) e può essere eseguito su tutte le versioni di Windows. Partition Magic include, tra l'altro, anche BootMagic, un'eccellente utilità (boot manager) che permette di scegliere all'avvio del personal computer, quale sistema operativo eseguire di volta in volta

L'MBR contiene un puntatore ad una delle partizioni primarie, detta avviabile. Il firmware del BIOS del pc, dopo il POST (il controllo di sistema fatto all'accensione del pc), passa il controllo all'MBR che lo passa al settore di boot della partizione avviabile o al kernel del sistema operativo.

A causa di un difetto nei BIOS, questi non riescono ad accedere a partizioni poste oltre il 1024° cilindro, e ciò può creare problemi a Linux, in particolare a LILO, il boot-loader usato di solito (quindi se partite da un floppy di avvio o usate LOADLIN per partire da DOS, non avete questo problema, come anche se usate GRUB)

Il disco durante la formattazione viene suddiviso in settori e tracce: possiamo immaginare le tracce come delle corone circolari concentriche di disco, mentre i settori sono degli spicchi di disco. Usando settore e traccia come coordinate è possibile individuare un blocco, l'unità più piccola indirizzabile su un disco

Prima di tutto createvi un dischetto di boot con un minimo di utility d'emergenza. Inserite un floppy da 1.44" vuoto e dal prompt date il comando: format a:/u/s. Alla fine copiateci dentro dalla directory c:\windows\command oppure c:\dos i file: fdisk.exe, format.com e sys.com. Poi è bene controllare che non ci siano errori sul disco, con (in ordine dal programma peggiore al migliore) Chkdsk, Scandisk, Ndd. Poi si procede alla deframmentazione. Prima DOVETE disattivare la memoria virtuale, DOVETE cancellare eventuali image.idx e mirorsav.fil. Potrebbero esserci altri file nascosti/di sistema: bisogna permettere che essi possano essere spostati. Disabilitare il virus warning del BIOS. Un'ultima nota: conviene deframmentare dalla Modalità provvisoria

A questo punto partite in modalità provvisoria e deframmentate, quando Defrag ha finito il suo lavoro, anche se la procedura può sembrare poco ortodossa, conviene aspettare una decina di secondi e se la luce dell'hard-disk non da segni di vita (non dovrebbe, non essendoci niente in background né attiva la memoria virtuale) conviene RESETTARE, invece di chiudere Defrag e Sessione per riavviare. Questo perché Windows in fase di chiusura potrebbe andare a riscrivere nella zona appena deframmentata

I dischi dinamici di Windows 2000 Non esistono più differenze tra partizioni primarie, estese e logiche, ora esistono solamente volumi. I dischi dinamici sono supportati esclusivamente da Windows 2000, Un disco dinamico non è accessibile da nessun altro OS. I dischi di base sono ancora l’impostazione di default di un’installazione windows 2000. per tutti gli smanettoni che si cimentano su sistemi multi-boot resta un aspetto interessante ma non applicabile.



Linux per essere installato richiede almeno due partizioni: una dove risiederanno realmente i file e una di swap per alleggerire il carico che grava sulla nostra RAM. Si consiglia di creare una partizione per il boot come primaria, utilizzare le restanti primarie disponibili, per poi allocare il nostro spazio rimanente in partizioni logiche all’interno di una estesa

Linux indica le partizioni presenti su un disco rigido come /dev/hdXY, dove X è una lettera che contraddistingue il nostro hard disk (a per il primary master, b per il primary slave, c per il secondary master, d per il secondary slave) e Y indica progressivamente il numero che contraddistingue la partizione (da 1 a 4 per le primarie/estese, da 5 in poi per le logiche).

Indicativamente conviene creare una partizione primaria per /boot di 15 mb (attenzione che vecchie versioni di LILO non permettono il boot da partizioni che superano il 1024 cilindro per una limitazione del BIOS, cio’ non è piu’ un problema dalla versione 21.3), una per /home (siate generosi con questa partizione se avete molto spazio), una per /usr (anche questa merita una particolare attenzione, diciamo che un paio di GB sono abbondanti per ogni uso), una per / dove risiederanno tutti i restanti file (un GB è piu’ che sufficiente). Sulla dimensione della partizione di swap in genere ci si regola assegnando il doppio della RAM presente sul nostro PC (ma non superate i 128 MB). Considerate anche l’opportunita’ di creare una partizione ad hoc per /tmp per i file temporanei e per /var per i file di vario uso come log, spool, cache, ecc.

Fdisk è uno dei programmi storici per la creazione di partizioni (badate a non confondere questo programma con il suo omonimo per MS-DOS).

Cfdisk è un’altro dei programmi utilizzati per creare partizioni. Al contrario di fdisk, dispone di un’interfaccia piu’ amichevole

Cosa possiamo fare per ridimensionare la partizione occupata da Windows?
A questo scopo esistono diverse soluzioni, alcune commerciali (come Partition Magic della PowerQuest), altre Open Source (come Parted, FIPS e DiskDrake).
 

Partition Magic è la soluzione commerciale piu’ valida per la gestione delle partizioni sotto Windows, è in grado di gestire partizioni di tipo FAT, FAT32, NTFS ed EXT2

Oltre a Partition Magic esiste un’altro programma per DOS/Windows per il resizing di partizioni FAT: Parted è un programma Open Source (anche questo è GPL) scritto per Linux e giunto a una maturazione tale da renderlo un programma molto affidabile e popolare

Da un progetto come Parted è nato DiskDrake, tool per la gestione delle partizioni di Mandrake.

Quando si vuole installare Linux si può cercare di ridurre lo spazio occupato, liberandolo alla fine dell'hard-disk, per poi usare lo spazio vuoto per le partizioni EXT2 (Linux native, type 0x83), e in genere 64 Mbyte per la partizione di swap (Linux swap, type 0x82, si va da un minimo utile di 16 a un massimo consentito di 128 per i kernel 2.0.xx, mentre i kernel 2.2.xx consentono un massimo di 2 Gbyte).

Un esempio tipico di partizioni per Linux è il seguente:

Fips è un programma molto potente, che permette di ridurre le dimensioni delle partizioni primarie FAT (Fips 1.5 e 2.0) e FAT32 (solo Fips 2.0).

Fsresize è un tool per Linux abbastanza recente (attualmente in versione 0.08) che permette di modificare le dimensioni delle partizioni FAT16 e 32 in modo veloce e senza bisogno di deframmentare prima il file-system