我们知道,操作系统中的每个进程都在其自己的专用内存空间中运行,并且虚拟地址通过页表映射到物理内存。
Sample Private memory Space of a process
此私有内存空间分为两部分:(系统/内核空间)和(用户空间)。
据我所知,我将认为整个私有存储器空间(包含用户和进程的内核空间)是对于每个过程是唯一的;我的进一步研究证实,这对于用户空间是正确的,但是,阅读Windows-Internal本书后,我发现本书的以下两段对这一假设提出了挑战:
“虽然每个Windows进程具有其自己的专用存储器空间,内核模式的操作系统和设备驱动程序代码共享单个虚拟地址空间”
“ Windows与大多数UNIX系统相似,因为它是一个整体操作系统,因此大部分操作系统和设备驱动程序代码共享相同的内核模式受保护的内存空间。”
哪个假设是正确的?这是否意味着所有进程的专用内存空间的内核空间都相同?这意味着所有进程中都存在相同的内核空间私有内存吗?
谢谢