เฟิร์มแวร์และซอฟต์แวร์ / ระบบปฏิบัติการต่างกันอย่างไร?


15
  1. ฉันสงสัยว่าเฟิร์มแวร์และซอฟต์แวร์แตกต่างกันอย่างไร?
  2. ความแตกต่างระหว่างเฟิร์มแวร์และระบบปฏิบัติการคืออะไร?
  3. เฟิร์มแวร์สำหรับบูตโหลดเดอร์หรือไม่? ไบออสคือ แล้ว GNU grub ล่ะ? เป็นซอฟต์แวร์ด้วงหรือเฟิร์มแวร์หรือไม่

คำตอบ:


13

ตามเนื้อผ้าเฟิร์มแวร์เป็นรหัสของ CPU ที่อยู่ใน ROM ที่ไม่สามารถแก้ไขได้ซึ่งจำเป็นสำหรับอุปกรณ์ฮาร์ดแวร์ในการบูตและโหลดระบบปฏิบัติการหรือไบนารี (ซอฟต์แวร์) ที่เลือก บางครั้งไม่มีตัวเลือกของไบนารีและมีการเชื่อมต่อกับเฟิร์มแวร์ส่วนบูต

ซีพียูทั้งหมดมีปัญหาแบบคลาสสิกเนื่องจากพวกเขาดึงคำแนะนำจากหน่วยความจำหน่วยความจำที่ตั้งโปรแกรมไว้ล่วงหน้าบางประเภทจะต้องมีอยู่ที่แอดเดรสคงที่เมื่อซีพียูเริ่มทำงานเพื่อให้สามารถทำบางสิ่งโดยอัตโนมัติเมื่อเริ่มต้น มีเฟิร์มแวร์สำหรับจุดประสงค์นี้ เฟิร์มแวร์บางตัวยังมีรหัสที่โปรแกรมในภายหลังสามารถใช้บริการ BIOS เฟิร์มแวร์แสดงฟังก์ชั่นมากมายที่ DOS ใช้สำหรับอินพุตและเอาท์พุตพื้นฐาน

ความแตกต่างไม่ชัดเจนโดยสิ้นเชิง การ์ด WLAN (บางส่วน) ต้องการให้โหลดเฟิร์มแวร์ก่อนที่จะเริ่มทำงาน อย่างไรก็ตามมักจะมีเฟิร์มแวร์ขนาดเล็กบนอุปกรณ์ที่มีหน้าที่ต้องทำอะไรนอกจากยอมรับ "เฟิร์มแวร์" หลักบน USB บัสเมื่ออุปกรณ์เริ่มทำงานโดยระบบปฏิบัติการและส่งมอบการควบคุมเมื่อมีการโหลด คนส่วนใหญ่บอกว่ามันเป็นเฟิร์มแวร์

ตั้งแต่ EEPROMs และหน่วยความจำแฟลชเป็นเรื่องปกติมากขึ้นเฟิร์มแวร์มักจะไม่อยู่ใน ROM ที่เขียนทับไม่ได้อีกต่อไป แต่ในหน่วยความจำแฟลชและสามารถแก้ไขได้ ความแตกต่างระหว่างเฟิร์มแวร์และซอฟต์แวร์นั้นพร่ามัวในปัจจุบันด้วยการมาถึงของหน่วยความจำแฟลช อย่างไรก็ตามสิ่งหนึ่งที่ไม่ได้เปลี่ยนไปในช่วงหลายปีที่ผ่านมาและนั่นก็คือซีพียูยังคงเป็นซีพียูและต้องการรหัสหรือเฟิร์มแวร์

ซีพียูอยู่ในอุปกรณ์มากขึ้นกว่าเดิมดังนั้นการพัฒนาและอนุญาตให้อัปเดตเฟิร์มแวร์ในกรณีของข้อบกพร่องเป็นเรื่องใหญ่ตอนนี้และอุปกรณ์ฮาร์ดแวร์จำนวนมากที่มี CPU มีอินเทอร์เฟซการอัปเดตเฟิร์มแวร์

