大家好,我是徐良。
不管我们用的是什么操作系统,不管是Windows、macOS还是Linux,里面都安装了很多软件、驱动和固件。但是,这三个概念有什么区别呢?
在朋友圈做了一个小调查,发现很多人不知道他们的关系,所以写了这篇文章给大家简单科普一下。
描述太抽象了。直接看漫画吧。
好了,看完漫画,再来看正式解释。
简单来说,固件、驱动和软件的根本区别在于它们的设计目的。
固件是赋予设备硬件生命的程序驱动程序是操作系统和硬件组件之间的中间人软件可以间接操作硬件固件是写入ROM(只读存储器)的程序。固件作为一个系统最基础更底层,直接控制硬件,比如电脑开机后启动的之一个程序BIOS。它可以与硬件交互并检查它是否有任何错误。
BIOS调用另一个名为boot loader的程序,该程序唤醒硬盘驱动器中休眠的操作系统,并将其放入ram。
我们可以在很多设备上看到固件,包括电脑、手机、遥控器、游戏机、智能手表、u盘以及各种嵌入式系统。甚至电视遥控器都有预装固件,按下按钮就能换电视频道。
驱动程序:驱动程序是添加到操作系统中的一小段代码,它包含关于硬件设备的信息。当计算机程序请求与悠游资源 *** 中的硬件设备交互时,设备驱动程序充当硬件设备和使用它的程序之间的指令转换器。
操作系统并不支持机器上的所有硬件,所以一般来说,硬件厂商要为自己的硬件写驱动。
每个驱动程序都设计用于特定的设备或设备组。在计算机上,驱动程序使用各种总线接口来联系设备。另外,司机一般不会直接与用户互动,所以很多用户根本不知道他们的存在。
驱动程序的开发需要非常小心,因为它直接处理硬件,Youyou.com也处理操作系统。如果设备驱动出现问题,可能会导致系统崩溃,这也是为什么需要专业人员或者团队为设备编写驱动的原因。
但是为什么不把固件做的完美一点,在没有驱动支持的情况下做呢?因为有不同的操作系统,而且这些操作系统对硬件的操作方式完全不同。所以不同操作系统的驱动是不兼容的,因为驱动是为操作系统服务的。
与硬件不同,软件运行在计算机中,看不见摸不着。
操作系统也是一个软件,它为安装在操作系统上的其他软件提供了一个工作空间空。前面提到的设备驱动其实也是软件的一种,只是它有一个更细分的类别,叫做系统软件。
如果用户写了一个软件,想操作硬件(如光驱、u盘等。),他必须通过操作系统提供的接口来实现,而不能直接与硬件交互。
值得注意的是,软件是一个广义的术语。在我们的日常使用中,“软件”一般是指尤优资源网的应用软件,如 *** 、浏览器等。
还有什么不明白的,欢迎在评论区随意交流~
原创不易,欢迎赞,谢谢!