进程和线程的学习小结(一)
2013-09-25 17:24
211 查看
进程:
进程是程序在并发环境中执行的过程,(传统的进程)作为资源申请和调度的基本单位。程序是静态的,本身作为一种软件资源长期的保存着;而进程是动态的,是程序的一次执行过程,进程不仅包括相应的程序和数据,还包括一系列描述其活动的情况的数据结构(PCB:含有进程的描述信息和控制信息,是进程动态性的集中反映)。
进程的基本状态有运行状态(使用cpu),就绪状态(等待cpu),阻赛状态(等待某事件发生)。
进程的基本特性有:动态性(程序的执行过程,有生,死,活动,停顿等不同的状态),并发性(多个进程可以在同一内存,同一时间段内得以运行),调度性(系统中申请资源的单位,也是被调度的单位)。
线程:
传统的进程作为资源申请和调度的基本单位负载较重, 现代很多操作系统将资源分配和调度运行的两个属性分派给两个实体,进程只作为资源的拥有者(资源分配的基本单位是进程),而调度和运行赋予给线程来实现。
故线程是进程中实施调度和分派的基本单位。每个线程有个thread数据结构即线程控制块,用于保存自己私有的信息。线程是在某个进程内执行,它需要依赖与进程所持有的资源(如代码段,数据段等)。
线程和进程的关系:
一个进程可以有多个线程,但至少有一个线程;而一个线程只能在一个进程的地址空间内活动(进程拥有线程)。
资源分配给进程,同一进程中的所有线程共享该进程的所以资源。
处理机(CPU)是分配给线程的,真正在处理机上运行的是线程。
线程在执行过程中需要协作同步。不同进程的线程间需利用消息通信的办法来实现同步。
进程是程序在并发环境中执行的过程,(传统的进程)作为资源申请和调度的基本单位。程序是静态的,本身作为一种软件资源长期的保存着;而进程是动态的,是程序的一次执行过程,进程不仅包括相应的程序和数据,还包括一系列描述其活动的情况的数据结构(PCB:含有进程的描述信息和控制信息,是进程动态性的集中反映)。
进程的基本状态有运行状态(使用cpu),就绪状态(等待cpu),阻赛状态(等待某事件发生)。
进程的基本特性有:动态性(程序的执行过程,有生,死,活动,停顿等不同的状态),并发性(多个进程可以在同一内存,同一时间段内得以运行),调度性(系统中申请资源的单位,也是被调度的单位)。
线程:
传统的进程作为资源申请和调度的基本单位负载较重, 现代很多操作系统将资源分配和调度运行的两个属性分派给两个实体,进程只作为资源的拥有者(资源分配的基本单位是进程),而调度和运行赋予给线程来实现。
故线程是进程中实施调度和分派的基本单位。每个线程有个thread数据结构即线程控制块,用于保存自己私有的信息。线程是在某个进程内执行,它需要依赖与进程所持有的资源(如代码段,数据段等)。
线程和进程的关系:
一个进程可以有多个线程,但至少有一个线程;而一个线程只能在一个进程的地址空间内活动(进程拥有线程)。
资源分配给进程,同一进程中的所有线程共享该进程的所以资源。
处理机(CPU)是分配给线程的,真正在处理机上运行的是线程。
线程在执行过程中需要协作同步。不同进程的线程间需利用消息通信的办法来实现同步。
相关文章推荐
- 关于学习进程控制和线程控制的小结
- 操作系统学习(二)-- 操作系统之进程与线程
- 进程与线程的学习(-)
- Linux 线程与进程的学习
- Visual C++学习总结——进程或线程与指定CPU绑定
- JAVA学习37_同一进程中的线程究竟共享哪些资源
- Python线程与进程——学习笔记
- Java学习笔记之进程和线程
- python进程和线程学习
- 学习笔记——进程和线程的区别
- 线程/进程/协程知识学习
- Python学习笔记-进程与线程-1
- 线程学习笔记【1】----进程、线程概念及创建线程
- 操作系统基础学习之进程线程
- Python基础学习(5)网络编程socket、文件上传、粘包问题、socketserver、IO多路复用、线程与进程、进程池、线程池、上下文管理、协程
- python学习笔记(十) - 进程和线程
- 进程间、线程间通信方式小结
- OS学习笔记二: 进程线程模型
- 现代操作系统学习之进程与线程
- JavaSE 学习参考:进程和线程