天勤操作系统第二章 进程管理2 线程

//进程切换开销大的原因?
//需要保存和恢复CPU上下文的信息
在这里插入图片描述

线程的属性

1、轻型实体
基本不拥有资源,只有一点能保证其独立运行的资源。如TCB,程序计数器
2、独立调度和分派的单位
3、可并发执行
4、共享进程资源
所有线程共享地址空间(所属进程的地址空间)和所属进程已打开的文件等

线程的实现

内核态和用户态
内核:软件程序,用来访问硬件的软件程序。

内核态和用户态的切换
当一个进程陷入内核代码中执行时,我们就称进程处于内核态
进入内核态的方式主要有三种:系统调用、异常和外围设备的中断

在这里插入图片描述
用户级线程
通过运行时系统来管理线程,运行时系统实际上是一套库函数,存在于用户空间内;
内核管理的还是进程,感觉不到线程的存在
线程切换不需要内核管理

优点:线程切换速度快,调度算法可根据应用程序需要而定制,可运行在任何操作系统上
缺点:内核只能将CPU以进程为单位分配,同一进程中的两个线程就无法分配到不同的CPU。
进程被阻塞,则进程内所有线程都会被阻塞

内核支持线程
内核管理所有线程,并向用户提供API接口来创建线程
内核即维护进程相关数据结构还维护线程相关数据结构
线程切换由内核来支持
调度以线程为单位

优点:在多处理器系统中,内核能够同时调度同一进程中的多

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值