The BIOS [/ baɪ.oʊs / ] (from English "basic input / output system ") is the firmware on x86-based PCs. It is stored in a non -volatile memory on the mother board of a computer and is executed immediately after the power on. Task of the BIOS is to make inter alia, the PC first functional and initiate the start of an operating system in the port.
In volatile parlance the term BIOS is now sometimes used with the meaning BIOS settings. The agreement with the ancient Greek word βίος ( after the Latin alphabet bios to German life ) is an allusion to the fact that a computer with this software named as quasi lease of life.
- 3.1 BIOS for CP / M computers
- 3.2 BIOS in MS -DOS compatible computers
- 3.3 XBIOS / TOS Atari ST
- 3.4 Kickstart the Commodore Amiga
- 3.5 Open Firmware
- 3.6 Extensible Firmware Interface
- 3.7 Simple Firmware Interface
- 5.1 Standard of the interaction of booting from the BIOS, initial program load and BIOS feature additions
Task of the BIOS
A BIOS solves two problems that occur during a cold start of a PC:
- For one, it solves by the so-called " bootstrapping " a classic chicken-and- egg problem: software is typically stored on a disk, which must first be read at startup in the main memory of the computer. But the CPU in turn requires software to read the disk. Earlier computers and computer systems solved this problem in that it basically staggered initially the CPU after switching on the computer in the pause mode. Before the computer could be started, had to be loaded into the main memory manually or with the help of special peripherals a minimal software ( the boot loader ). Frequently loading the boot loader when starting the computer was not necessary, however, because in the 1960s and early 1970s, widespread core memory - in contrast to the commonly used today semiconductor memory - its contents when you turn off not lost ( persistence ) and the programs in main memory, therefore mostly only had to re- start or even could be continued. The loader is in today's PCs part of the BIOS that is stored in a special memory chip, EPROM, or on newer models usually in a flash memory, which retains memory even without power supply each obtained. Both are suitable for completely independent of a power supply and for the firmware of the portable devices. Today to eliminate manual entry of a loader.
- Secondly, different hardware each require a special control software (driver software) and associated configuration. Previously, you had an operating system on each variant of each machine type are specifically tailored to be run on it. By outsourcing this special control software in the BIOS of each computer it was possible to have the same operating system software running on different computers. Thus, the BIOS looks after recent speech as a Hardware Abstraction Layer ( HAL). However, it can be observed that modern operating systems for performance reasons and because of the higher flexibility about going back to using its own driver software for the hardware and use the BIOS only in the boot phase.
BIOS on IBM - compatible PC
With modern hardware, the BIOS has acquired new functions over time. Not all of the points listed below have already been performed by the original BIOS on the first IBM PC. The development of the hardware has over the years (as of 2010 is the BIOS concept already at least 35 years old) led to a series of iterative, incompatible additions that increasingly have the character of " messing about " and at 64 -bit systems to their limits. Therefore, it was in the form of Extensible Firmware Interface (EFI, or UEFI ) developed a BIOS successor.
Essentially, the BIOS before the operating system is started, the following functions:
- Power On Self Test ( POST)
- Hardware initialization
An important part of the hardware initialization of a plug- and-play BIOS is the configuration and verification of built-in card.
These are in a special memory area of the BIOS, the range Extended System Configuration Data ( ESCD short ), recorded information about state and configuration of ISA, PCI and AGP cards and the appropriate allocation of resources. The information in ESCD area are compared during the boot process with the actual state of the system and updated as changes if necessary. The operating system uses the information in ESCD area and can save changes to the plug- and-play resource allocation there to prevent changes by the BIOS on the next boot.
- Prompted to enter a BIOS password ( if configured)
- Prompt for a hard disk password ( if configured)
- Representation of a start-up screen
- Call option, a BIOS configuration menu (" BIOS Setup" )
- Calling BIOS extensions of individual subsystems, which are housed either on cards or are integrated directly onto the motherboard, such as: graphics chip
- Network chip
- SCSI controller
- RAID controller
The program then takes over in the loaded boot sector control of the computer. Most loads and the bootloader contained boot a previously installed on the appropriate disk operating system either immediately or provides a menu for selecting an operating system in ( boot manager ). In traditional running in real mode operating systems (e.g., DOS), the BIOS will also be used in the continued operation. It takes over for the operating system to communicate with various hardware, such as:
- Serial and parallel interfaces
- System Speaker
- Graphics Card
- Floppy drives
- Hard disk drives
Other modern types of hardware are not serviced by the BIOS. To control such as a mouse, a special hardware driver is needed under DOS.
Newer, driver-based operating systems such as Linux or Microsoft Windows does not use this BIOS functions. Load for each type of hardware a special driver. However, they must at the beginning of its boot process briefly to rely on the BIOS functions to control the hard drives to load your hard disk driver.
To enter the setup program of the BIOS, a specific key or key combination must be pressed when turning on the computer. On a few motherboards a certain jumper must be set.
The settings are stored in a CMOS memory, which is supplied on the motherboard battery without mains electricity with electricity. Often this memory is combined with the real-time clock of the system, since these must always be supplied with power. If difficulties arise, the BIOS usually offers the possibility to set the default settings of the computer or BIOS manufacturer. When it is no longer possible to get into the setup program ( for example because the computer does not boot ), the settings can usually via a jumper on the motherboard Reset ( the power supply must at all newer motherboards it will be switched off completely ). If this is not possible, the CMOS memory can be erased by removing the battery. But the latter requires some time until the capacitors have discharged.
The BIOS is the second level of security that can prevent unauthorized access to a computer. Previously, there are significantly more effective physical security with locks or the like. In the BIOS Setup, a password prompt for starting the computer are set up. This represents only a marginal backup of the system, because the settings can be easily levered more or less by manipulation on the motherboard with physical access to the computer. In addition, this fuse only acts on the main board, on which the BIOS ROM is containing. If this replaced, or installed the hard drive (s ) of the system to another computer that can be accessed easily to all data. In addition, manufacturers usually have configured a permanent ( recovery, master's or supervisor ) password to restore access, if the user has forgotten his or her own password.
Updating the BIOS
For old motherboards ( with 286 to 486 processor ) in the BIOS " BIOS SHADOW MEMORY" option is available. In this case, the BIOS is in its own procedure in the access faster RAM copies (temporary shadow copy until you turn off the computer). Since then (as of later 486 / Pentium1 ) the vast majority of the BIOS is stored packed and thus satisfies a more favorable BIOS chip, this option is no longer available, as the BIOS has to be unpacked definitely into RAM.
On modern motherboards, the BIOS is in a rewritable memory (more precisely, EEPROM, usually flash memory). Therefore, it can without removing this chip are replaced by newer versions ( "flashing" ). Since a computer without a complete BIOS but this is not functional, represents this process it is always represent a certain risk interrupted, for example due to a power failure, must the chip on which the BIOS is stored, are normally replaced. As an alternative, the reprogramming of the chip is offered on the Internet by various institutions. Even soldered flash memory provide for the expert only a minor problem dar. on new boards are increasingly being used so-called serial Flash memory, which make it possible in the event of an error in part, to be re-programmed via SPI bus on the board.
Developed with time American Megatrends, Award Software, Phoenix and other manufacturers " boot block" / restore your BIOS, which are then normally no longer overwritten when the flash process. Suggested the flash process fails, start the " boot block" / recovery BIOS and allows it to boot from floppy. For some BIOS versions may even have a special Wiederherstellungs-CD/-Diskette be created that automatically recovers BIOS even with a defective BIOS by setting a jumper. Absolutely no user input and graphical output are not necessary, since they usually do not work anyway with a defective BIOS.
Some motherboards have a so-called DualBIOS. In case of failure, the second (still intact ) BIOS take over booting and the change can be undone. This can be a lifeline when flashing the BIOS does not work the newly played BIOS version. Furthermore, can be loaded with a different DualBIOS BIOS settings.
Since upgrading a Flash BIOS already under a running Windows is possible today, this will open up new routes into for virus infestation. For example, if a rootkit would be installed in this way, it might be more efficient foreclose again much against discovery and deletion. In addition, an operating system crash during the flash process may make the PC unbootable ( see above).
A selection of manufacturers of BIOSes for IBM-compatible PCs:
- American Megatrends
- Phoenix / Award - Award and Phoenix merged in 1998. Award will be supplied by the company as a desktop product. The Phoenix range is, however, used in servers and laptops.
- MR BIOS
- ATI Technologies
- Insyde H2O BIOS
BIOS for CP / M computers
The concept and the term " BIOS" (as the Basic Input / Output System ) Go on Gary Kildall, the inventor and developer of the operating system CP / M (Control Program for Microcomputers ) and became in 1975 the use of it in this sense. CP / M had before the introduction of the IBM PC a comparable Marktdurchdringungsgrad under the then mini-computers, as later PC DOS or MS -DOS on IBM-compatible PCs. However, since before the establishment of IBM compatible PCs, there was no applicable on the manufacturer boundaries hardware standard and each manufacturer of minicomputers approach pursued completely different concepts, it was necessary to the hardware specific parts of the operating system for each system specially adapted.
Was it initially to a mental breakdown, the hardware- specific parts were also in the architecture of the system in isolation during development of CP / M 1.3 and 1.4 ( 1977) by the hardware- independent parts. Suggestions for a development in this direction also go to Glenn Ewing, who adapted the CP / M BIOS for IMSAI to the IMSAI 8080, back. Digital Research's CP / M was from release 1.4 of two superposed layers, the hardware- specific BIOS and building upon it, but completely hardware independent BDOS ( Basic Disk Operating System). The applications took advantage of system calls that put them BDOS available, and to perform the various tasks called the BDOS down the hardware-specific routines in the BIOS to, which took over the hardware control. In this way, the applications of the system limits remained away portable. In order to offer CP / M for a new computer system, the respective manufacturers could license a template source code of the BIOS from Digital Research and customize it to your needs. The BDOS was usually delivered as an object file and match dazugelinkt. The ROM itself is usually found only a very rudimentary so-called monitor and bootloader through which the generated CP / M image of a medium such as a floppy disk or hard drive could be loaded and run in the memory. In this way, CP / M was adjusted to more than three thousand different systems and offered in each appropriate adaptations of the hardware manufacturers. Some CP / M derivatives such as MP / M (Multi -tasking Program for Microcomputers ), Concurrent CP / M 2.0-3.1 ( CCP / M), Concurrent DOS 3.2-6.2 ( CDOS ), DOS Plus 1.2-2.1, FlexOS, multi-user DOS 5.0 7.xx ( Mdos ), System Manager 7 and REAL/32 7.xx also contain a XIOS (Extended input Output system).
BIOS in MS -DOS compatible computers
The jointly developed by Microsoft and IBM operating system MS- DOS or PC DOS originally leaned heavily on the model of CP / M on, so the division is also found here in a hardware- specific part, called the DOS BIOS, and in the hardware stand-alone DOS kernel. Unlike CP / M, however, the two parts were available in separate files that were called MS -DOS IO.SYS and MSDOS.SYS, with PC DOS, however IBMBIO.COM and IBMDOS.COM. The MS -DOS version with a modified IBM PC DOS was PC DOS BIOS, other MS -DOS OEM versions, however, were - quite similar to CP / M - also for dozens of non- IBM-compatible x86 systems before, during where the DOS BIOS had to be adapted only to the particular target platform.
Even with the PC - DOS-compatible single-user operating system line DR DOS, which was spun off in early 1988 by Digital Research's CP / M derivative Concurrent DOS 6.0 by the system its multitasking capability, robbed and the XIOS by an IBM -compatible DOS BIOS has been replaced, there is the same division into DOS BIOS ( DRBIOS.SYS or IBMBIO.COM ) and those referred to today BDOS kernel ( DRBDOS.SYS or IBMDOS.COM ). Was it initially when BDOS 6.0 of DR DOS 3:31 still essentially a CP / M -like kernel with darübergestülptem DOS emulator PCMODE, the internal functioning over time became increasingly - and finally from BDOS 7.0 - also internally to DOS standards adapted. This also applies to PalmDOS 1, Novell DOS 7, Caldera DR-DOS and OpenDOS 7:01 7:02 .
The DOS - BIOS of IBM-compatible DOS issues attacked exclusively via the built- in ROM of the computer ROM BIOS or system BIOS to the hardware. This allowed smaller differences in hardware are already encapsulated at the level of system BIOSes, so no change to the DOS BIOS was more necessary in such cases. With the proliferation of applications that are accessed by the hardware directly to the operating system ( and consequently with the IBM -compatible clones), adjustments to the DOS - BIOS have been over the years increasingly rare, necessary so that MS- DOS later was offered only in a generic version, which treated some special cases and as walked on most IBM - compatible computers.
The ROM - BIOS (and possibly present in ROM parts of the operating system ) was labeled in Digital Research terminology sometimes called ROS (Resident Operating System).
XBIOS / TOS Atari ST
When Atari ST was the entire operating system TOS, including the originally developed by Digital Research GEM graphical user interface, housed in the ROM and ready almost directly after switching on. When BIOS the lowest layer of the operating system has been designated, recognizable for the programmer as a collection memory-resident functions. Overlying layers ( also recognizable as such collections ) were:
- The GEMDOS (GEM Disk Operating System)
- The VDI ( Virtual Device Interface )
- The AES ( Application Environment Services)
The XBIOS (Extended Basic Input / Output System) was not a separate layer, but was parallel to the BIOS on the same layer, some functions of the XBIOS were located closer to the hardware.
Kickstart the Commodore Amiga
The Commodore Amiga computers need the so-called Kickstart as firmware. It performs all the functions of BIOS and also contains also the kernel ( exec ) of the AmigaOS. The first models of the Amiga 1000 still need to be started by bootstrap diskette with the kickstart versions 1.0 to 1.3 after switching on (cold start). The kick start is anticipated in the WOM, a special area of RAM, stored and protected against overwriting. After a reset (warm start) this remains in the memory and does not need to be reloaded. This circumstance has the advantage that can be quickly and easily updated to a newer version. All later models, such as the Amiga 500 or Amiga 2000, have a ROM so that the version can only be changed by replacing the block. By using a " Kickstart Switchers " but can be changed with different versions by Kickstart switch before switching between two ROMs. This was particularly relevant since the introduction of Kickstart 2.0, the compatibility issues with older programs, especially games, has. Owner of the "Amiga 500 ", which is designed primarily for computer games in the home and default Kickstart 2.0 uses are dependent older games to such a kickstart switcher.
Originally designed for non- x86 machines (mainly SPARC, and PowerPC ) was developed by several manufacturers (among Sun ) defines the platform-independent Open Firmware approach (IEEE -1275 ) on Forth base. This comes not only with Sun's SPARC computers, but also for PowerPC-based computers from IBM and Apple, as well as CHRP machines from other manufacturers like Genesi ( with the Pegasos) to use. In 2006, almost all Open Firmware implementations have been released under a BSD license. In laptop OLPC XO -1 (production from 2007), Open Firmware is the first time on the x86 architecture. With OpenBIOS is also a free implementation for x86 machines available, which may be due to lack of operating system support mainly used for the Forth programming.
Extensible Firmware Interface
Intel and Microsoft want to replace the nearly 30 -year-old (as of 2010 ) x86 BIOS through the Extensible Firmware Interface (EFI ) because this better conditions for future generations of computers to offer. There is already partially in the server sector on Intel's IA -64 architecture use, and with the introduction of Windows Vista, it should initiate the replacement of the BIOS concept even with conventional x86 PCs. In March 2006, however, Microsoft announced that Vista will not support EFI first and it will later be retrofitted only for the 64 -bit versions. Today it is known as Unified Extensible Firmware Interface (UEFI ) is used, for example, in Windows 8
In January 2006, Apple introduced the architecture of the Macintosh from PowerPC to access core processors from Intel. As the first model of the iMac the fourth generation came with EFI on the market and thus was also the first x86 computer with EFI.
Simple Firmware Interface
With the commitment of Intel in the smartphone and MID technology, the Simple Firmware Interface (SFI ) has been developed. It is free from old and license fee-based PC BIOS patents. It therefore requires newer, specially adapted for SFI operating systems. SFI applies to Intel's Moorestown platform.
Free BIOS alternatives
The different BIOS implementations of the PCs are usually proprietary software, which carries great uncertainty: since the source code is not disclosed, vulnerabilities are sometimes not detected in time. Also, a proprietary BIOS prevent the user from activities that would constitute the hardware of the device no problem with: for example, allows the BIOS on the Xbox it not to start other than the software licensed from Microsoft.
It is possible the flash ROM module (formerly EPROM ) on which the BIOS is stored, to replace or overwrite to start so for example the Linux kernel directly out of Flash, without BIOS. The procedure is, however, depending on the motherboard and is used mainly in industrial computers.
Projects with this objective are about coreboot (formerly LinuxBIOS ) or OpenBIOS - though the latter is an Open Firmware implementation.
Norms, standards, guidelines
Standard on the interaction of booting from the BIOS, initial program load and BIOS feature additions
The interaction of booting from the BIOS, initial program load and BIOS function supplements, is regulated by the so-called "BIOS Boot Specification " of 11 January 1996, one of a consortium of companies drawn up standard.
This standard fixes in particular, on the way in which the cause Initial Program Load ( Bootstrapload ) components ( the BIOS boot continuing ) the ramp-up of the respective operating systems, are identified by the BIOS and how the restrictions set by default by the computer user priority ( according to the so-called boot sequence ), it is attempted to make one or more of the respective components of the implementation.
Directly or indirectly, this standard sets also states such as an initial program loader ( bootstrap ) a tuned to the BIOS behavior bring about and how the BIOS, the boot media each currently in use (hard drive, optical drive disk, USB flash drive, PCMCIA network card, Ethernet card or the like ) handles for the loader.
For the provision of boot mechanisms, the programming interface between BIOS management and boat management plays, called "BIOS Boot Specification API", a role for which implementing these mechanisms is usually done both hardware and software as well ( provided that in each case all you boot mechanisms in the eye sums ). In terms of hardware, such an implementation be accomplished by BIOS feature additions, such as if the motherboard BIOS is extended by additional add-in firmware BIOSes of networking, SCSI or RAID adapters and / or partially replaced. Software default can be done by programming the appropriate routines and drivers such an implementation, where this can be accommodated memory-resident; under certain conditions can take special functions or play a special role initial program loader or bootstrap loader in the provision of unconventional mechanisms boat. When computer start-up via network card most boat mechanisms are far more complicated than the classical (simple) Initial Program Load. This category includes, for example the case that the computer start-up by an external computer on the network is triggered (eg via Fast Ethernet Adapter ). The motherboard BIOS that has no driver code for booting over a specific network card usually is supplemented by add-in firmware on the network card in compliance with the requirements of the BIOS Boot Specification APIs, so a memory-resident routine in the service of the network card to boot mechanism can redirect and log in to the network card as a selectable boot media to the system. After selecting the network card boot option in the BIOS then the BIOS will boot into a network communications are being collected in the information on the boot server addresses, and query operations take place. This includes a " ready state " of the computer at any time over the network is highly mobile on tripping. On the right message through the bootstrap loader is downloaded and executed in the RAM memory.