1。物理内存和虚拟内存
物理内存只有内核才可以访问。
因为 *** 作系统的进程与进程之间是共享CPU和资源的,为了防止进程之间互相影响就有了一个对主存的抽象概念:虚拟内存。虚拟内存使得应用程序以为自己有一块连续独立的存储空间,实际上是多个物理内存碎片。而虚拟内存和物理内存的对应关系存放在一个叫页表的地方。每个进程都有自己独立的页表。下图为上述三个概念的关系。
现在来总结下进程申请并访问物理内存的过程:
2。内核空间和用户空间
*** 作系统的核心是内核,独立于普通的应用程序。可以访问受保护的内存空间也可以访问硬件设备。为了保护内核安全,所以将虚拟内存分为内核空间和用户空间。 内核模块运行于内核空间,对应的进程处于内核态。用户模块运行于用户空间,对应的进程处于用户态。
3。Linux IO 读写的方式
轮询/IO中断/DMA
3.1 IO中断。 一个图就可以懂
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)