用户态和内核态的划分之前我们讲了用户态虚拟空间里面有几类数据,例如代码、全局变量、堆、栈、内存映射区等。第一种情况是函数的调用,涉及函数栈的改变,主要是改变栈顶指针。用户态虚拟空间分析完毕,接下来我们分析内核态虚拟空间。内核态的虚拟空间和某一个进程没有关系,所有进程通过系统调用进入到内核之后,看到的虚拟地址空间都是一样的。已经被用户态进程占用去了,你作为内核不能使用。
用户态和内核态的划分之前我们讲了用户态虚拟空间里面有几类数据,例如代码、全局变量、堆、栈、内存映射区等。第一种情况是函数的调用,涉及函数栈的改变,主要是改变栈顶指针。用户态虚拟空间分析完毕,接下来我们分析内核态虚拟空间。内核态的虚拟空间和某一个进程没有关系,所有进程通过系统调用进入到内核之后,看到的虚拟地址空间都是一样的。已经被用户态进程占用去了,你作为内核不能使用。