สามารถใช้เฟิร์มแวร์เพื่อโหลดระบบปฏิบัติการ มันสามารถมีบูตโหลดเดอร์หรือรหัสที่โหลดบูตโหลดเดอร์ เป็นไปได้ที่จะเก็บอิมเมจระบบปฏิบัติการในตำแหน่งเดียวกับเฟิร์มแวร์และปล่อยให้รหัสเวลาบูตของเฟิร์มแวร์โหลดระบบปฏิบัติการ (โทรศัพท์มือถือทำสิ่งนี้) BIOS ของพีซีเป็นกฎไม่รวม boot loader U-boot (ไม่ใช่สำหรับพีซี) เป็นตัวอย่างของเฟิร์มแวร์ "ตระหนักถึงระบบแฟ้ม" ที่โหลดระบบปฏิบัติการโดยตรง

ฟีดมักจะไม่ได้มีคุณสมบัติทั้งหมดของระบบปฏิบัติการเต็มรูปแบบเพราะหลักการที่เรียบง่ายมีความน่าเชื่อถือมากขึ้น เฟิร์มแวร์ที่ง่ายที่สุดเพียงเริ่มต้นฮาร์ดแวร์ขั้นต่ำโหลดเซกเตอร์หรือปิดกั้นอุปกรณ์จัดเก็บข้อมูลและดำเนินการกับมัน โปรแกรมนี้ใช้งานง่ายและตรวจสอบได้ง่ายว่าไม่มีข้อบกพร่อง ข้อบกพร่องในเฟิร์มแวร์เวลาบูตโดยเฉพาะสามารถสะกดความเสียหายสำหรับอุปกรณ์


ขอบคุณ! เฟิร์มแวร์และไดรเวอร์อุปกรณ์แตกต่างกันอย่างไรในฐานะอุปกรณ์ควบคุมทั้งสอง
ทิม

สำหรับอุปกรณ์เช่นการ์ด WLAN: ไดรเวอร์ถูกสร้างขึ้นเพื่อเชื่อมต่อระหว่างอุปกรณ์ฮาร์ดแวร์และระบบปฏิบัติการ ไดรเวอร์ทำงานบนพีซี เฟิร์มแวร์สร้างขึ้นเพื่อเชื่อมต่อระหว่างอุปกรณ์ฮาร์ดแวร์และไดรเวอร์ผ่านบัส (USB, IDE, PCI-E, ฯลฯ ) เฟิร์มแวร์ทำงานบนอุปกรณ์เอง
LawrenceC

5

เฟิร์มแวร์คือซอฟต์แวร์ยกเว้นแทนที่จะถูกเก็บไว้ในดิสก์จะถูกเก็บไว้ในEEPROMซึ่งโดยทั่วไปจะสามารถใช้งานได้เพื่อให้สามารถอัปเดตได้

เฟิร์มแวร์เป็นระบบปฏิบัติการ แต่มีข้อ จำกัด มากกว่าและมีจุดประสงค์เดียวเพราะมันใช้สำหรับควบคุมอุปกรณ์นั้นเท่านั้นในขณะที่ระบบปฏิบัติการเป็นระบบเอนกประสงค์ที่อนุญาตให้ซอฟต์แวร์ประเภทใดก็ได้ทำงานบนอุปกรณ์ฮาร์ดแวร์หลายชนิด

ไม่บูตสำหรับรถตักไม่ใช่เฟิร์มแวร์เพราะเป็นซอฟต์แวร์ที่มีอยู่ในดิสก์ ใช่ BIOS เป็นเพราะมีอยู่ในชิป (แฟลช) ไม่มีด้วงไม่เฟิร์มทั้งเพราะอีกครั้งมันไม่ได้เป็น บริษัท (ไม่มีส่วนประกอบฮาร์ดแวร์กับมัน) มันเป็นซอฟแวร์ที่มีอยู่บนดิสก์แม้ว่ามันอาจจะ (และอาจ) จะติดตั้งบนชิปซึ่งในกรณีนี้มันจะเป็นเฟิร์ม


