Jawaban:
Firmware adalah perangkat lunak yang berjalan pada perangkat. Driver adalah perangkat lunak yang memberi tahu sistem operasi Anda cara berkomunikasi dengan perangkat. Tidak semua perangkat memiliki firmware - hanya perangkat dengan tingkat kecerdasan tertentu.
Saya tidak yakin apa yang Anda maksud ... secara umum, firmware tidak ada hubungannya dengan "boot" ... Saya pikir mungkin yang Anda tanyakan adalah, apakah perangkat dengan firmware selalu memiliki firmware yang diinstal pada perangkat, atau itu dimuat setelah waktu boot. Jika itu yang Anda tanyakan, jawabannya adalah tidak ...
Paling umum, perangkat dengan firmware memprogram firmware ke dalam perangkat (baik dengan chip ROM, atau chip ROM yang dapat diprogram), tetapi ada beberapa perangkat di mana firmware dimuat ke perangkat pada waktu inisialisasi. Saya bisa memikirkan beberapa kartu jaringan dan webcam yang beroperasi dengan cara ini, tapi saya yakin ada yang lain juga.
only devices with some level of intelligence have firmware
? Saya akan mengatakan sebaliknya, perangkat sederhana (elektronik) mungkin tidak memiliki sistem operasi tetapi memiliki firmware.
Firmware mengimplementasikan perincian tingkat rendah yang diperlukan untuk mengoperasikan perangkat keras, dan menyediakan API / ABI ke tingkat yang lebih tinggi. Driver perangkat menyediakan adaptor antara OS dan API / ABI yang diekspos oleh firmware.
Definisi modern atau penggunaan umum firmware tidak ada hubungannya dengan fungsi perangkat lunak tertentu. Firmware hanyalah perangkat lunak yang disimpan dalam chip semikonduktor yang tidak mudah menguap (mis. PROM, EEPROM atau flash) daripada perangkat penyimpanan massal seperti hard drive. Perangkat lunak yang disimpan dapat berupa biner yang terhubung secara monolitik, atau terdiri dari modul pemuat, kernel dan aplikasi. (OTOH saya telah melihat beberapa kartu TV tuner untuk PC yang memerlukan pemuatan "firmware" oleh kernel Linux untuk menyelesaikan inisialisasi.)
Asal usul istilah ini berkaitan dengan logika yang dikendalikan prosesor versus logika bawaan. Perangkat lunak yang disimpan pada hard drive dapat dengan mudah dimodifikasi dan diperbarui. Revisi dan pembaruan untuk logika bawaan diperlukan perancangan ulang dan penggantian modul atau modul. Jalan tengahnya adalah prosesor yang menjalankan perangkat lunak untuk mengontrol perangkat keras. Perangkat lunak ini disebut perusahaan gudang untuk mencerminkan jalan tengah antara lembut gudang vs keras logika kabel. Awalnya firmware disimpan dalam chip ROM, PROM atau EPROM untuk menjaga modularitas board. Kemajuan EEPROM dan chip flash memungkinkan pembaruan firmware di-sirkuit dan di-papan.
Ketika prosesor (dan periferal) menjadi lebih kecil dan lebih murah dan lebih sedikit daya haus, kemungkinan untuk menanamkannya dalam setiap jenis perangkat / alat diperluas. Untuk membuat perangkat lunak untuk mengoperasikan perangkat ini kasar dan aman, perangkat lunak disimpan dalam chip memori flash daripada hard drive; itu juga membuat perangkat lebih kecil dan jauh lebih murah. Istilah firmware telah diperluas untuk mencakup semua perangkat lunak dalam perangkat / peralatan dengan prosesor tertanam, meskipun beberapa bagian dari kode yang disimpan tidak memiliki hubungan untuk mengganti logika bawaan.
Seseorang memposting pertanyaan ini baru-baru ini , mengatakan:
Firmware adalah kombinasi dari memori persisten, kode program, dan data yang tersimpan di dalamnya. Contoh umum perangkat yang mengandung Firmware adalah sistem tertanam seperti lampu lalu lintas, peralatan konsumen, jam tangan digital, komputer, periferal komputer, ponsel, dan kamera digital. Firmware yang terdapat dalam perangkat ini menyediakan program kontrol untuk perangkat tersebut.
Faktanya, drivers
tag SuperUser didefinisikan:
Driver, juga disebut driver perangkat atau driver perangkat lunak adalah perangkat lunak yang memungkinkan program komputer tingkat tinggi untuk berinteraksi dengan perangkat perangkat keras. Ketika sebuah program komputer meminta interaksi dengan perangkat perangkat keras tertentu, driver akan menangani terjemahan instruksi dan output antara perangkat dan program komputer yang memanggil driver.
dan, firmware
tag didefinisikan:
Secara umum, perbedaan antara perangkat lunak dan firmware adalah tingkat di mana ia berinteraksi dengan perangkat keras. Firmware berinteraksi pada tingkat perangkat yang sangat rendah sedangkan perangkat lunak berinteraksi pada tingkat tinggi. Firmware umumnya mengontrol pengaturan waktu dasar, kontrol dan fungsionalitas perangkat keras.
Awalnya saya pikir firmware
itu dipasang ke chip atau papan langsung dan tinggal di sana, itulah sebabnya itu harus "di-flash", sementara Anda akan menginstal driver
di atas sistem operasi.
Kesimpulan:
Firmware
memungkinkan perangkat keras untuk "melakukan" hal-hal, dan drivers
memungkinkan perangkat lunak untuk berinteraksi dengan perangkat keras.