Apa perbedaan antara firmware dan perangkat lunak / OS?

15
  1. Saya bertanya-tanya apa perbedaan antara firmware dan perangkat lunak?
  2. Apa perbedaan antara firmware dan OS?
  3. Apakah firmware boot-loader? Bios adalah. Bagaimana dengan grub GNU? Apakah perangkat lunak atau firmware grub?
Tim
sumber

Jawaban:

13

Secara tradisional, firmware adalah kode CPU yang berada pada ROM yang tidak dapat dimodifikasi yang diperlukan untuk perangkat hardware untuk mem-boot dan memuat sistem operasi atau biner (perangkat lunak) pilihan. Terkadang tidak ada pilihan biner yang diberikan dan yang dilampirkan pada firmware bagian boot digunakan.

Semua CPU memiliki masalah klasik dalam hal itu, karena mereka mengambil instruksi dari memori, beberapa jenis memori yang sudah diprogram harus ada pada alamat tetap ketika CPU dimulai, sehingga dapat melakukan sesuatu secara otomatis saat startup. Firmware ada untuk tujuan ini. Beberapa firmware juga memiliki kode yang nantinya dapat digunakan program untuk layanan. Firmware BIOS memaparkan banyak fungsi yang digunakan DOS untuk input dan output dasar (karenanya mengapa BIOS adalah singkatan dari Basic Input Output System).

Perbedaannya tidak sepenuhnya jelas. Beberapa (sebagian besar) kartu WLAN memerlukan firmware untuk dimuat sebelum mereka mulai berfungsi. Namun, biasanya ada firmware kecil pada perangkat yang tugasnya tidak melakukan apa-apa selain menerima "firmware" utama melalui bus USB ketika perangkat dijalankan oleh sistem operasi, dan menyerahkan kontrol ketika dimuat. Kebanyakan orang akan mengatakan semua itu adalah firmware.

Karena EEPROM dan memori flash menjadi lebih umum, firmware biasanya tidak lagi berada dalam ROM yang tidak dapat dituliskan tetapi dalam memori flash dan dapat dimodifikasi. Perbedaan antara firmware dan perangkat lunak kabur hari ini dengan munculnya memori flash. Namun, satu hal yang tidak berubah selama bertahun-tahun dan itu adalah CPU masih CPU dan memerlukan beberapa kode, atau firmware, agar dapat terlihat pada saat startup untuk, yah, memulai.

CPU ada di lebih banyak perangkat daripada sebelumnya sehingga pengembangan dan memungkinkan firmware untuk diperbarui dalam kasus bug adalah masalah besar sekarang dan banyak perangkat keras dengan CPU memiliki antarmuka pembaruan firmware, kadang-kadang tidak berdokumen.

Firmware dapat digunakan untuk memuat OS. Itu bisa berisi boot loader atau kode yang memuat boot loader. Dimungkinkan untuk menyimpan gambar OS di lokasi yang sama dengan firmware dan membiarkan kode waktu boot firmware memuat OS (ponsel melakukan ini). BIOS PC sebagai aturannya tidak termasuk boot loader. U-boot (bukan untuk PC) adalah contoh dari firmware "filesystem-aware" yang secara langsung memuat sistem operasi.

Peranti lunak biasanya tidak memiliki semua fitur sistem operasi penuh karena prinsip yang lebih sederhana lebih dapat diandalkan. Firmware paling sederhana hanya menginisialisasi perangkat keras minimum, memuat sektor atau memblokir perangkat penyimpanan dan melakukan eksekusi. Ini sederhana untuk diprogram dan karenanya mudah diverifikasi sebagai bebas bug. Bug dalam firmware waktu boot khususnya dapat menyebabkan bencana pada perangkat.

LawrenceC
sumber
Terima kasih! Apa perbedaan firmware dan driver perangkat, karena keduanya mengontrol perangkat?
Tim
Untuk perangkat seperti kartu WLAN: Driver dibuat untuk antarmuka antara perangkat perangkat keras dan sistem operasi itu sendiri. Driver dijalankan di PC. Firmware dibuat untuk antarmuka antara perangkat keras dan driver melalui bus (USB, IDE, PCI-E, dll). Firmware berjalan di perangkat itu sendiri.
LawrenceC
5

Firmware adalah perangkat lunak, kecuali alih-alih disimpan pada disk, itu disimpan dalam EEPROM yang biasanya dapat di-flash untuk memungkinkan pembaruan.

Firmware adalah suatu cara sistem operasi, tetapi jauh lebih ketat dan bertujuan tunggal karena hanya untuk mengendalikan perangkat itu, sedangkan OS adalah sistem tujuan umum yang memungkinkan segala jenis perangkat lunak untuk dijalankan pada beberapa perangkat perangkat keras.

Tidak, boot-loader bukan firmware karena merupakan perangkat lunak yang ada pada disk. Ya, BIOS itu karena ada pada chip (flashable). Tidak, GRUB juga bukan firmware karena, lagi-lagi itu tidak tegas (tidak ada komponen perangkat keras untuk itu), itu adalah perangkat lunak yang ada pada disk — meskipun itu dapat (dan mungkin) diinstal pada sebuah chip, dalam hal ini ia akan menjadi firmware.

