Open FirmwareOpen Firmware è uno standard che definisce le interfacce di un firmware per computer, precedentemente approvato dall'Institute of Electrical and Electronics Engineers. Nasce alla Sun Microsystems dove era conosciuto come OpenBoot ed è stato utilizzato da diversi fornitori tra cui Sun, Apple, IBM e ARM.[senza fonte] Consente a un sistema di caricare dei driver indipendentemente dalla piattaforma direttamente da un dispositivo PCI, migliorandone la compatibilità. È possibile accedervi grazie alla sua interfaccia a riga di comando, che utilizza il linguaggio di programmazione Forth. StoriaÈ rappresentato nello standard IEEE come IEEE 1275-1994. Lo standard non è più stato rinnovato dal 1998 da parte dell'Open Firmware Working Group, è stato quindi ufficialmente ritirato dall'IEEE nel maggio 2005.[1] CaratteristicheL'Open Firmware definisce un modo standard per descrivere la configurazione hardware di un sistema, chiamata device tree.[2] Questo aiuta il sistema operativo a comprendere meglio la configurazione del computer host, facendo meno affidamento sulla configurazione dell'utente e sul polling dell'hardware. Ad esempio, Open Firmware è essenziale per identificare in modo affidabile i dispositivi I²C slave come i sensori di temperatura per il monitor di sistema,[3] mentre è noto che la soluzione alternativa di eseguire un sondaggio cieco del bus I²C, come deve essere fatto da un software come lm_sensors su hardware generico, in determinate circostanze provoca seri problemi hardware.[3] Open Firmware Forth Code può essere compilato in FCode, un bytecode indipendente dall'architettura dell'instruction set. Una scheda PCI può includere un programma, compilato su FCode, che funziona su qualsiasi sistema Open Firmware. In questo modo, può fornire diagnostica all'avvio, codice di configurazione e driver di dispositivo. FCode è anche molto compatto, tanto che un driver del disco può richiedere solo uno o due kB. Pertanto, molte delle stesse schede I/O possono essere utilizzate su sistemi Sun e Macintosh che utilizzano Open Firmware. FCode implementa ANS Forth e un sottoinsieme della libreria Open Firmware. Essendo basato su un linguaggio di programmazione interattivo, Open Firmware può essere utilizzato per testare e sviluppare in modo efficiente nuovo hardware. Consente di scrivere e testare i driver in modo interattivo. I driver video e mouse operativi sono l'unico prerequisito per un'interfaccia grafica adatta alla diagnostica dell'utente finale. Apple ha fornito un "sistema operativo" di questo tipo diagnostico in molti Power Macintosh. Sun ha inoltre distribuito una suite di strumenti diagnostici basata su FCode denominata OpenBoot Diagnostics (OBDiag) utilizzata dal supporto del servizio clienti e dai team di produzione dell'hardware.[4] Implementazioni e licenzeDiverse implementazioni commerciali di Open Firmware sono state rilasciate alla comunità Open Source dal 2006, tra cui Sun OpenBoot, Firmworks OpenFirmware e Codegen SmartFirmware. Il codice sorgente è disponibile dal progetto OpenBIOS. L'implementazione di Sun è disponibile con licenze BSD.[senza fonte] Note
Voci correlateCollegamenti esterni
|