Ugrás a tartalomhoz

Open Firmware

Ellenőrzött
A Wikipédiából, a szabad enciklopédiából
Open Firmware
OpenBoot egy UltraSparc gépen
OpenBoot egy UltraSparc gépen

FejlesztőSun Microsystems
Első kiadás1994. október 28.[1]
Programozási nyelvForth
Állapotvisszavont[1]
KategóriaBoot firmware
LicencMIT-licenc
Kódtárhttps://github.com/MitchBradley/openfirmware
Az Open Firmware weboldala

Az Open Firmware (más néven: OpenBIOS) a Sun Microsystems által kifejlesztett hardver-független firmware, illetve rendszerindítási mechanizmus, melyet az Institute of Electrical and Electronics Engineers (IEEE) 1994 és 2000 között szabványként ismert el IEEE 1275-1994 számon.[1] A Sun mellett az Apple[2] és az IBM[3] alkalmazta termékeiben.[4]

Történet

[szerkesztés]

Az Open Firmware fejlesztését Mitch Bradley, a Sun szoftverfejlesztője kezdte meg 1987-ben.[4] A fejlesztés koordinációját előbb Bradley új cége, a FirmWorks, majd később az Open Firmware Working Group (OFWG) munkacsoport folytatta az ő vezetésével.[5]

Az Institute of Electrical and Electronics Engineers nemzetközi szabványügyi szervezet (IEEE) C/MSC (mikroprocesszor szabványügyi) bizottsága 1994 márciusában IEEE 1275-1994 számon befogadta az Open Firmware szabványosítási dokumentációját. Az Amerikai Nemzeti Szabványügyi Intézet (ANSI) ugyanez év augusztusában fogadta el, majd a publikáció 1994. október 28-án történt meg.[1] A szabványra az IEEE általános szabályai szerint legkésőbb 5-évente kellett volna újramegerősítést kérni, de az OFGW munkacsoport ezt a hosszadalmas eljárást nem kívánta végigvinni,[5] így a szabvány előbb lejárt, majd 2000 május elején az IEEE hivatalosan is visszavonta.[1]

A Sun a technológiát a SPARCstation, az Apple a PowerPC-alapú Macintosh modelljeiben, az IBM pedig a POWER-alapú szervereiben alkalmazta.[4]

Jellemzők

[szerkesztés]

Az Open Firmware lehetővé teszi a számítógépes rendszer számára hardvereszközök, perifériák platformfüggetlen (gyártó-, buszrendszer-, utasításkészlet-, operációs rendszer független) eszközmeghajtóinak közvetlen betöltését, ezzel a kompatibilitás javítását. A folyamat még az operációs rendszer betöltése előtt zajlik le és hardver-azonosítást, gyorstesztelést és automatikus beállításokat (autoconfig) foglal magában.[6]

Az Open Firmware ROM-ba égetve kerül beépítésre a rendszerbe és programozható felhasználói interfésszel rendelkezik, mely parancssoros felhasználói felületen (CLI) keresztül érhető el és Forth utasításláncok kiadását teszi lehetővé. Az ANS-FORTH szabványnak megfelelő Forth kódban megírt programkód utasításkészlet-független bájtkóddá (FCode) fordítható. Egy PCI vezérlőkártya szintén tartalmazhat, előre FCode-ba fordított programot, melyet az Open Firmware futtatni képes. Az FCode mérete kompakt (egy driver csak pár kilobájt, így több ugyanolyan I/O kártya kezelése is könnyen lehetséges.[6]

Az eszköz-struktúra ás -beállítások szabványos formája az "eszköz-fa" (device tree), mely magában foglalja a rendszerhez csatlakoztatott összes hardvereszközt, illetve azok tulajdonságait (property list).[6][7] A rendszer így kevésbé támaszkodik a felhasználó általi beállításokra és másodlagos eszközök, mint például I2C buszon kommunikáló alaplapi hőérzékelők, detektálását is megbízhatóan végrehajtja,[8]:§5.1 szemben más rendszerekkel, ahol csak szoftveres vakpróbával lehet eredményt érni, mely más rendszerelemek hibás működésének vagy akár sérülésének kockázatát hordozza bizonyos körülmények között.[8]:§5.2

Az Open Firmware különösen alkalmas hardverdiagnosztikára, legyen szó akár teljesen új hardver teszteléséről. Meghajtóprogram írását és interaktív tesztelését is lehetővé teszi. Az Apple és a Sun is szállított számítógépmodelljeihez FCode-alapú diagnosztikai eszközöket, utóbbi OpenBoot Diagnostics (OBDiag) néven, melyet az ügyfélszolgálat és a gyári fejlesztők is használtak.[9]

Alkalmazások

[szerkesztés]

Az Open Firmware több kereskedelmi megvalósítása is ismert, így a Sun OpenBoot, a Firmworks, illetve a Genesi OpenFirmware, a CodeGen SmartFirmware vagy az IBM-től a Slimline Open Firmware. A forráskód ma már szabadon elérhető az OpenBIOS projekt keretében.[10]

Fogadtatás

[szerkesztés]

Jerry Gipper, a Motorola Computer Group akkori marketing igazgatója a következőket nyilatkozta az Open Firmware-ről: "A FirmWorks az iparág bajnoka és az Open Firmware vezető szolgáltatója; ők fejlesztették ki a technológiát, ők vezetik az IEEE 1275 szabvány fejlesztését, technológiájuk pedig bizonyított a piacon."[11]

Jegyzetek

[szerkesztés]
  1. 1 2 3 4 5 "IEEE Standard for Boot (Initialization Configuration) Firmware: Core Requirements and Practices". standards.ieee.org (angol nyelven). Hozzáférés: 2025. február 23..
  2. "Apple Wiki - Open Firmware" (angol nyelven). Hozzáférés: 2025. február 23..
  3. "Network boot from open firmware prompt - IBM BladeCenter, BladeCenter H, BladeCenter JS21" (angol nyelven). Hozzáférés: 2025. február 23..
  4. 1 2 3 "Mitch Bradley shows and explains Open Firmware" (angol nyelven). 2009. június 2. Hozzáférés: 2025. február 23..
  5. 1 2 "openfirmware". GitHub (angol nyelven). 2006. november 12. Hozzáférés: 2025. február 23..
  6. 1 2 3 "IEEE Standard for Boot (Initialization Configuration) Firmware: Core Requirements and Practices". archive.org (angol nyelven). Hozzáférés: 2025. február 23..
  7. Mauro, Jim (2001). Solaris Internals: Core Kernel Components (angol nyelven). Prentice-Hall Professional. 107. o. ISBN 9780130224965. Hozzáférés: 2025. február 25..
  8. 1 2 Constantine A. Murenin (2010. május 21.). "5.1. Open Firmware and I2C". OpenBSD Hardware Sensors – Environmental Monitoring and Fan Control (MMath thesis) (angol nyelven). University of Waterloo: UWSpace. hdl:10012/5234. Document ID: ab71498b6b1a60ff817b29d56997a418. Hozzáférés: 2025. február 25..
  9. "Sun Enterprise 250 Server Owner's Guide / About OpenBoot Diagnostics (OBDiag)" (angol nyelven). Hozzáférés: 2025. február 25..
  10. "openbios". GitHub (angol nyelven). Hozzáférés: 2025. február 25..
  11. "The Open Firmware Source" (angol nyelven). Hozzáférés: 2025. február 23..

További információk

[szerkesztés]