进程数据结构
进程逻辑地址空间布局
进程运行状态
进程的内核态和用户态只是进程的两种不同运行特权级,进程位于内核态使用的内核堆栈,执行的是内核代码,即可以执行cpu所有特权指令,用户态使用用户堆栈,只能执行普通指令;注意主体对象仍然是进程。
fork新进程发生了什么
在主内存区申请单这一页内存不但存放了进程的数据结构,剩下的部分用于存储进程内核态的栈空间。
对于新进程,此时系统并不为它分配实际物理内存页,而是共享父进程内存页面。只有当父进程或子进程任意一个有写操作时,系统才会为执行写操作进程分配独立内存页