9个回答

一直有个疑问,为什么Windows设备管理器里面没有“内存”这个设备?

知乎用户
9个点赞 👍

其实是有的,只是换了一个你不认识的样子,所以你不知道而已。

这是个挺有意思的问题,你可以想一下,Windows设备管理器是用来干嘛的呢?

其实Windows设备管理器是古早遗留的一个产物了,当初电脑系统还没有如今这么厉害,很多设备是需要专门去使用对应软盘安装驱动才能进行链接,让设备识别和使用的。

Windows 系统当年做了一个很厉害的事情,那就是集成了很多设备驱动,于是很多相关的设备,直接只需要插入Windows电脑就能用了。

这些设备呢,就通过Windows设备管理器来管控,提供统一的Windows驱动包管理模式,并且提供统一的设备属性模型。

所以说,需要依赖于驱动程序链接的设备,都会出现到这里。

那么,为什么Windows设备管理器里面没有“内存”这个设备呢?

因为,目前全部 Windows 系统内存的通信,都是通过CPU直接寻址存储器的原理来实现的,系统吧“内存”这种 DRAM 存储器是当作自身硬件来使用的。

内存是按照标准规格和协议设计与制造的,比如 DDR4, DDR5,主板直接就有相关内存支持的实现,而且内存设计也是设计成即插即用设备,操作系统启动自检的时候就一个所依赖的必须硬件,在操作系统层面,就已经完全支持读写内存所需要的程序了,所以不需要额外的驱动程序,自然也就没有必要当作一个外来设备,专门做一个模型类,放到设备管理器里做设备集成统一管理和驱动管理了。

所以说,内存本质上就是主板的一系列的寻址空间,CPU通过寻址来找到这个存储单元,也就是一个主板的母版资源。

另外,设备管理器里出现CPU,主要原因是因为CPU不像内存那么单纯,只是负责存储读写。

CPU,由制造商提供了一些额外的模块,实现一些自定义的监控或者信号输出,比如电源管理模块,它不是驱动,但是它可以进设备管理器,假装是一个驱动的样子。

这里的 intelppm.sys 不是驱动,是 Intel Processor Power Management

前面说了,设备管理器里也是能找得到内存的,在哪里呢?

打开设备管理器,按类型查看资源,你就能看见作为母版资源的内存了。

而且还能直接看见前面中括号包起来的内存地址。

CPU 和内存是过BIOS统一接口处理的,微软专门对接好x86下的一致的接口就可以了,不需要暴露出去用驱动程序。

假如哪天,我们的计算机结构发生了变化,不再是冯诺依曼机,存储单元和计算单元用了另外的方式重新组织,并且不再是作为寻址空间的母版资源,或许设备管理器,又会有新的组织方式了吧?

到时候,或许就会有 "内存”这种单独的类目了。

至少现阶段,按照咱发展的计算机底层架构,以及Windows系统的组织方式来说,大概率不会有。

发布于 2024-03-19 18:07・IP 属地广东
维生素P
自由评论 (0)
分享
Copyright © 2022 GreatFire.org