进程的虚拟地址空间分为两部分:内核空间和用户空间
每个进程都有各自的虚拟地址空间,这个是说用户空间,而内核空间是所有进程共享的,内核在初始化时,就创建内核空间的映射(因为所有进程共享,有一份就够了),并且,采用的就是线性映射,所谓线性, 就是内核一整块内核空间页, 一对一地映射到一块物理内存上。
当程序进行系统调用时,产生中断,从用户态切换到内核态,切换用户栈为内核栈,将用户栈信息放到内核栈里,中断结束后恢复现场,这里内核空间的资源都是共享的。
进程的虚拟地址空间分为两部分:内核空间和用户空间
每个进程都有各自的虚拟地址空间,这个是说用户空间,而内核空间是所有进程共享的,内核在初始化时,就创建内核空间的映射(因为所有进程共享,有一份就够了),并且,采用的就是线性映射,所谓线性, 就是内核一整块内核空间页, 一对一地映射到一块物理内存上。
当程序进行系统调用时,产生中断,从用户态切换到内核态,切换用户栈为内核栈,将用户栈信息放到内核栈里,中断结束后恢复现场,这里内核空间的资源都是共享的。
风尘仆仆我会化作天边的晚霞~
无论是何种体系结构,虚拟
文章目录一、虚拟地址空间布局架构二、用户虚拟地址空间划分一、虚拟地址空间布局架构在 64 64 64 位的 Linux 操作系统中 , " ARM64 架构 " 并 不支持
本文转自多个博客,以及最后有我的总结。我没有单独从头到尾写一个总结置Large-Add.
举报文章
请选择举报类型
补充说明
0/200
上传截图
格式支持JPEG/PNG/JPG,图片不超过1.9M