sabato 2 ottobre 2010

UEFI, tutte le potenzialità del sostituto del BIOS

L'UEFI - Unified Extensible Firmware Interface - è l'interfaccia software che si sostituirà al BIOS e offrirà ai produttori di motherboard la possibilità di offrire ambienti operativi molto flessibili.

È l'ora dell'UEFI

I giorni del vecchio e buon BIOS sono contati. L'Unified Extensible Firmware Interface (UEFI) si offrirà come soluzione potente e in grado di supportare l'hardware moderno. In poche parole, l'UEFI è un'interfaccia che gestisce l'ambiente pre-boot del sistema. Questa soluzione promette meraviglie, ma messa alla prova ne emergono anche i potenziali difetti, come potete leggere nelle pagine successive.

jpg

Cliccare sull'immagine per ingrandirla

Probabilmente avete già sentito parlare di questa tecnologia (UEFI o EFI). Intel ha iniziato a parlarne nel 2003 con la sua architettura Itanium IA64, con il nome di Boot Initiative. Il concetto fu poi messo nelle mani dell'Unified EFI Forum, che si prese carico della gestione e promosse il nuovo standard per tutta l'industria. AMD, AMI, Apple, Dell, HP, IBM, Insyde, Intel, Lenovo, Microsoft e Phoenix sono oggi i principali membri del consorzio. Il BIOS si basa sull'architettura X86 a 16-bit, mentre l'UEFI introduce una totale indipendenza dall'hardware e divide l'interfaccia in boot e servizi runtime. Questo approccio mira a ottenere un'elevata standardizzazione, ma allo stesso tempo è flessibile, quel tanto che basta ai produttori per variare la loro offerta.

Il BIOS: antico ma prevalente

Il BIOS fu progettato circa 25 anni fa, come strumenti per avviare i sistemi operativi. I primi computer usavano le schede perforate come dispositivi d'avvio, prima che queste fossero sostituite da ROM con programmi molto basilari. Oggi possiamo scegliere diversi dispositivi d'avvio, tra cui floppy disk, hard disk, drive ottici e dispositivi di rete. I componenti attuali, tuttavia, sono ancora soggetti al sistema operativo e ai driver, mentre l'EFI permette il supporto a driver indipendenti dall'OS, poiché possiede il proprio modello driver.

Ci furono diversi tentativi di modificare il concetto iniziale di BIOS. IBM presentò un sistema modificato, il PS/2, nel 1988, parzialmente per combattere i cloni del BIOS. Si trattava di un'architettura Multi-Channel (MCA), con un ABIOS, una copia del classico BIOS. L'Advanced RISC Computing (ARC) mirava invece a unire l'ambiente di boot delle piattaforme MIPS e Alpha (anni 90), ma non riuscì a trovare una sua evoluzione su più sistemi. PowerPC e SPARC hanno il loro Open Firmware (OF).

