图解固件、驱动、软件的区别 您所在的位置:网站首页 ios136固件 图解固件、驱动、软件的区别

图解固件、驱动、软件的区别

#图解固件、驱动、软件的区别| 来源: 网络整理| 查看: 265

不管我们使用什么操作系统,无论是 Windows、macOS 还是 Linux ,里面都安装了许多软件、驱动程序和固件。但是,这三者概念有区别呢?

文字描述太抽象了,我们直接来看漫画吧。

好了,看完漫画,我们再来看正规的解释是怎样的。

简单来讲,固件、驱动程序和软件之间的根本区别在于它们的设计目的。

固件是赋予设备硬件生命的程序驱动程序是操作系统和硬件组件之间的中间人软件可以间接操作硬件1. 固件

固件(Firmware)就是写入 ROM (只读存储器)中的程序,固件担任着一个系统最基础最底层工作,直接控制硬件,比如计算机上电后第一个启动的程序 BIOS ,它可以与硬件交互,并检查它是否有任何错误。

BIOS 调用另一个称为引导加载程序的程序,该程序执行唤醒在硬盘驱动器内休眠的操作系统并将其放入随机存取存储器 (RAM) 的工作。

不管学习什么技术,资源都是必不可少的。优质资源会助你一臂之力,让你快速入门。当年我自学使用的优质资源,我也全部共享出来,涵盖Linux、云计算、虚拟化、OpenStack、Docker、K8S、网络、Python、Go等书籍和视频,访问以下链接无套路领取,祝学业有成!

10T学习资源大放送,涵盖Linux、虚拟化、容器、云计算、网络、Python、Go等书籍和视频

我们可以在许多设备上看到固件,包括计算机、手机、遥控器、游戏机、智能手表、USB 驱动器和各种嵌入式系统。即使是电视遥控器也有一个预装的固件,可以实现你按下按钮的时候电视换台操作。

2. 驱动

驱动(Drive):驱动程序即添加到操作系统中的一小块代码,其中包含有关硬件设备的信息。当计算机程序请求与某个硬件设备交互时,设备驱动程序充当硬件设备与使用它的程序之间指令的转换器。

操作系统并不支持机器上的所有硬件,所以一般来讲硬件厂商都要为自己的硬件编写驱动程序。

每个驱动程序都旨在为特定或一组设备工作。在计算机上,驱动程序使用各种总线接口来联系设备。此外,驱动程序一般不直接与用户交互,所以很多用户完全不知道它们的存在。

驱动程序的开发需要非常小心,因为它直接与硬件打交道,同时也与操作系统打交道。如果设备驱动程序出现问题,可能会导致系统崩溃,这就是为什么需要专业人员或团队来为设备编写驱动程序的原因。

但是为什么不把 Firmware 做的很完美,做的不需要驱动支持呢?因为有不同的操作系统,而这些操作系统对于操作硬件的方式完全不同。所以不同操作系统的驱动是不能兼容的,原因就是驱动是为操作系统服务的。

3. 软件

与硬件不同,软件是运行在电脑里,看不见摸不着。

操作系统也是一个软件,并且为安装在操作系统上的其他软件提供了工作空间。前面提到的设备驱动程序其实也是一种软件,不过它有个更细分的种类,称为系统软件。

如果用户编写了一个软件,想要操作硬件(比如光驱、U盘等),他必须通过操作系统提供的接口来实现,而无法直接与硬件交互。

值得注意的一点是,软件是一个广义的术语。我们在日常使用中所说的「软件」一般是指应用软件,比如:微信,QQ,浏览器等等。

最后根据我的从业经验及与同行大佬的交流,推荐一些Linux系列电子书籍,访问下方链接无套路获取:Linux系列学习书籍免费送!

欢迎关注我! @开源Linux

我的个人网站,满满的都是干货:一切与IT有关的教程

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有