【操作系统】线程

前言:
进程的概念包含了两个不同的特点:1.资源所有权;2.调度/执行能力;
既然这两个特点是独立的,那么操作系统应该能够独立地处理它们,这就引出了线程的概念。为区分这两个特点,我们把分派的单位称为线程或者轻量级进程,而把拥有资源所有权的单位通常仍称为进程。

线程的概念:
指操作系统在单个进程内支持多个并发执行路径的能力。

线程的优点:
1.在进程中创建线程比直接创建进程快;
2.终止线程比终止进程快;
3.同一个进程内线程切换比进程切换快;
4.线程提高不同执行程序的通信效率。(进程通信需要内核的介入,而进程内多个线程之间共享内存和文件,无需调用内核)

:进程挂起操作涉及把一个进程的地址空间换出内存来为其他进程的地址空间腾出位置,因为一个进程中所有线程共享同一地址空间,所以它们都会同时被挂起。

线程分类:
1.用户级线程:
    在一个纯粹的用户级线程软件中,有关线程管理的所有工作都由应用程序完成,内核意识不到线程的存在。任何应用程序都可以通过使用线程库被设计成多线程程序。线程库是用于用户级线程管理的一个历程包,它包含用于创建和销毁线程的代码、在线程间传递消息和数据的代码、调度线程执行的代码,以及保存和恢复线程上下文的代码。
    优点:
    1.线程切换用不着内核态特权;
    2.调度可以是应用程序相关的;
    3.用户级线程可以在任何操作系统中运行,不需要对底层内核修改以支持用户级线程
    缺点:
    1.用户级线程执行系统调用时,不仅这个线程会被阻塞,进程中所有线程均阻塞。
    2.内核一次只把一个进程分配给处理器,因此一次进程中只有一个线程可以执行。
2.内核级线程:
    纯粹内核级线程中,有关线程管理的所有工作由内核完成,应用程序部分没有进行线程管理的代码。缺点是一个线程传送到另一线程时,需要内核的状态转换。


























  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值