4
  1. ความแตกต่างนั้นเป็นที่ที่รหัสอยู่ โดยทั่วไปเฟิร์มแวร์จะถูกเขียนลงใน EPROM หรือหน่วยความจำแฟลชในตัวในขณะที่ซอฟต์แวร์จะถูกจัดเก็บไว้ในอุปกรณ์เก็บข้อมูลขนาดใหญ่

  2. ระบบปฏิบัติการของอุปกรณ์อาจอยู่ในเฟิร์มแวร์หรือซอฟต์แวร์ เฟิร์มแวร์ (BIOS) บนพีซีเพียงแค่ให้บริการระดับต่ำที่ Software OS (Windows / Linux / ฯลฯ ) สามารถใช้งานได้ ในอุปกรณ์มือถือระบบปฎิบัติการ entrie โดยทั่วไปจะอยู่ในเฟิร์ม

  3. ตามคำจำกัดความใน (1) BIOS ของคอมพิวเตอร์คือเฟิร์มแวร์ แต่ bootloaders ซึ่งอยู่ในฮาร์ดดิสก์เป็นซอฟต์แวร์


3

ขอบเขตอาจจะคลุมเครือเล็กน้อย

ซอฟต์แวร์โดยทั่วไปคือคำแนะนำหรือชุดคำสั่งใด ๆ ที่คอมพิวเตอร์สามารถทำได้

โดยทั่วไปแล้วเฟิร์มแวร์จะเป็นคำแนะนำเฉพาะ (ซอฟต์แวร์) ที่โหลดเข้าสู่ฮาร์ดแวร์เพื่อให้สามารถใช้งานได้

ฉันบอกได้เลยว่าฮาร์ดแวร์ทุกชิ้นมีเฟิร์มแวร์อยู่ในนั้น

อีกครั้งฉันไม่คิดว่าจะมีคำแนะนำที่ชัดเจนว่าจะเริ่มและหยุดที่ใด - เฟิร์มแวร์ทั้งหมดคือซอฟต์แวร์ที่รวบรวมสำหรับชิปใดก็ตามที่อยู่ในอุปกรณ์

สำหรับคำถามที่สองของคุณเกี่ยวกับเฟิร์มแวร์คืออะไรฉันจะบอกว่า bootloaders ไม่ใช่ แต่ BIOS คือและด้วงไม่

นี่เป็นเรื่องยากมากที่จะวาดเส้น แต่ ... วิธีที่ฉันมองว่า BIOS (ตอนนี้ EFI) เป็นเฟิร์มแวร์ของเมนบอร์ดและฮาร์ดไดรฟ์มีเฟิร์มแวร์ของตัวเอง

ดังนั้น bootloader / grub เป็นซอฟต์แวร์บริสุทธิ์ - มันอาจทำงานกับฮาร์ดไดรฟ์ แต่ไม่ได้ควบคุมฮาร์ดแวร์ใด ๆ โดยตรง

หากคุณใช้อุปกรณ์ฝังตัวเช่น Iphone / Ipad ปลายเฟิร์มแวร์และซอฟต์แวร์จะเริ่มต้นที่ไหน! หากคุณคิดว่า IOS เป็นเฟิร์มแวร์ทำไมไม่ใช้ Windows หรือคล้ายกัน

สำหรับฉันนี่แสดงให้เห็นว่าขอบเขตเป็นที่ที่ผู้ผลิตหรือผู้ขายของอุปกรณ์ใด ๆ อนุญาตให้คุณควบคุมและมันก็ไม่ใช่วิทยาศาสตร์ที่แน่นอน / แน่นอน

