请输入您要查询的百科知识:

 

词条 Open Firmware
释义

  1. Advantages

  2. Access

  3. See also

  4. References

  5. External links

{{Refimprove|date=July 2011}}

Open Firmware, or OpenBoot in Sun Microsystems parlance, is a standard defining the interfaces of a computer firmware system, formerly endorsed by the Institute of Electrical and Electronics Engineers (IEEE). It originated at Sun, and has been used by Sun, Apple, IBM, ARM[1] and most other non-x86 PCI chipset vendors. Open Firmware allows the system to load platform-independent drivers directly from the PCI card, improving compatibility.

Open Firmware may be accessed through its Forth language shell interface. It achieves essentially the same functionality as the later EFI standard initiated at Intel, with lower overhead {{Citation needed|date=June 2009}}.

Open Firmware is described by IEEE standard IEEE 1275-1994, which was not reaffirmed by the Open Firmware Working Group (OFWG) since 1998 and has therefore been officially withdrawn by IEEE.

Several commercial implementations of Open Firmware have been released to the Open Source community in 2006, including Sun OpenBoot, Firmworks OpenFirmware and Codegen SmartFirmware. The source code is available from the OpenBIOS project. Sun's implementation is available under a BSD license.[2]

Advantages

Open Firmware Forth Code may be compiled into FCode, a bytecode which is independent of computer architecture details such as the instruction set and memory hierarchy. A PCI card may include a program, compiled to FCode, which runs on any Open Firmware system. In this way, it can provide platform-independent boot-time diagnostics, configuration code, and device drivers. FCode is also very compact, so that a disk driver may require only one or two kilobytes. Therefore, many of the same I/O cards can be used on Sun systems and Macintoshes that used Open Firmware. FCode implements ANS Forth and a subset of the Open Firmware library.

Open Firmware furthermore defines a standard way to describe the hardware of a system. This helps the operating system to better understand its host computer, relying less on user configuration and hardware polling.

For example, Open Firmware is essential for reliably identifying slave I²C devices like temperature sensors for hardware monitoring,[3]{{rp|§5.1|q=5.1. Open Firmware and I²C}} whereas the alternative solution of performing a blind probe of the I²C bus, as has to be done by software like lm_sensors on generic hardware, is known to result in serious hardware issues under certain circumstances.{{r|sensors-mmath|p=§5.2|q=5.2. I²C bus scan through i2c_scan.c}}

Being based upon an interactive programming language, Open Firmware can be used to efficiently test and bring up new hardware. It allows drivers to be written and tested interactively. Operational video and mouse drivers are the only prerequisite for a graphical interface suitable for end-user diagnostics. Apple shipped such a diagnostic "operating system" in many Power Macintoshes. Sun also shipped an FCode-based diagnostic tool suite called OpenBoot Diagnostics (OBDiag) used by customer service support and hardware manufacturing teams[4]

Access

{{Howto|section|date=July 2011}}

On Sun SPARC systems, the Open Firmware interface is displayed on the console terminal before the bootstrapping of the system software. If a keyboard is connected, the main video display will be used as the console terminal and Open Firmware can be re-entered at any time by pressing {{keypress|Stop-A}} ({{keypress|L1-A}}) on the keyboard. If no keyboard is connected, then the first serial line on the system is usually used as the console and Open Firmware is re-entered by sending a "Break" on the serial line. While the system software is running, various Open Firmware settings can be read or written using the eeprom command.

On a PowerPC-based Macintosh, the Open Firmware interface can be accessed by pressing the keys {{keypress|Cmd|Option|O|F}} at startup ({{keypress|Win|Alt|O|F}} if using standard PC USB keyboard). Intel-based Macintoshes do not use Open Firmware; they use Extensible Firmware Interface, following Apple's transition to Intel processors. Also, early versions (before the PowerBook 3400) connect Open Firmware's input and output to the Modem port by default.{{Citation needed|date=July 2011}} This functionality is generally only used by developers or troubleshooting I.T. personnel; for common users, the Mac OS X operating system provides a high level graphical user interface to change commonly used Open Firmware settings. For instance, it is possible to specify the boot disk or partition without directly using the Open Firmware interface, but with some limitations (e.g. it is not possible to select boot from USB mass-storage devices, but Open Firmware allows iMac to boot using boot ud:,\\\\:tbxi command). Other Open Firmware settings can be changed using the nvram command while the system software is running.[5]

On Pegasos, the interface is accessed by pressing {{keypress|Esc}} at startup.

On IBM Power Systems, Open Firmware ("ok" prompt) can be accessed through the SMS Boot Menu. SMS Boot Menu can be accessed by pressing {{keypress|1}} or {{keypress|F1}} during the boot sequence, after hardware checking, and just before the OS boot.

On the OLPC XO-1 laptop, Open Firmware access requires a developer key, that can be obtained after registration with OLPC. After installing the key, upon each power-on, the boot countdown can be interrupted with {{keypress|Esc}} (the upper left key) to get to the Forth prompt.

See also

{{Portal|Free and open-source software}}
  • Advanced Configuration and Power Interface
  • ARMboot
  • BIOS
  • Libreboot
  • Coreboot
  • Extensible Firmware Interface
  • Input/output base address
  • OpenBIOS
  • Power-on self-test
  • Unified Extensible Firmware Interface

References

1. ^Building Open Firmware for ARM
2. ^{{cite web|title=OpenBIOS|url=http://www.openfirmware.info/Welcome_to_OpenBIOS|accessdate=10 May 2012}}
3. ^{{cite thesis|degree= MMath|author= Constantine A. Murenin |date= 2010-05-21|section= 5.1. Open Firmware and I²C|title= OpenBSD Hardware Sensors — Environmental Monitoring and Fan Control.|location= University of Waterloo |publisher= UWSpace|url = http://cnst.su/MMathCS |hdl = 10012/5234|id = Document ID: ab71498b6b1a60ff817b29d56997a418.}}
4. ^https://docs.oracle.com/cd/E19088-01/250.srvr/805-3389-11/6j37qsqsj/index.html
5. ^Apple's Transition from Open Firmware to Extensible Firmware Interface, mactech, 2007.

External links

  • [https://web.archive.org/web/20110709055536/http://playground.sun.com/1275/ OPEN FIRMWARE HOME PAGE] (via [https://web.archive.org Internet Archive])
  • Sun's SPARC OBP documentation
  • The last IEEE 1275 text
  • [https://www.openbios.org/Open_Firmware Firmworks OpenFirmware source code]
  • [https://www.openbios.org/SmartFirmware Codegen SmartFirmware source code]
  • [https://web.archive.org/web/20110806055045/http://www.ibm.com/developerworks/wikis/display/WikiPtype/Boot+Process+on+POWER Boot Process on IBM POWER] (via [https://web.archive.org Internet Archive])
  • OFW FAQ on OLPC Wiki
  • [https://web.archive.org/web/20120626021529/http://wiki.auroralinux.net/wiki/OBP Aurora SPARC Linux OBP reference guide] (via [https://web.archive.org Internet Archive])
  • Quick Reference
  • [https://web.archive.org/web/20060813131136/http://www.tinyboot.com/tof.htm TinyBoot aka Tiny Open Firmware: an embeddable OpenFirmware-like system for small CPUs] (via [https://web.archive.org Internet Archive])
{{IEEE standards}}{{use dmy dates|date=August 2012}}

8 : Firmware|Sun Microsystems software|IEEE standards|Macintosh firmware|BIOS|Open-source hardware|MacOS|Forth programming language family

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/11/11 0:38:00