Firmware กับ Software แตกต่างกันอย่างไร

หลายๆคนคงจะสงสัยและอยากรู้ความหมายของคำว่า Firmware ว่าหมายถึงอะไรและมันแตกต่างยังไงกับ Software แบบปกติ

firmware-is-software

จริงๆแล้ว Firmware ก็คือ Software ซึ่งเป็น Software ที่ออกแบบมาเพื่อทำงานในอุปกรณ์อิเล็กทรอนิกส์ (Hardware) เพื่อทำหน้าที่เฉพาะอย่าง ตัวอย่าง Firmware เช่น ใน
hard disk, BIOS ในคอมพิวเตอร์, มือถือ, กล้องถ่ายรูป, เครื่องเล่น mp3, Ecu ในรถยนต์, หรือแม้กระทั้งใน หุ่นยนต์ Curiosity ที่สำรวจดาวอังคารของ nasa

curiosity_self-portrait_at_big_sky_drilling_site

นอกจากนี้ภายใน Firmware อาจจะประกอบไปด้วย Software แบบอื่นเช่นอาจจะมี OS เช่น ในมือถือจะมี Android, IOS หรือ Windows ส่วนในหุ่นยนต์ Curiosity ที่สำรวจดาวอังคารของ nasa ก็มี OS ที่เรียกว่า VxWorks เป็นต้น

โดย Firmware นั้นจะถูกเก็บอยู่ใน Non-volatile memory (Non-volatile memory คือ memory ที่สามารถเก็บข้อมูลได้แม้ไม่มีไฟเลี้ยง เช่น ROM, PROM, EPROM, EEPROM, Flash, FRAM) ซึ่งจะหากเราต้องทำการนำ Firmware ลงไปเก็บไว้จะต้องทำการ Flash Firmware นั้นเอง

arduinodue_front

สรุปก็คือ Firmware นั้นไม่ได้มีความแตกต่างจาก Software แต่กลับกัน Firmware ก็คือชื่อเรียก Software ประเภทหนึ่งที่ทำงานร่วมกับ Hardware นั้นเอง