Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 History  





2 Features  





3 Implementations and licensing  





4 See also  





5 References  





6 External links  














Open Firmware






Català
Čeština
Deutsch
Español
Français

Italiano

Polski
Português
Русский
 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 

(Redirected from OpenBoot)

This article needs additional citations for verification. Please help improve this articlebyadding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Open Firmware" – news · newspapers · books · scholar · JSTOR
(July 2011) (Learn how and when to remove this message)
OpenBoot screenshot

Open Firmware 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 Microsystems where it was known as OpenBoot, and has been used by multiple vendors including Sun, Apple, IBM and ARM.[citation needed]

Open Firmware allows a system to load platform-independent drivers directly from a PCI device, improving compatibility.

Open Firmware may be accessed through its command line interface, which uses the Forth programming language.

History[edit]

Open Firmware was described by IEEE standard as IEEE 1275-1994. This standard was not reaffirmed by the Open Firmware Working Group (OFWG) since 1998, and was therefore officially withdrawn by IEEE in May 2005.[1]

Features[edit]

Open Firmware defines a standard way to describe the hardware configuration of a system, called the device tree.[2] This helps the operating system to better understand the configuration of the host computer, relying less on user configuration and hardware polling. For example, Open Firmware is essential for reliably identifying slave I2C devices like temperature sensors for hardware monitoring,[3]: §5.1 whereas the alternative solution of performing a blind probe of the I2C 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.[3]: §5.2

Open Firmware Forth Code may be compiled into FCode, a bytecode which is independent of instruction set architecture. A PCI card may include a program, compiled to FCode, which runs on any Open Firmware system. In this way, it can provide 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.

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]

Implementations and licensing[edit]

Several commercial implementations of Open Firmware have been released to the Open Source community since 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.[citation needed]

See also[edit]

