|
Dalam dunia komputer, BIOS atau Basic Input-Output System, adalah
suatu kode software yang ditanam di dalam suatu sistem komputer yang
memiliki fungsi utama untuk memberi informasi visual pada saat
komputer dinyalakan, memberi akses ke keyboard dan juga memberi
akses komunikasi secara low-level diantara komponen hardware,
seperti untuk meload sistem operasi dari storage ke RAM. BIOS dapat
disebut sebagai miniatur dan suatu sistem operasi yang dikhususkan
untuk komunikasi low-level pada hardware. BIOS biasanya ditulis
dalam bahasa assembly atau mesin yang mana bahasa ini biasanya
spesifik kepada suatu prosesor tertentu. Istilah BIOS ini pertama
kali muncul pada sistem operasi CP/M, sebagian dari dari CP/M diload
ketika saat booting dan berhubungan dengan hardware. (Mesin CP/M
biasanya memiliki boot loader sederhana di dalam ROM). Sebagian
besar dari versi DOS memiliki suatu file yang bernama IBMBIO.COm
atau IO.SYS yang bisa dikatakan sebagai analogi dari BIOS disk pada
CP/M.
Bagaimana BIOS booting?
BIOS menjalankan flash memory onboard ketika komputer dinyalakan dan
dia akan menginisialisasi chipset dan juga subsistem dari memori.
Selanjutnya, dia akan mendekompres dirinya sendiri dari flash memory
tadi untuk kemudian menuju ke memori utama dan mulai dieksekusi dari
sana. Kode PC BIOS biasanya juga berisi semacam diagnosa untuk
memastikan kondisi dari komponen hardware yang sifatnya penting,
seperti misalnya keyboard, disk drive, I/O ports dan lain
sebagainya. BIOS memastikan apakah alat-alat tersebut bisa berfungsi
dengan baik dan diinisialisasi dengan benar. Hampir semua
implementasi BIOS dapat mengeksekusi suatu program setup melalui
CMOS memory. Memori ini menyimpan konfigurasi yang dapat diatur oleh
user (seperti time, date dan juga informasi detail mengenai hardisk
dan lain sebagainya) dan bisa diakses oleh BIOS.
Pada implementasi BIOS yang modern, seseorang dapat memilih apa
yang dibooting pertama kali, seperti CD, hardisk, floppy disk, flash
keydrive dan lain sebagainya. Ini sangat berguna ketika Anda ingin
menginstall suatu sistem operasi atau juga melakukan booting dari
CD-ROM. Bahkan Anda juga bisa melakukan booting dari media USB.
Beberapa sistem BIOS membolehkan user untuk memilih sistem
operasi yang ingin diload (misalnya load OS lain dari hardisk yang
berbeda dalam satu PC), meskipun cara ini sekarang lebih sering
dihandle oleh fase berikutnya atau yang sering dikenal dengan tool
boot loader.
BIOS sebagai suatu firmware
BIOS terkadang disebut sebagai firmware karena merupakan bagian
integral dari suatu sistem hardware.Sebelum 1990, BIOS berada dalam
chip ROM dan tidak bisa diubah. Seiring dengan semakin kompleksnya
sistem dan juga kebutuhan akan "bisa diupgrade" maka sekarang BIOS
firmware disimpan di dalam EEPROM atau flash memory device yang
dapat dengan mudah diupgrade isinya oleh user. Sementara itu,
kesalahan dalam proses upgrade dari BIOS akan menyebabkan sistem
komputer tidak akan bisa diakses. Untuk mencegah BIOS corruption,
maka beberapa motherboard yang baru memiliki backup BIOS ("Dual
BIOS" boards). Meskipun demikian, banyak BIOS yang memiliki "boot
block" dimana bagian ini adalah bagian dari ROM yang berjalan pada
saat pertama kali dan tetap tidak bisa diupdate. Kode dalam boot
block ini akan memastikan sisa BIOS block lainnya melalui prosedur
checksum, hash dan lain sebagainya, sebelum loncat ke block
tersebut. Jika boot block mendeteksi adanya kerusakan atau
corruption, maka dia akan melakukan booting melalui floppy disk
sehingga user dapat melakukan flashing lagi dengan image yang lebih
bagus. Beberapa pembuat hardware seringkali mengeluarkan update BIOS
untuk mengupdate dan upgrade produk mereka dan juga menghilangkan
bug yang ada.
Firmware pada card adapter
Suatu sistem komputer dapat berisi beberapa chip BIOS. Sebagai
tambahan dari boot BIOS yang fungsi utamanya untuk mengakses
komponen fundamental dari komputer, maka plug-in adapter card
seperti SCSI atau USB hardisk adapter atau network card dapat
memiliki BIOS sendiri dan merupakan komplemen atau pengganti dari
kode BIOS untuk komponen tersebut.
Untuk mencari ekspansi ROM memori yang sudah dimapping selama
proses booting, implementasi BIOS dari PC menscan memori real dari
alamat 0xC8000 sampai 0xF0000 dalam batas 2 kilobyte mencari suatu
signature 0x55 0xaa, yang mana diikuti dengan suatu byte yang
mengindikasikan sejumlah 512 byte block dari expansion memory yang
menduduki memori real. BIOS kemudian loncat ke offset setelah size
byte, dimana pada titik tersebut kode dari expansion ROM mengambil
alih dan menggunakan service BIOS untuk memberikan user sebuah
configuration interface, meregister interrupt vector yang digunakan
oleh aplikasi setelah booting, atau menampilkan informasi diagnosa.
Pada sistem UNIX, ada suatu utility dimana Anda dapat melakukan
dump terhadap software BIOS firmware. Anda bisa dapatkan pada alamat
http://www.linuks.mine.nu/ree/
Spesifikasi BIOS boot
Jika expansion ROM ingin merubah cara dari suatu sistem melakukan
booting (misalnya saja boot dari jaringan atau SCSI adapter dimana
BIOS tidak memiliki drivernya), maka dia dapat menggunakan BIOS Boot
Specification (BBS) API untuk meregisterkan kemampuan tambahannya.
Sesaat setelah expansion ROM sudah teregister menggunakan BBS API,
maka pengguna akan dapat memilih berbagai macam pilihan booting dari
user interface BIOS. Hal ini yang menyebabkan mengapa kebanyakan
implementasi BIOS yang compliant dengan BBS, tidak akan membolehkan
pengguna untuk masuk ke dalam BIOS user interface sampai expansion
ROM selesai dalam mengeksekusi dan meregister dirinya sendiri dengan
API BBS.
Demikian tulisan singkat mengenai pengenalan BIOS. Semoga
bermanfaat bagi Anda. Jika ada komentar atau saran bisa dikirimkan melalui
ariesa.rahardjo@gmail.com. Untuk membaca tulisan menarik lainnya
silakan menuju ke situs Sony AK Knowledge Center dengan alamat di
www.sony-ak.com.
Terima kasih.
| Send
your comments or suggestions |
|
|
|