Open Firmware: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Phas (discussione | contributi)
Nessun oggetto della modifica
m Collegamenti esterni: {{portale|informatica}}
 
(38 versioni intermedie di 30 utenti non mostrate)
Riga 1:
[[File:OpenBoot_on_UltraSparc5.png|miniatura| Schermata di OpenBoot]]
'''Open Firmware''' è una tecnologia [[hardware]] per sviluppare [[firmware]] indipendente dal sistema operativo ([[software]] caricato all'accensione del computer prima del [[sistema operativo]]) sviluppata da [[Sun Microsystems]]. È utilizzata nei moderni computer [[Apple Macintosh]], nelle workstation SPARC e nei server della [[Sun Microsystems]], nei computer [[PegasosPPC]] e in altri sistemi.
'''Open Firmware''' è uno standard che definisce le interfacce di un [[firmware]] per computer, precedentemente approvato dall'[[Institute of Electrical and Electronics Engineers]]. {{Senza fonte|Nasce alla [[Sun Microsystems]] dove era conosciuto come '''OpenBoot''' ed è stato utilizzato da diversi fornitori tra cui [[Sun Microsystems|Sun]], [[Apple]], [[IBM]] e [[ARM Holdings|ARM]].}}
 
Consente a un sistema di caricare dei [[driver]] indipendentemente dalla [[Piattaforma (informatica)|piattaforma]] direttamente da un dispositivo [[Peripheral Component Interconnect|PCI]], migliorandone la compatibilità.
È accessibile utilizzando un'interfaccia di tipo [[shell]] basata sul [[Forth]], un potente linguaggio ad altro livello, descritto nel documento dell'[[IEEE]] standard numerato IEEE-1275. Ad esempio è possibile programmare il bios in modo da risolvere il problema della [[Torre di Hanui]].
 
È possibile accedervi grazie alla sua [[interfaccia a riga di comando]], che utilizza il linguaggio di programmazione [[Forth (linguaggio)|Forth]].
== Vantaggi dell Open firmware ==
 
== Storia ==
Poichè il codice Forth viene compilato in Fcode (come un [[bytecode]] e non nel [[linguaggio macchina]] di una particolare [[Architettura_%28hardware%29|architettura]], il codice dell'Open firmware include una I/O card che può essere eseguita da ogni sistema che usa l'Open firmware. In questo modo, un I/O card fornisce [[diagnostica]] durante il boot, codice di configurazione, e [[device driver]] che possono essere usati da qualsiasi sistema, permettendo a molte delle stesse I/O card di essere usate su sistemi Sun e Macintosh.
È 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.<ref>{{Cita libro|titolo=IEEE Standard for Boot (Initialization Configuration) Firmware: Core Requirements and Practices|url=https://www.openfirmware.info/data/docs/of1275.pdf|accesso=17 gennaio 2024|data=28 ottobre 1994|lingua=en|pp=1-262|ISBN=978-0-7381-1194-0|DOI=10.1109/IEEESTD.1994.89427}}</ref>
 
== Caratteristiche ==
==Collegamenti esterni ==
L'Open Firmware definisce un modo standard per descrivere la configurazione hardware di un sistema, chiamata ''device tree''.<ref>{{Cita libro|nome=Jim|cognome=Mauro|nome2=Richard|cognome2=McDougall|titolo=Solaris Internals: Core Kernel Components|url=https://github.com/tpn/pdfs/blob/master/Solaris%20Internals%20-%20Core%20Kernel%20Architecture.pdf|accesso=17 gennaio 2024|editore=Sun Microsystems|lingua=en|p=107|ISBN=0-13-022496-0}}</ref> Questo aiuta il sistema operativo a comprendere meglio la configurazione del computer host, facendo meno affidamento sulla configurazione dell'utente e sul [[Polling (informatica)|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]],<ref name=":0">{{Cita pubblicazione|nome=Constantine A.|cognome=Murenin|data=21 maggio 2010|titolo=OpenBSD Hardware Sensors – Environmental Monitoring and Fan Control|rivista=[[Università di Waterloo]]|editore=UWSpace|lingua=en|accesso=17 gennaio 2024|id=ab71498b6b1a60ff817b29d56997a418|url=http://cnst.su/MMathCS}}</ref> 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.<ref name=":0" />
* http://playground.sun.com/1275/mejohnson/ (In Inglese)
* http://www.firmworks.com (In Inglese)
 
Open Firmware Forth Code può essere compilato in FCode, un [[bytecode]] indipendente dall'architettura dell'[[instruction set]]. Una scheda [[Peripheral Component Interconnect|PCI]] può includere un programma, compilato su FCode, che funziona su qualsiasi sistema Open Firmware. In questo modo, può fornire [[Diagnosi|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 [[Forth (linguaggio)|ANS Forth]] e un sottoinsieme della libreria Open Firmware.
[[Categoria:Mac OS X]]
[[Categoria:Hardware Apple]]
 
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.<ref>{{Cita web|url=https://docs.oracle.com/cd/E19088-01/250.srvr/805-3389-11/6j37qsqsj/index.html|titolo=About OpenBoot Diagnostics (OBDiag)|sito=[[Oracle Corporation]]|lingua=en|accesso=17 gennaio 2024|urlarchivio=https://web.archive.org/web/20210307215853/https://docs.oracle.com/cd/E19088-01/250.srvr/805-3389-11/6j37qsqsj/index.html}}</ref>
[[en:Open Firmware]]
 
[[fr:Open Firmware]]
== Implementazioni e licenze ==
[[ja:Open Firmware]]
Diverse 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]]. {{Senza fonte|L'implementazione di Sun è disponibile con [[licenze BSD]].}}
 
== Note ==
<references />
 
== Voci correlate ==
* [[Coreboot]]
* [[Power-on self-test]]
* [[PowerPC Reference Platform]]
* [[UEFI]]
 
== Collegamenti esterni ==
* {{Collegamenti esterni}}
 
{{Norme IEEE}}
{{portale|informatica}}
[[Categoria:Hardware libero]]
[[Categoria:Mac OS XBIOS]]
[[Categoria:Standard IEEE]]
[[Categoria:Software Sun]]
[[enCategoria:Open Firmware]]
[[Categoria:Tecnologie di macOS]]
[[Categoria:Hardware Apple]]