ตัวอย่างเช่น,

  • มาเธอร์บอร์ดใช้สำหรับการบูท - เฟิร์มแวร์คือ BIOS เมื่อมันส่งผ่านไปยังส่วนถัดไป
  • ออปติคัลและฮาร์ดไดรฟ์เป็นส่วนประกอบสำหรับการอ่าน / เขียนข้อมูลเฟิร์มแวร์เป็นส่วนที่ทำงานนี้เมื่อมีการร้องขอ
  • กราฟิกการ์ดเป็นส่วนประกอบสำหรับการแสดงกราฟิกเฟิร์มแวร์เป็นส่วนที่เมื่อมีการร้องขอดึงเอาท์พุท

หากต้องการให้ซับซ้อนยิ่งขึ้น - เมื่อฉันพูดตามที่ร้องขออาจมาจากไดรเวอร์ภายในซอฟต์แวร์อื่น

ตอนนี้ Ipad หรือ iPhone หรืออุปกรณ์ฝังตัวอื่น ๆ ...

  • อุปกรณ์ที่ซื้อจากชั้นวางเพื่อทำหน้าที่ จำกัด (เช่นเรียกใช้ IOS) เป็นเฟิร์มแวร์ที่คุณไม่ได้ (หรือไม่ควร) แก้ไขด้วยตนเอง มันอาจมีชิ้นส่วนของฮาร์ดแวร์อื่น ๆ ภายใน แต่มันถูกนำเสนอเป็นหนึ่งในอุปกรณ์และคุณไม่ได้ซื้อฮาร์ดแวร์แยกต่างหากโดยมีการปรับปรุงใด ๆ ที่มีอยู่จะอัปเดตทุกอย่างที่มองไม่เห็น (เช่นโทรศัพท์คุณไม่ได้ปรับปรุงตัวควบคุม GSM ด้วยตนเอง ตัวแปรและอื่น ๆ คุณมีการอัปเดตที่อาจแก้ไขสิ่งเหล่านี้)

ดังนั้น .... เพื่อสรุป ...

สำหรับฉันฉันจะบอกว่าเฟิร์มแวร์ = ซอฟต์แวร์ที่มาพร้อมกับอุปกรณ์ที่ซื้อซอฟต์แวร์บริสุทธิ์เป็นข้อมูล แต่ฉันมั่นใจว่าคนอื่นอาจพูดว่าแตกต่างกัน!


ฉันหวังว่ามันจะอ่านได้โอเค ... ฉันพบหัวข้อที่น่าสนใจมากที่จะเขียนเกี่ยวกับเรื่องนี้ แต่ฉันใช้เวลากว่าครึ่งชั่วโมงและเร็วมากในตอนเช้า / ฉันเหนื่อยมาก ... และฉันไม่ค่อยชัดเจน เวลาที่ดีที่สุด! ... มีความสุขที่จะตอบคำถามและฉันแค่หวังว่าฉันจะไม่ทำซ้ำตัวเองมากเกินไป!
William Hilsum

0

ฉันต้องการให้คำตอบเพียงไม่กี่คำเฟิร์มแวร์และระบบปฏิบัติการทั้งสองนั้นมีความสำคัญอย่างยิ่งสำหรับระบบดิจิตอลใด ๆ ที่จะเริ่มต้นและทำงานอย่างถูกต้องและเราจะหารือถึงวิธีการใช้งานทั้งสองนี้ สมมติว่าเราได้ปิดสมาร์ทโฟนของเราและเราเปิดหลังจากเปลี่ยนปุ่มเปิดปิดในสมาร์ทโฟนของเราคำสั่งนี้จะไปที่ชิพ BIOS ซึ่งเป็นหน่วยความจำแบบไม่ลบเลือนและมีโปรแกรมเฟิร์มแวร์บางตัว ในทั้งสองทิศทางไปที่ RAM และ ROM จะให้ ram คำสั่งเพื่อถอดรหัสระบบปฏิบัติการจากรอมและอีกคำสั่งไปยัง ROM เพื่อให้สำเนาของระบบปฏิบัติการของเขาไปยัง RAM เพื่อใช้งานส่วนประกอบอื่น ๆ ทั้งหมดของระบบนั้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.