References[edit]

  1. ^ IEEE Standard for Boot (Initialization Configuration) Firmware: Core Requirements and Practices. 28 October 1994. pp. 1–262. doi:10.1109/IEEESTD.1994.89427. ISBN 978-0-7381-1194-0.
  • ^ Mauro, Jim (2001). Solaris Internals: Core Kernel Components. Prentice-Hall Professional. p. 107. ISBN 9780130224965.
  • ^ a b Constantine A. Murenin (21 May 2010). "5.1. Open Firmware and I2C". OpenBSD Hardware Sensors – Environmental Monitoring and Fan Control (MMath thesis). University of Waterloo: UWSpace. hdl:10012/5234. Document ID: ab71498b6b1a60ff817b29d56997a418.
  • ^ "Sun Enterprise 250 Server Owner's Guide > Chapter 12 Diagnostics and Troubleshooting > About OpenBoot Diagnostics (OBDiag)". Archived from the original on 7 March 2021.
  • External links[edit]

    Current

  • 693
  • 730
  • 754
  • 854
  • 828
  • 829
  • 896
  • 1003
  • 1014
  • 1016
  • 1076
  • 1149.1
  • 1154
  • 1164
  • 1275
  • 1278
  • 1284
  • 1355
  • 1394
  • 1451
  • 1497
  • 1516
  • 1541
  • 1547
  • 1584
  • 1588
  • 1596
  • 1603
  • 1613
  • 1619
  • 1666
  • 1667
  • 1675
  • 1685
  • 1722
  • 1733
  • 1800
  • 1801
  • 1815
  • 1849
  • 1850
  • 1855
  • 1900
  • 1901
  • 1902
  • 1904
  • 1905
  • 2030
  • 2050
  • 11073
  • 12207
  • 14764
  • 16085
  • 16326
  • 29148
  • 42010
  • 802 series

    802

  • .4
  • .5
  • .6
  • .7
  • .8
  • .9
  • .10
  • .12
  • .14
  • .16
  • .17
  • .18
  • .20
  • .21
  • .22
  • .24
  • 802.1

  • p
  • Q
  • Qav
  • Qat
  • Qay
  • w
  • X
  • ab
  • ad
  • AE
  • ag
  • ah
  • ak
  • aq
  • AS
  • AX (LACP)
  • az
  • BA
  • 802.3
    (Ethernet)

  • a
  • b
  • d
  • e
  • i
  • j
  • u
  • x
  • y
  • z
  • ab
  • ac
  • ad
  • ae
  • af
  • ah
  • ak
  • an
  • aq
  • at
  • au
  • av
  • az
  • ba
  • bt
  • bu
  • by
  • bz
  • ca
  • cb
  • cc
  • cd
  • ce
  • cg
  • ch
  • ck
  • cm
  • cn
  • cp
  • cq
  • cr
  • cs
  • ct
  • cu
  • cv
  • cw
  • cx
  • cy
  • cz
  • da
  • db
  • dd
  • de
  • df
  • 802.11
    (Wi-Fi)

  • legacy mode
  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • j
  • k
  • n (Wi-Fi 4)
  • p
  • r
  • s
  • u
  • v
  • w
  • y
  • z
  • aa
  • ac (Wi-Fi 5)
  • ad (WiGig)
  • ae
  • af
  • ah
  • ai
  • aj
  • ak
  • aq
  • ax (Wi-Fi 6)
  • ay
  • az
  • ba
  • bb
  • bc
  • bd
  • be (Wi-Fi 7)
  • bf
  • bh
  • bi
  • bk
  • bn (Wi-Fi 8)
  • 802.15

  • .2
  • .3
  • .4 (Zigbee)
  • .4a
  • .4b
  • .4c
  • .4d
  • .4e
  • .4f
  • .4g
  • .4z
  • .5
  • .6
  • .7
  • Proposed

  • P1619
  • P1699
  • P1823
  • P1906.1
  • Superseded

  • 830
  • 1219
  • 1233
  • 1362
  • 1364
  • 1471
  • See also
    IEEE Standards Association
    Category:IEEE standards

    Processes

  • NT
  • Linux
  • Booting firmware

    Types

  • Open-source firmware
  • Custom firmware
  • Interfaces

  • BIOS
  • Open Firmware
  • ACPI
  • MultiProcessor Specification
  • APM
  • Legacy Plug and Play
  • AlphaBIOS
  • SRM
  • SFI
  • Implementations

  • Award BIOS
  • American Megatrends
  • InsydeH2O
  • Phoenix SecureCore UEFI
  • TianoCore EDK II
  • OpenBIOS
  • Coreboot
  • Libreboot
  • LinuxBoot
  • Kickstart
  • Run-Time Abstraction Services
  • Hybrid firmware bootloader

  • Das U-Boot
  • ARCS
  • Bootloaders

  • Comparison of bootloaders
  • Implementations

  • Barebox
  • BootManager
  • BootX (Apple)
  • BootX (Linux)
  • GNU GRUB
  • iBoot
  • systemd-boot
  • loadlin
  • NTLDR
  • OpeniBoot
  • RedBoot
  • rEFInd
  • rEFIt
  • SYSLINUX
  • Windows Boot Manager
  • xOSL
  • Yaboot
  • Plop Boot Manager
  • MILO
  • Partition layouts

  • Master boot record
  • Apple Partition Map
  • Partitions

  • BIOS boot partition
  • /boot/
  • Utilities

    Software

  • fwupd
  • UEFITool
  • Odin
  • Hardware

  • Raspberry Pi
  • ft2232
  • Network boot

  • iPXE
  • NetBoot
  • Remote Initial Program Load
  • Wake-on-LAN
  • ROM variants

  • PROM
  • EPROM
  • EEPROM
  • Related

  • ROM hacking
  • ROM image
  • Execute in place
  • Devicetree
  • Fastboot
  • Instant-on
  • Power-on self-test
  • EDL mode

  • Retrieved from "https://en.wikipedia.org/w/index.php?title=Open_Firmware&oldid=1175391280"

    Categories: 
    Firmware
    Sun Microsystems software
    IEEE standards
    Macintosh firmware
    BIOS
    Open-source hardware
    MacOS
    Forth programming language family
    Hidden categories: 
    Articles with short description
    Short description is different from Wikidata
    Articles needing additional references from July 2011
    All articles needing additional references
    All articles with unsourced statements
    Articles with unsourced statements from September 2023
    Use dmy dates from September 2021
     



    This page was last edited on 14 September 2023, at 18:32 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki