Basic Input/Output System
BIOSはパーソナルコンピュータ(PC)に組み込まれており、電源投入と同時に実行される。ハードウェアを初期化し補助記憶装置からブートローダーを呼び出す。またキーボードやディスプレイなどの入出力装置をプログラムから利用するためのサービスを提供する。プログラムはハードウェアに直接アクセスするのではなく、これらサービスを利用する事でハードウェア差を気にしなくて良くなる。ただし近代的なオペレーティングシステム (OS) はこの抽象化層を使用せず、OSのデバイスドライバで直接制御する場合が多い。
IBM PC/XTのオリジナルのBIOSにはユーザインタフェースが無く、基板上のジャンパスイッチで設定した。システム不具合時はエラーメッセージとブザー音で通知した。近代的なPCでは、起動時に特定のキーを押すことで設定プログラムが起動し、画面とキーボードで設定を行える。
1980年代より1990年代中盤まで主流であったMS-DOSはディスク、キーボード、画面表示などBIOSのサービスに依存していた。
マザーボードのシステムBIOSはブートに必要なキーボード、ディスプレイ、ストレージなどのコードを内蔵している。アダプタカード(SCSI、RAID、ネットワークインタフェースカード、ビデオボードなど)は独自のBIOSを搭載しており、これらはシステムBIOSを置き換える。マザーボードに組み込まれたオンボードデバイスでも動作は同様である。それらのROMはBIOSのフラッシュメモリ上でも別々のコードになっているため、システムBIOSと同時または別々にアップグレードすることもできる。
あるアダプタカードがブート時に必須でありかつシステムBIOSがこれをサポートしていない場合、オプションROMが必要となる。また、オプションROMがあればストレージドライバがなくてもブート途中にデバイスにアクセスできるようになる。RAMやハードディスクを占有する必要もない。また、デバイスとドライバが必ずセットであるためインストールが不要という利点もある。
システムBIOSと拡張ROMの内容を調べるには多数の手法とユーティリティがあり、一例としてはマイクロソフトのDEBUG や Unix系のdd (UNIX)がある。
2014年現在、新製品のBIOSはより複雑なUnified Extensible Firmware Interface (UEFI) に置き換えられつつある。UEFIはレガシーBIOSのランタイムインタフェースを置き換えるもので、元はItaniumプラットフォーム向けに書かれたが、現在はx86とx86-64プラットフォームにも提供されており、仕様はUnified EFI Forumの主導で開発されている。UEFIによるブートはWindowsのうちGPTをサポートするバージョン、Linuxカーネル2.6.1以降、macOSのうちIntel Macで動作するもの に限られる。
従来のレガシーBIOSに代わるものとしては、ほかにOpen Firmware(OLPC XO-1で使用)、corebootなどが存在する。
他の系列のコンピュータでは、ブートモニタ、ブートローダー、ブートROMなどの語が使われる。ワークステーション分野ではOpen Firmware (IEEE-1275) があり、Forth言語で記述されている。サンのSPARC コンピュータ、IBMの RS/6000 シリーズ、その他PowerPCを搭載するCHRPマザーボードに採用されている。
現在主流となっているパワーマネジメントシステム及びI/Oサブシステム
ビデオサブシステム(主にテキストと低解像度グラフィクス)
IBM PCとXTの時代には設定のユーザーインタフェース (UI) はマザーボード上ディップスイッチであった。それ以降は画面に表示されたメニューをキーボードで操作するインタフェースである。マウス(ポインティングデバイス)による操作が出来るものもある。以降80286CPU搭載機までは電池でバックアップされたCMOSに保存されていた。IBM ATではビデオカード、メモリーサイズ、ハードディスクを設定するには、ROMのプログラムではなく "reference diskette" という特別なディスクを挿入して行わなければならなかった。
PC/AT互換PCではセットアップユーティリティで各種設定をする。この方式は1990年代から変わっていない。ユーザーは画面に表示されたメニュー形式のインターフェースをキーボードで操作する。ブートに失敗した場合にはテキストメッセージが表示され、ユーティリティで設定を修正する、無視して続行する等のユーザーフレンドリーな表示が可能である。またBIOS設定は電池でバックアップされたRAMではなくフラッシュROMに格納するものもある。
設定画面をBIOSと称する向きもあるが厳密には誤りである。