Insomma, il BIOS è ancora qui e fa quello che ha fatto negli ultimi 25 anni: si assicura che il sistema operativo possa avviarsi. Non fu però progettato per l'hardware odierno, che è molto diverso da quello di una volta. Il BIOS, infatti, si basa ancora su un'interfaccia a 16 bit e interrupt software, interrupt routing e maximum precision timer, limitati da una ROM di 1 MB, a un numero limitato di dispositivi inizializzabili (problema critico per l'ambiente server), estensioni proprietarie e modularità assente - tanto per elencare qualche limitazione. Una soluzione più moderna, quindi, è più che altro una necessità.

Supporto UEFI

I sistemi operativi hanno iniziato a supportare l'UEFI fin da Vista SP1 e Windows Server 2008, ma solo nelle edizioni a 64 bit. Sfortunatamente, il supporto da parte dell'industria è ancora molto debole e ci sono ancora dei piccoli problemi per quanto riguarda le estensioni di archiviazione.

Cosa può fare l'UEFI?

EFI è un'interfaccia software che opera tra il sistema operativo e il firmware della piattaforma, in grado di sostituire le funzioni del BIOS; è abbastanza complesso da meritare il nome di "simil-OS" (OS-Like). Non solo offre supporto a driver, interfacce e servizi, ma ha anche una shell che permette all'utente di eseguire applicazioni su interfaccia a linea di comando. L'EFI contiene le informazioni del sistema organizzate in tabelle, e offre servizi di boot e runtime per il sistema operativo. I servizi di boot includono l'inizializzazione, file service, e console utente testuale o grafica. I servizi runtime includono i servizi data, ora e NVRAM. Per abilitare o facilitare la comunicazione tra i dispositivi, tutti i driver EFI e i componenti comunicano tramite specifici protocolli.

I driver sono molto importanti, perché l'ambiente, l'EFI Byte Code (EBC), è indipendente dal processore, e permette l'inizializzazione e il funzionamento dei dispositivi (con l'eccezione dell'hardware che richiede specifici supporti da parte del sistema operativo, come le schede grafiche di fascia alta).

jpg

Cliccare sull'immagine per ingrandirla

Con EFI finiscono anche i giorni dei boot managar, piccoli strumenti necessari (per ora) a chi vuole usare più di un sistema operativo sulla stessa macchina. EFI ha il proprio boot manager, che si occupa di questa attività. Anche gli assemblatori hanno nuove opportunità, poiché le estensioni EFI possono essere aggiunte in differenti modi. Questo significa che il produttore del PC può usare la motherboard desiderata dall'acquirente, aggiungendo poi alcune funzionalità tramite l'EFI e una partizione del sistema operativo o un drive, eventualmente anche tramite il download da internet.

Apple Boot Camp, che permette d'installare Windows su un Mac, con un metodo non distruttivo, attualmente usa l'implementazione Intel EFI, anziché l'Open Firmware.

png

Cliccare sull'immagine per ingrandirla

L'EFI Platform Inizialization (PI) offre una Compatibility Support Mode (CSM), tramite cui aggiungere nuove interfacce, quindi è anche possibile far funzionare un BIOS classico. Questo beneficio dovrebbe spingere i produttori ad adottare l'UEFI molto velocemente. Malgrado ciò, il supporto ad oggi esiste solo su carta.

I problemi con le partizioni ed MBR

Il setup di Windows sceglie automaticamente il GPT per i volumi più grandi di 2TB. Permette all'utente, invece, di scegliere tra MBR e GPT per quelli inferiori ai 2 TB. Questo avviene anche per i dischi aggiunti a un'installazione di Windows. Molti BIOS oggi disponibili supportano le partizioni GPT quando la grandezza è superiore a 2 TB. Vediamo cosa succede se scegliamo il convenzionale MBR.

png

Cliccare sull'immagine per ingrandirla

Se il supporto UEFI non è disponibile, Windows usa automaticamente il GPT per i dischi da 2 TB o maggiori e offre la scelta tra GPT e MBR. Tutta la capacità eccedente i 2 TB non sarà usata se partizionata con MBR.

png

Cliccare sull'immagine per ingrandirla

Windows Vista è chiaro su questo punto.

png

Cliccare sull'immagine per ingrandirla

Potreste pensare che sia possibile creare una partizione addizionale quando s'installa un volume da oltre 2 TB. Ciò non è possibile, poiché MBR limita l'intero disco a una partizione di 2 TB. La parte eccedente rimane inutilizzata. È importante usare GPT per i dischi di grandi dimensioni, così da eliminare i limiti dei due Terabyte.

Partizionamento con GPT e MBR con ESP, MSR

Avrete bisogno della versione a 64 bit di Windows (XP, Vista o 7) per avere pieno supporto GPT ai dischi con capacità superiore a 2 TB. GPT offre le seguenti caratteristiche:

  • 18 exabyte di capacità massima
  • Fino a 128 partizioni per disco
  • Tabella prima e di backup per la ridondanza
  • Ogni partizione ha un ID unico in maniera tale da evitare conflitti (GUID)

Qui raggruppiamo le opzioni di partizionamento e azioni per GPT e MBR:

32 bit Windows 64-bit Windows
GPT MBR GPT MBR
Avvio No No
Lettura No
Scrittura No

Ricordatevi che il supporto UEFI diventa rilevante per i dischi con capacità superiore ai 2 TB. Deve essere presente se volete rendere avviabile una partiziona di queste dimensioni, oltre ad avere altri requisiti (Windows 64 bit e GPT).

Dettagli GPT su Windows x64

GPT installa automaticamente l'EFI System Partition, che contiene il boot loader, driver EFI e tutti gli altri file necessari per avviare il sistema (come il boot.ini, HAL e NT Loader). Utilizza la GUID Partition Table anziché il master boot record. L'ESP è pari all'1% della capacità del disco, o ha dimensione minima di 100 MB e massima di 1000 MB.

I sistemi GPT sono anche equipaggiati con una partizione MSR, che sta per Microsoft Reserved. Siccome le partizioni GPS non permettono di nascondere settori, Windows utilizza questo spazio riservato per il sistema operativo. Se decidete di convertire un disco base in un disco dinamico, Windows prenderà la partizione MSR, ridurrà la sua dimensione e creerà il database del disco dinamico usando lo spazio disponibile. Su dischi più piccoli di 16 GB, la partizione MSR sarà di soli 32 MB. Per dischi più grandi, potrà occupare fino a 128 MB.

jpg

Cliccare sull'immagine per ingrandirla

Anche se il vostro sistema è compatibile con GPT, e sono state create le partizioni necessarie, avrete bisogno ugualmente del supporto UEFI per avviare il sistema da un volume molto grande.

jpg

Cliccare sull'immagine per ingrandirla

Potete proseguire e installare Windows in una partizione non avviabile, ma sarete avvisati.

jpg

Cliccare sull'immagine per ingrandirla

Se il supporto UEFI e GPT funzionano senza problemi, Windows 7 creerà autonomamente le partizioni necessarie, come quella da 100 MB per l'EFI System Partition (ESP) e quella da 128 MB per la Microsoft Reserver (MSR), e così vi permetterà di creare volumi ad alta capacità avviabili.

Conclusioni

L'UEFI è disponibile da molto tempo. Negli anni ci sono stati diversi tentativi volti a creare uno standard flessibile per l'avvio del sistema (boot), con una soluzione "a moduli". Intel potrebbe aver vinto questa sfida con il progetto Itanium. EFI, che oggi è gestito dall'United EFI Industry Forum, controlla gli standard UEFI. L'Extensible Firmware Interface rimpiazzerà gradualmente i BIOS convenzionali e offrirà nuove interfacce per i sistemi operativi, facilitando la procedura di avvio e offrendo molta flessibilità tramite le applicazioni EFI e i driver indipendenti dal sistema operativo.

Anche se le recenti specifiche 2.3 sembrano abbastanza mature, l'industria non le ha ancora adottate come standard. Da una prospettiva di utente finale, ciò è difficile da capire. Apple, IBM, HP e pochi altri hanno già provato a implementare l'UEFI in alcuni loro prodotti. Nel frattempo, l'intero mercato delle motherboard supporta l'UEFI solo sulla carta. Abbiamo trovato solo alcune eccezioni, più che altro casi in cui l'UEFI serve solo a migliorare l'impatto grafico del BIOS, ma non le sue caratteristiche. Quello che è più interessante è che l'UEFI è l'unico modo per gestire senza problemi dischi dalla capacità superiore ai 2 TB.

jpg

Cliccare sull'immagine per ingrandirla

Non siamo riusciti a usare un array RAID 0 da 4 TB (2x2TB) con la scheda madre Intel DP55KG usando la soluzione Intel Matrix RAID. Questa, attualmente, limita gli array RAID avviabili e un massimo di 2 TB. Intel si è auto-imposta questa limitazione. Siamo però riusciti a usare un RAID di 2 TB con Windows 7 grazie all'abilitazione dell'UEFI.

Detto questo, l'unica cosa che possiamo fare è sperare che i produttori abbraccino presto questa tecnologia. Non è molto entusiasmante acquistare oggi una scheda P55 e non sapere se supporterà dischi futuri dalla capacità superiore ai 2 TB, almeno per quanto riguarda il disco d'avvio.

Nessun commento:

Posta un commento