进程控制(一)基本概念
2017-08-10 15:30
190 查看
进程和程序的区别
程序是放到磁盘的可执行文件
进程是一个程序正在执行的实例。每个这样的实例都有自己的地址空间和执行状态。
进程的地址空间
分配给每个进程的内存(memory)由一系列段(segments)组成:
text segment(代码段):包含机器语言指令。通常是只读的、共享的。
initialized data segment(初始化数据段):包含初始化的全局变量和静态(static)变量。
uninitialized data segment (bss segment)(未初始化数据段):包含未初始化的全局变量和静态变量。程序运行之前,系统会把这些变量初始化为0。
heap(堆):程序运行时,为变量动态分配内存。
stack(堆栈):包含堆栈帧(stack frames)。一个堆栈帧被分配给当前的被调函数(called function)。一帧保存的内容有:局部变量、参数(arguments)、返回值。
进程的执行状态
进程的执行状态有三种,分别是:执行态、就绪态、阻塞态。
执行态:进程正在占用CPU。
就绪态:进程已具备一切条件,等待分配CPU。
阻塞态:进程不能使用CPU,若等待的事件发生则可将其唤醒。
进程ID
每个进程都有一个ID(ID是一个正整数),唯一标识了系统中的这个进程。
每个进程都有一个创建它的进程,叫父进程(Parent Process)
进程ID(PID):标识进程的唯一数字
父进程ID(PPID)
启动进程的用户ID(UID)
进程特点
动态性:进程的实质是程序的一次执行过程,进程是动态产生,动态消亡的
并发性:任何进程都可以同其他进程一起并发执行
独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位
异步性:由于进程间的相互制约,进程按各自独立的、不可预知的速度向前推进
结构特征:进程由程序、数据和进程控制块三部分组成.
进程互斥
进程互斥是指当有若干进程都要使用某一共享资源时,任何时候最多允许一个进程使用,其他要使用该资源的进程必须等待,直到占用该资源者释放了该资源为止。
临界资源
操作系统中将一次只允许一个进程访问的资源称为临界资源。
临界区
进程中访问临界资源的那段程序代码称为临界区。为实现对临界资源的互斥访问,应保证诸进程互斥的进入各自的临界区。
进程同步
一组并发进程按一定的顺序执行的过程称为进程间的同步。
具有同步关系的一组并发进程称为合作进程,合作进程间互相发送的信号称为消息或事件。
进程调度:按一定算法,从一组待运行的进程中选出一个来占有CPU运行。
先来先服务调度算法First-Come,First-ServedScheduling(FCFS)
最短作业优先调度Shortest-Job-FirstScheduling(SJF)
基于优先级调度 Priority Scheduling
循环调度Round-RobinScheduling(RR)或时间片轮转法
进程死锁
多个进程因竞争资源而形成一种僵局,若无外力作用,这些进程都将永远不能再向前推进。
程序是放到磁盘的可执行文件
进程是一个程序正在执行的实例。每个这样的实例都有自己的地址空间和执行状态。
进程的地址空间
分配给每个进程的内存(memory)由一系列段(segments)组成:
text segment(代码段):包含机器语言指令。通常是只读的、共享的。
initialized data segment(初始化数据段):包含初始化的全局变量和静态(static)变量。
uninitialized data segment (bss segment)(未初始化数据段):包含未初始化的全局变量和静态变量。程序运行之前,系统会把这些变量初始化为0。
heap(堆):程序运行时,为变量动态分配内存。
stack(堆栈):包含堆栈帧(stack frames)。一个堆栈帧被分配给当前的被调函数(called function)。一帧保存的内容有:局部变量、参数(arguments)、返回值。
进程的执行状态
进程的执行状态有三种,分别是:执行态、就绪态、阻塞态。
执行态:进程正在占用CPU。
就绪态:进程已具备一切条件,等待分配CPU。
阻塞态:进程不能使用CPU,若等待的事件发生则可将其唤醒。
进程ID
每个进程都有一个ID(ID是一个正整数),唯一标识了系统中的这个进程。
每个进程都有一个创建它的进程,叫父进程(Parent Process)
进程ID(PID):标识进程的唯一数字
父进程ID(PPID)
启动进程的用户ID(UID)
进程特点
动态性:进程的实质是程序的一次执行过程,进程是动态产生,动态消亡的
并发性:任何进程都可以同其他进程一起并发执行
独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位
异步性:由于进程间的相互制约,进程按各自独立的、不可预知的速度向前推进
结构特征:进程由程序、数据和进程控制块三部分组成.
进程互斥
进程互斥是指当有若干进程都要使用某一共享资源时,任何时候最多允许一个进程使用,其他要使用该资源的进程必须等待,直到占用该资源者释放了该资源为止。
临界资源
操作系统中将一次只允许一个进程访问的资源称为临界资源。
临界区
进程中访问临界资源的那段程序代码称为临界区。为实现对临界资源的互斥访问,应保证诸进程互斥的进入各自的临界区。
进程同步
一组并发进程按一定的顺序执行的过程称为进程间的同步。
具有同步关系的一组并发进程称为合作进程,合作进程间互相发送的信号称为消息或事件。
进程调度:按一定算法,从一组待运行的进程中选出一个来占有CPU运行。
先来先服务调度算法First-Come,First-ServedScheduling(FCFS)
最短作业优先调度Shortest-Job-FirstScheduling(SJF)
基于优先级调度 Priority Scheduling
循环调度Round-RobinScheduling(RR)或时间片轮转法
进程死锁
多个进程因竞争资源而形成一种僵局,若无外力作用,这些进程都将永远不能再向前推进。
相关文章推荐
- 笔记10: 进程控制的基本概念
- Linux系统进程控制编程(一)————基本概念和函数getpid的使用
- 进程控制理论<一>---基本概念和进程建立
- 进程的基本概念和进程控制
- 基于shiro的权限控制-001基本概念
- 进程 (process)和 线程 (thread)是操作系统的基本概念
- 深入浅出进程与线程的基本概念
- 线程的基本概念及线程与进程的关系
- [linux] C语言Linux系统编程进程基本概念
- 操作系统进程的概念,进程的状态及状态转换,进程控制
- Java--进程和线程基本概念
- 操作系统(四)-------进程的基本概念
- 多线程系列一 进程和线程基本概念
- IMS基本概念之 控制承载通道媒体流的机制(SBLP)
- linux下的基本操作12(进程控制)
- 孙鑫VC学习笔记:第十五讲 (一) 进程和线程基本概念
- 操作系统进程的概念,进程的状态及状态转换,进程控制
- 孙鑫VC学习笔记:第十五讲 进程和线程基本概念
- Git版本控制管理学习笔记3-基本的Git概念