当前位置:网站首页>Figure out the difference between firmware, driver and software
Figure out the difference between firmware, driver and software
2022-06-10 04:19:00 【sun007700】
No matter what operating system we use , Whether it's Windows、macOS still Linux , There are many software installed inside 、 Drivers and firmware . however , The three concepts are different ?
I did a little survey in my circle of friends , I found that many people don't know their relationship , So write this article to give you a simple popular science .

The text description is too abstract , Let's go straight to the comics .




Okay , After reading the cartoon , Let's see what the formal explanation is .
simply , The firmware 、 The fundamental difference between drivers and software is their design purpose .
- Firmware is a program that gives life to device hardware
- The driver is the intermediary between the operating system and hardware components
- Software can operate hardware indirectly
1. The firmware
The firmware (Firmware) It's writing ROM ( read-only memory ) Program in , Firmware serves as the most basic and bottom work of a system , Direct control hardware , For example, the first program to start after the computer is powered on BIOS , It can interact with hardware , And check it for any errors .
BIOS Call another program called the boot loader , This program wakes up the operating system sleeping in the hard disk drive and puts it into random access memory (RAM) The job of .
We can see firmware on many devices , Including computers 、 mobile phone 、 The remote control 、 console 、 Intelligent Watch 、USB Drivers and various embedded systems . Even the TV remote control has a pre installed firmware , You can change the TV channel when you press the button .
2. drive
drive (Drive): A driver is a small piece of code added to the operating system , It contains information about hardware devices . When a computer program requests to interact with a hardware device , The device driver acts as a converter of instructions between the hardware device and the program using it .
The operating system does not support all the hardware on the machine , So generally speaking, hardware manufacturers should write drivers for their own hardware .
Each driver is designed to work for a particular device or group of devices . On the computer , The driver uses various bus interfaces to contact the device . Besides , Drivers generally do not interact directly with users , So many users are completely unaware of their existence .
Driver development requires great care , Because it deals directly with hardware , It also deals with the operating system . If there is a problem with the device driver , May cause system crash , That's why you need a professional or team to write drivers for your devices .
But why not put Firmware Well done , It doesn't need driver support ? Because there are different operating systems , These operating systems operate the hardware in a completely different way . Therefore, drivers of different operating systems are incompatible , The reason is that drivers serve the operating system .
3. Software
Unlike hardware , The software runs in the computer , Can't see, can't touch .
The operating system is also a software , It also provides a workspace for other software installed on the operating system . The device driver mentioned earlier is actually a kind of software , But it has a more subdivided category , It's called system software .
If the user writes a software , Want to operate the hardware ( Like an optical drive 、U Plate, etc. ), It must be implemented through the interface provided by the operating system , And can't interact directly with the hardware .
It's worth noting that , Software is a broad term . What we say in daily use 「 Software 」 Generally refers to application software , such as : WeChat ,QQ, Browsers and so on .
What else don't understand , Welcome to the comment area ~
边栏推荐
- 7-电脑必备工具
- tensorflow 中的 cross_entropy
- [in depth study of 4g/5g/6g topic -26]: 5g NR startup process 4.4 - scheduling of RRC connection response message msg4 (rrcsetup authorization) and detailed explanation of message content
- [Android L]SEAndroid增强Androd安全性背景概要及带来的影响
- 7- computer essential tools
- [cloud native | kubernetes] in depth understanding of pod (VI)
- [深入研究4G/5G/6G专题-31]: 5G NR开机流程5.2 - UE Attach流程(Registeration Request/Accept/Complete)
- How to view Scala source code in idea
- [机缘参悟-22]:鬼谷子-闭藏之术,适时收藏自己的锋芒,在职场、商务、商业活动中保护自己
- Redisson YML configuration error
猜你喜欢

3- programming language -- golang website learning

FastApi-15-文件上传-3

Online text string batch replacement tool

tensorflow 中的 cross_entropy

idea中怎样编写Scala代码

“阿里/字节“大厂自动化测试面试题一般会问什么?以及技巧和答案

Golang learning 6: file operation in

As a software testing engineer, give advice to young people (Part 1)

Lit (I): create components

超好用的 Chrome 插件!
随机推荐
Design product use
[机缘参悟-21]:以系统架构的角度重新思考技术、管理、打工、创业、投资
Use 80% of the charts to meet daily work, and use the remaining 20% of the charts to build core competitiveness!
JDBC 入門示例
[learn FPGA programming from scratch -16]: quick start chapter - operation steps 2-4- basic syntax of Verilog HDL language description language (both software programmers and hardware engineers can un
[深入研究4G/5G/6G专题-28]: 5G NR开机流程4.6 - MSG5 (RRCSetupComplete)消息的调度
On the night of the joint commissioning, I beat up my colleagues
[graduation project 2] intelligent range hood system based on stm32
PySimpleGUI经典实践之:这个汉字怎么读?
Descriptor ready condition
Jmeter测试TCP百万连接
[science and technology specialty-1]: overview and advantages of science and Technology Specialty Students
[understanding of opportunity -19]: Guiguzi - Feihe chapter - yin and yang are contradictions. They are the basic attribute of everything and one of the foundations of Guiguzi's philosophy
Using VBA's WebBrowser control to realize single sign on (SSO) in Excel
[从零开始学习FPGA编程-13]:快速入门篇 - 操作步骤3(功能仿真)-2-Mentor HDL仿真工具modelsim工具的简介、功能仿真的基本原理
Online text string batch replacement tool
Golang learning 6: file operation in
这些编程语言老了,差不多死透了,年轻人不能碰
Pytorch CPU/GPU 安装方法。
[in depth study of 4g/5g/6g topic -28]: 5g NR startup process 4.6 - msg5 (rrcsetupcomplete) message scheduling