Bagaimana cara BIOS mengontrol perangkat I / O tanpa bentuk driver?
Misalnya bagaimana sebuah gambar ditampilkan saat komputer boot jika BIOS tidak memiliki driver untuk kartu grafis.
Apakah ada semacam driver generik yang standar di semua BIOS dan perangkat keras yang memungkinkan BIOS untuk melakukan fungsi dasar tidak peduli perangkat keras apa yang diinstal.
Bantuan apa pun akan dihargai.
Terima kasih.
Do you have a specific problem your trying to solve?
Ya, mereka berusaha memecahkan masalah menemukan jawaban untuk pertanyaan yang mereka tanyakan. ¬_¬Jawaban:
Standar. Semua komponen menerapkan antarmuka dasar, dan BIOS diprogram untuk menggunakannya. Tentu saja karena itu adalah antarmuka dasar (itulah yang 'B' di kependekan dari BIOS), ia tidak dapat memanfaatkan kapabilitas penuh perangkat keras; yang tersisa untuk perangkat lunak untuk diimplementasikan melalui driver yang dapat mengakses perangkat keras secara langsung.
Awalnya, produsen BIOS membuat satu set API yang diharapkan digunakan perangkat jika ingin kompatibel. Mereka melakukan ini melalui " interupsi " yang merupakan cara bagi perangkat untuk, baik, mengganggu program untuk membiarkannya tahu bahwa sesuatu terjadi dan sebaliknya.
Dalam hal tampilan pra-boot, firmware adaptor video mengimplementasikan VESA (Asosiasi Standar Elektronik Video) yang merupakan standar yang dibuat untuk menyederhanakan akses ke perangkat keras tampilan. BIOS tahu cara mengakses perangkat keras video menggunakan fungsi standar yang disediakan. Ini agak mirip dengan bagaimana DirectX diimplementasikan sebagai API tingkat tinggi ke perangkat keras sehingga programmer tidak harus memperhitungkan setiap konfigurasi perangkat keras tunggal.
Semacam. Ini bukan driver, tetapi API standar ; satu set fungsi pemrograman yang dapat digunakan untuk melakukan hal-hal dasar seperti menginisialisasi perangkat atau data input dan output.
Jika produsen ingin menjual produk mereka, mereka harus memastikan bahwa mereka setidaknya menerapkan API standar sehingga mereka akan kompatibel. Dengan begitu, sistem dapat mendeteksi perangkat keras dan dalam hal perangkat yang sangat penting untuk boot, mereka dapat mengaksesnya di tingkat dasar hingga driver perangkat lunak yang tahu cara mengaksesnya sepenuhnya dapat dimuat.
sumber
BIOS dalam PC dimaksudkan untuk memenuhi fungsi yang sama dengan BIOS dalam sistem CP / M 8-bit, yang populer sebelum PC mengambil alih pada pertengahan tahun 80-an. BIOS dimaksudkan untuk memuat bootloader minimal dan rutinitas tingkat rendah yang bergantung pada perangkat keras untuk melakukan input dan output ke beberapa perangkat (layar, disk, pita, port COM). Pengetahuan untuk melakukan ini dibangun ke dalam ROM - tidak diperlukan driver, dan tentu saja, tidak ada perangkat keras tambahan yang didukung oleh ROM ini. (Hal-hal seperti manajemen daya dan ACPI muncul jauh di kemudian hari, pada tahun 90-an, setelah PC menempatkan dirinya sebagai platform di mana-mana.)
(The "filesystem" CP / M berada di komponen yang dimuat dari disk yang disebut BDOS - juga, pengetahuan tentang filesystem FAT dan antarmuka itu dalam (setidaknya satu dari) dua file tersembunyi MSDOS.SYS atau IO.SYS - bukan bagian ROM BIOS.)
Namun ... BIOS PC, tidak seperti CP / M, mendukung gagasan "ROM Opsi" yang dapat dimasukkan pada kartu ekspansi. Jadi setidaknya ada mekanisme minimal untuk memperpanjang BIOS. Kartu video yang dimulai dengan CGA (MDA, pendahulu CGA, mungkin telah melakukannya juga) akan memiliki ROM opsi yang memperluas atau menambahkan fungsi I / O ke antarmuka BIOS. (Inilah sebabnya mengapa Anda melihat pesan NVidia sebelum BIOS Anda boot.) Begitu pula dengan hard drive dan kartu SCSI. Semua ini masih dilakukan. Banyak kartu jaringan yang lebih tua memiliki soket untuk boot ROM.
Perlu diingat juga bahwa produsen klon PC yang muncul pada tahun 80-an sangat cepat memutuskan untuk tidak hanya menyediakan antarmuka BIOS yang kompatibel, tetapi akhirnya harus menyalin platform PC secara keseluruhan, termasuk semua perangkat keras tingkat rendah seperti chip timer , interrupt controller, dll. (Ini relatif mudah karena hanya sedikit yang dimiliki IBM.) Ini karena BIOS lambat untuk melakukan sesuatu dan programmer mengakses perangkat keras secara langsung, terutama untuk game.
Jadi, antara ROM opsi dan konsensus perangkat keras standar yang membentuk platform PC, dan juga fakta bahwa itu telah dibelakang kompatibel sepanjang evolusi PC, sesuatu yang ingin menggunakan layar tanpa driver dapat:
Semua perangkat keras layar PC masih berfungsi dalam mode "VGA-kompatibel" saat boot. Adaptor IBM VGA asli memiliki mode yang kompatibel dengan kartu EGA, CGA, dan MDA sebelumnya. Semua ini berarti bahwa sesuatu yang berjalan dari BIOS atau di luar OS dapat mengasumsikan itu masih dapat membaca dan menulis memori yang sama yang terhubung ke layar sekarang seperti pada tahun 1985, melalui konvensi.
sumber