虚拟地址空间
- 每个进程在虚拟内存中有一个独立的虚拟地址空间。虚拟地址空间是进程可以访问的地址范围,它与实际的物理内存地址相分离
- 虚拟地址空间使得程序可以使用一个连续的地址空间,尽管实际物理内存可能是碎片化的或分布不均的
内存映射
- 操作系统将虚拟地址映射到物理地址,这种映射通过页表(page table)完成,页表维护了虚拟地址与物理地址之间的对应关系
- 页表中记录了虚拟地址与物理内存地址的对应关系以及一些尚未映射到物理内存的虚拟地址
分页和分段
...大约 2 分钟
进程是程序中资源分配的最小单位,线程是运行调度的最小单位,一个进程可以包含多个线程,并且这些线程可以共享所在进程中的资源。协程是用户态的轻量级线程,它不受操作系统的调度,是由程序员或者库来控制,协程可以在一个线程中切换执行多个任务,从而实现异步编程的效果。另外,协程的创建和销毁都是在用户态中操作的,并且协程的调度是不需要进行上下文之间的切换,所以协程的开销非常小。
开销大小:进程开销最大,线程次之,协程最小
资源分配上:进程是资源分配的单位,线程和协程是资源调度的单位,线程共享所在进程中的资源,协程共享所在线程中的资源