文章目录
- 一、进程与操作系统
- 二、进程与程序
- 三、进程与线程
- 四、虚拟地址空间
一、进程与操作系统
操作系统与硬件的关系 :
操作系统 使用 硬件 提供的资源 , 如 CPU , 内存 , 磁盘 , 网卡 等硬件资源 ;
进程与操作系统之间的关系 :
进程 使用 操作系统 提供的资源 , 如 VFS 虚拟文件系统 , 进程调度模块 , 内存管理模块 , 网络驱动 等资源 , 这些都是 操作系统 根据 实际硬件资源 抽象出来的资源 ;
二、进程与程序
进程 与 程序 :
进程 是 程序代码 及 资源文件 , 在 操作系统 中 运行的实例 ;
程序 本身 只是 代码指令 , 资源 , 数据 的组合在一起的文件 , 在操作系统中运行起来之后 , 才叫做 进程 ;
进程 是 运行的 程序 ;
三、进程与线程
进程 与 线程 : 线程 是 运行的基本单位 , 进程 是 线程 的容器 ;
四、虚拟地址空间
进程 与 内存管理 : 进程 是 内存管理 的基本单元 , 每个进程都是 独立的内存管理单元 ;
在 Linux 内核中 , 进程 又被称为 任务 ;
虚拟地址空间概念 :
每个 进程 作为 独立的内存管理单元 , 其内存单元 称为 虚拟地址空间 ,
进程 的 虚拟地址空间 分为
- 用户虚拟地址空间 ( 每个进程独立拥有 )
- 内核虚拟地址空间 ( 所有进程共享 )
操作系统 中 运行的 所有进程 共享 内核虚拟地址空间 ,
每个 进程 都 拥有 独立的 用户虚拟地址空间 ;