- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第一篇
操作系统-多线程
什么是线程?
线程是执行的整个过程的代码流,包括自己的程序计数器,系统寄存器和堆栈。
线程一般称为轻量级进程。线程提供了法,以改善通过并行应用性能。线程代
表一个软件的方法来减少开销,线程改进操作系统的性能相当于一个经典的过程。
每个线程属于一个进程,没有线程可以在进程之外。每个线程都代表一个单独的流程
在实施,在网络服务器和Web服务器已成功应用。他们还提供了对共享内存的多处理
器应用程序的并行执行的一个合适的基础。如下图显示了单线程和多线程程序的工作。
进程和线程之间的区别
S.
进程线程
N.
1进程属于重量级或资源密集型线程是轻量级,使用较小资源的一个进程
2切换进程需要与操作系统互动线程切换不需要与操作系统交互
在多个处理环境中的每个进程执行相同的代所有线程可以共享相同的一组打开的文
3
码,但有它自己的器和文件资源件,子进程
如果一个进程被再没有其他进程可以执当一个线程被阻塞并等待,在相同任务的
4
行,必须等到第一个进程畅通第二线程可以运行.
5进程不使用的资源多线程的进程中使用更少的资源
一个线程可以读,写或修改另一个线程的
6在多个进程的每个进程独立于其他操作
数据
线程的优点
•线程减少上下文切换时间。
•一个进程中的线程提供并发功能。
•沟通高效。
•经济-它更经济,创建和上下文切换线程。
•多处理器架构,以更大的规模和效率的利用。
线程类型
线程是在以下两种方式实现
•用户级线程-用户管理线程
•内核级线程-操作作用于内核,操作系统的系统管理线程。
用户级线程
在这种情况下,应用程序管理线程管理内核是不知道的线程的存程库包含
的代码创建和销毁线程,传递消息和数据之间,调度线程执行,并保存和恢复线程上
下文。该应用程序开始于一个单独的线程,并开始在该线程运行。
优势
•线程切换不需要内核模式。
•用户级线程可以在任何操作系统上运行。
•调度可以是特定的用户级线程的应用程序。
•用户级线程可以快速创建和管理。
劣势
•在一个典型的操作系统中,大多数系统调用是阻塞。
•多线程应用程序不能利用多处理器的优势。
内核级线程
在这种情况下,线程管理由内核完成。有一个在应用领域没有线程管理代码。内
核线程直接由操作系统支持。任何应用程序都可以进行编程,以便多线程的。所有的
应用程序中的线程都在一个单一的进程中提供支持。
内核的进程中整体的上下文信息和个人进程中的线程。调度内核的基础
是一个线程。内核执行线程的创建,调度和管理在内核空间。内核线程通常是较慢的
创建和管理比用户线程。
优势
•内核可以同时从多个进程调度在同一进程的多个线程。
•如果在进程中的一个线程被阻塞时,内核可以调度同一进程的另一个线程。
•内核例程自己可以多线程的。
劣势
•内核线程通常是较慢的创建和管理相比用户
文档评论(0)