Prima di tutto, la voce di Wikipedia è abbastanza completa su questo punto.
Cercherò di spiegare il razionale alla base del partizionamento oltre agli argomenti di backup / organizzazione già forniti in altre risposte, per sostenere che dal punto di vista delle prestazioni, l'unico vantaggio nel partizionamento è ridurre al minimo la frammentazione.
I sistemi operativi devono fare ipotesi su come l'utente utilizza e archivia i suoi dati. Il problema può essere ridotto a quanto segue:
Supponiamo di avere un pezzo di memoria, ad esempio 256B, che puoi immaginare come 256 caselle in una sequenza.
|_|_|_|_|...|_|
Ora, vuoi archiviare 3 file, uno con 64, l'altro con 64, l'altro con 128 caselle: dovresti allocarli?
1: | 64 | 64 | 128 | or
2: | 64 | 128 | 64 | ?
Dipende ... dal fatto che quali blocchi verranno conservati per un lungo periodo o meno e quali sono i blocchi più probabili da salvare dopo la rimozione di uno dei blocchi.
Immagina che i 2 pezzi di 64 vengano rimossi dal disco nella prossima operazione un nuovo pezzo di 128 viene salvato. Nell'esempio 1, puoi archiviare subito il 128, ma nel secondo esempio, prima devi spostare il blocco memorizzato di 128 sul bordo e solo allora puoi aggiungere il nuovo blocco.
Ora, immagina questo, ma con tutti i tipi di dimensioni diverse, salvati in modo non banale (cioè non tutti i 4B prima, quindi tutti gli 8B, ecc.) Su un disco gigante (dimensioni GB). Questo è noto per essere un problema molto difficile.
Il sistema operativo risolve questo problema utilizzando l'euristica. Non costituisce la strategia ottimale, ma utilizza alcune euristiche per posizionare i blocchi in posizioni corrette. Un'importante informazione è quanto spesso sono grandi i blocchi che l'utente / sistema operativo salva, perché fornisce alcune informazioni a priori sui blocchi successivi da cui il sistema operativo può provare a indovinare.
Il partizionamento del disco indica efficacemente al sistema operativo che una specifica regione del disco appartiene a quella partizione. Ciò significa che non ci sarà più una sequenza di 256 caselle, ma due sequenze di 128 caselle (partizione A e B). Il sistema operativo non farà più il presupposto su dove metterlo: sei tu a decidere da quale root sulla tua directory scegli (mano agitando a parlare).
Perché può migliorare le prestazioni?
Un esempio tipico è quando si hanno due comportamenti distinti durante l'utilizzo del sistema operativo. Ad esempio, la differenza tra:
- utilizzando quotidianamente il sistema operativo, che ha molte funzioni di scrittura e cancellazione in memoria, e
- quando memorizzi file pesanti come video o album che non cambi molto.
Il partizionamento può migliorare le prestazioni quando si utilizza il sistema operativo quotidianamente in un modo e si utilizza un'altra partizione per archiviare solo file pesanti che si modificano molto raramente durante la vita del sistema operativo.
Poiché il tuo comportamento è coerente all'interno di ciascuna partizione, il sistema operativo probabilmente migliorerà la sua allocazione, minimizzando così la frammentazione.
Ora, se questo è pertinente o meno per i normali casi di utenti, direi di no perché chi sviluppa strategie di allocazione è intelligente e l'euristica è pensata per quei casi.
Per i server e altri sistemi, questo può fare la differenza, ma dopo la creazione del profilo è possibile farlo .
EDIT per includere SSD
La mia comprensione è che questo problema è indipendente dal fatto che si parli di SSD o di dischi rigidi. Il problema è fondamentale nel senso che richiede solo di riempire uno spazio finito con elementi di dimensioni non costanti che vengono costantemente aggiunti e rimossi.