进程和线程

进程的特点 

资源所有权:一个进程包括一个存放进程映像的虚拟地址空间 

调度/执行:一个进程沿着轨迹执行,可能和其他进程交替

区分多线程环境下的进程

进程 

是操作系统中进行除处理器外的资源分配和保护的基本单位,它有一个独立的虚拟地址空间,用来容纳进程映像(如与进程关联的程序与数据),并以进程为单位对各种资源实施保护,如受保护地访问处理器、文件、外部设备及其他进程(进程间通信)。

多线程环境中(只与资源相关) 

虚拟地址空间存放进程映像 

受保护地对处理器、其他进程、文件和I/O资源的访问

线程 

是操作系统进程中能够独立执行的实体(控制流),是处理器调度和分派的基本单位。线程是进程的组成部分,每个进程内允许包含多个并发执行的实体(控制流),这就是多线程。

一个进程中,可能有一个或多个线程 ²每个线程的相关元素:

 线程执行状态 

在未运行时保存的线程上下文 

一个执行栈 

用于每个线程局部变量的静态存储空间 

与进程内的其他线程共享的对进程内存和资源的访问

线程和进程的区别 

单线程模型中,进程的表示包括它的进程控制块和用户地址空间,以及在进程执行中管理调用/返回行为的用户栈和内核栈 

多线程环境,每个线程都有一个独立的栈,还有独立的控制块用于包含寄存器值、优先级和其他线程相关的状态信息 所有线程共享该进程的状态和资源,驻留在同一块地址空间中,可以访问到相同的数据

线程组成

线程惟一标识符及线程状态信息; 

未运行时保存的线程上下文---可把线程看成是进程中一个独立的程序计数器在操作; 

内核栈,内核态下工作时,保存参数,函数调用时的返回地址等; 

用于存放线程局部变量及用户栈的私有存储区。

转载于:https://my.oschina.net/u/1767433/blog/267770

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值