Synetech
sumber
4
  1. Perbedaannya adalah pada dasarnya di mana kode berada. Secara umum, firmware dibakar ke dalam beberapa jenis EPROM atau memori flash tertanam, sedangkan perangkat lunak disimpan pada perangkat penyimpanan massal.

  2. OS perangkat dapat berada dalam firmware atau perangkat lunak. Pada PC firmware (BIOS), hanya menyediakan layanan tingkat rendah yang dapat digunakan oleh OS Perangkat Lunak (Windows / Linux / dll). Pada perangkat seluler, entrie OS umumnya dalam firmware.

  3. Menurut definisi dalam (1) BIOS komputer adalah firmware, tetapi bootloader, yang berada di hard-disk adalah perangkat lunak.

Andrew Cooper
sumber
3

Batas-batasnya bisa sedikit kabur.

Perangkat lunak biasanya adalah instruksi atau rutin yang dapat dilakukan komputer.

Firmware biasanya adalah instruksi khusus (perangkat lunak) yang dimuat / dinyalakan ke perangkat keras agar mereka dapat menjalankan fungsinya.

Saya akan mengatakan bahwa hampir setiap perangkat keras memiliki semacam firmware yang disertakan di dalamnya.

Sekali lagi, saya tidak berpikir ada panduan yang pasti tentang di mana seseorang memulai dan berhenti - semua firmware, adalah perangkat lunak yang dikompilasi untuk chip apa pun yang ada di perangkat.

Adapun pertanyaan kedua Anda tentang apa itu firmware, saya akan mengatakan bahwa bootloader tidak tetapi BIOS dan grub tidak.

Ini sangat sulit untuk menarik garis tetapi ... cara saya melihatnya adalah bahwa BIOS (sekarang EFI) adalah firmware dari motherboard, dan Hard drive memiliki firmware sendiri.

Jadi, bootloader / grub adalah perangkat lunak murni - mungkin melakukan tugas-tugas dengan hard drive, tetapi tidak secara langsung benar-benar mengendalikan perangkat keras apa pun.

Jika Anda mengambil perangkat tertanam seperti Iphone / Ipad, di mana firmware dan perangkat lunak dimulai? Jika Anda menganggap iOS sebagai firmware, mengapa tidak menggunakan Windows atau yang serupa.

Bagi saya, ini menunjukkan bahwa batasan adalah tempat produsen atau vendor perangkat apa pun memungkinkan Anda untuk mengambil kendali dan itu sebenarnya bukan hal yang pasti / ilmu pasti.

Sebagai contoh,

  • Motherboard adalah untuk boot - firmware adalah BIOS, ketika diserahkan ke bagian selanjutnya
  • Optik dan hard drive adalah komponen untuk membaca / menulis data, firmware adalah bagian yang melakukan pekerjaan ini berdasarkan permintaan.
  • Kartu grafis adalah komponen untuk menampilkan gambar, firmware adalah bagian yang atas permintaan menarik output.

Untuk memperumit lebih lanjut - ketika saya mengatakan atas permintaan, ini bisa dari driver dalam perangkat lunak lain

Sekarang, sebuah iPad, atau Iphone, atau perangkat tertanam lainnya ...

  • Perangkat yang dibeli dari rak untuk melakukan fungsi terbatas (mis. Jalankan iOS) adalah firmware karena Anda tidak (atau tidak seharusnya) memodifikasinya secara manual. Ini mungkin berisi bagian-bagian lain dari perangkat keras di dalamnya, tetapi disajikan sebagai satu perangkat dan Anda tidak membeli perangkat keras secara terpisah, karenanya, setiap pembaruan yang tersedia akan memperbarui segala sesuatu secara tak terlihat (misalnya telepon, Anda tidak secara manual memperbarui pengontrol GSM, daya variabel dan banyak lagi, Anda hanya memiliki pembaruan yang dapat memodifikasi hal-hal ini).

Jadi .... Singkatnya ...

Bagi saya, saya akan mengatakan bahwa firmware = perangkat lunak yang datang pada perangkat di mana perangkat lunak murni dibeli sebagai data, tetapi saya yakin orang lain mungkin mengatakan berbeda!

William Hilsum
sumber
Saya harap ini berbunyi ok ... Saya menemukan ini topik yang sangat menarik untuk ditulis, tetapi butuh waktu lebih dari setengah jam dan ini masih terlalu pagi / saya sangat lelah ... dan saya tidak selalu jelas pada saat terbaik! ... Senang menjawab pertanyaan dan saya hanya berharap saya tidak mengulangi terlalu banyak!
William Hilsum
0

Saya ingin memberikan jawaban hanya dalam beberapa kata. Perangkat lunak dan sistem operasi keduanya sangat penting bagi setiap sistem digital untuk memulai dan menjalankan dengan benar dan kami akan membahas bagaimana keduanya bekerja. Misalkan kita telah mematikan ponsel cerdas kita dan kita menghidupkan setelah beralih tombol daya di ponsel cerdas kita perintah ini akan pergi ke chip BIOS yang merupakan memori non-volatile dan berisi beberapa program firmware. BIOS chip firmware ini mulai bekerja dan firmware memberikan perintah dalam kedua arah ke RAM dan ROM itu memberikan ram perintah untuk melepas kode sistem operasi dari Rom dan perintah lain ke ROM untuk memberikan salinan sistem operasinya ke RAM untuk mengaktifkan semua komponen lain dari Sistem itu.

Hritik Nitish
sumber