Memory 我们什么时候需要设备驱动程序

Memory 我们什么时候需要设备驱动程序,memory,operating-system,device-driver,disk,Memory,Operating System,Device Driver,Disk,我注意到,寄存器、主存和缓存不需要设备驱动程序,而磁盘需要设备驱动程序。任何人都可以解释一下原因吗?您还会发现操作系统也有一些知识,例如如何驱动VGA。操作CPU是在给定系统上实际运行的基础,因此操作系统必须知道这一点。其他一些功能也是必不可少的,操作系统包含访问这些设施的内置功能 但是,有些功能是可选的。操作系统开发人员构建了一种抽象的加载任意驱动程序的方式,通常与特定类型的子系统(如USB或磁盘)相匹配,而不是让开发人员选择“嵌入”或“硬”或“更糟”,而是提供所有嵌入的驱动程序,使操作系统变

我注意到,寄存器、主存和缓存不需要设备驱动程序,而磁盘需要设备驱动程序。任何人都可以解释一下原因吗?

您还会发现操作系统也有一些知识,例如如何驱动VGA。操作CPU是在给定系统上实际运行的基础,因此操作系统必须知道这一点。其他一些功能也是必不可少的,操作系统包含访问这些设施的内置功能

但是,有些功能是可选的。操作系统开发人员构建了一种抽象的加载任意驱动程序的方式,通常与特定类型的子系统(如USB或磁盘)相匹配,而不是让开发人员选择“嵌入”或“硬”或“更糟”,而是提供所有嵌入的驱动程序,使操作系统变得庞大。这意味着任何人都可以添加功能。通常情况下,为自己的内置驱动程序遵循此架构也是正常的,以保持清洁,因此如果不需要,也不必使用这些驱动程序


您还将发现,只要有可能,许多内核的代码设计都是与CPU无关的。这是编译时的事情。例如,Linux有一个arch/目录,其中包含特定于体系结构的代码,然后抽象到内核的其余部分,因此,例如,块存储层不需要为每个体系结构重新编写。Windows NT最初的目标是DEC Alpha,例如x86。

您还会发现操作系统也有一些知识,比如如何驱动VGA。操作CPU是在给定系统上实际运行的基础,因此操作系统必须知道这一点。其他一些功能也是必不可少的,操作系统包含访问这些设施的内置功能

但是,有些功能是可选的。操作系统开发人员构建了一种抽象的加载任意驱动程序的方式,通常与特定类型的子系统(如USB或磁盘)相匹配,而不是让开发人员选择“嵌入”或“硬”或“更糟”,而是提供所有嵌入的驱动程序,使操作系统变得庞大。这意味着任何人都可以添加功能。通常情况下,为自己的内置驱动程序遵循此架构也是正常的,以保持清洁,因此如果不需要,也不必使用这些驱动程序


您还将发现,只要有可能,许多内核的代码设计都是与CPU无关的。这是编译时的事情。例如,Linux有一个arch/目录,其中包含特定于体系结构的代码,然后抽象到内核的其余部分,因此,例如,块存储层不需要为每个体系结构重新编写。Windows NT最初以DEC Alpha和x86为目标。

这并不是说“核心”系统组件的辅助功能不存在驱动程序。作为CPU电源和热管理驱动程序的好例子。@Marko-true。它只是抽象,每次你想替换任意一点功能时都会使用它们——即Windows所称的硬件抽象层。这并不是说“核心”系统组件的辅助功能不存在驱动程序。作为CPU电源和热管理驱动程序的好例子。@Marko-true。它只是抽象,每次你想替换任意一点功能时都会使用它们——也就是Windows所称的硬件抽象层。