收藏 分享(赏)

计算机操作系统操作系统 (11).pdf

上传人:职教中心 文档编号:13704668 上传时间:2022-10-11 格式:PDF 页数:13 大小:1.01MB
下载 相关 举报
计算机操作系统操作系统 (11).pdf_第1页
第1页 / 共13页
计算机操作系统操作系统 (11).pdf_第2页
第2页 / 共13页
计算机操作系统操作系统 (11).pdf_第3页
第3页 / 共13页
亲,该文档总共13页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、第四章 线程(一)什么是线程?内容线程引入原因线程 概念线程和进程线程结构线程优点 Windows线程 Linux线程2引入原因 性能 操作进程系统开销大 Unix的轻型进程 (fork) 应用 进程代码并发执行的需求 例子: PPT编辑(输入 /拼写检查 /存盘) 硬件 多核处理器 加速进程的运行3Word进程拼写检查文件保存格式排版输入文字线程( Thread) 线程 可在 CPU上运行的基本执行单位 进程内的一个代码片段可以被创建称为一个线程 线程状态:就绪、运行、等待等 线程操作:创建、撤销、等待、唤醒等 进程依旧是资源分配的基本单位 线程自己不拥有系统资源,通过进程申请资源 传统进程

2、: 重型进程 (heavy weight process) 只有一个线程:主线程 单线程模型线程和进程代码进程包含线程线程是进程中的一段代码资源进程是资源分配基本单位线程不拥有资源,共享使用进程的资源调度同一进程中的线程切换不会引起进程切换线程是基本调度单位切换进程:重量级上下文切换,代价大线程:轻量级切换,代价小生命期进程撤销会导致它的所有线程被撤销线程撤销不会影响进程线程结构 代码和数据:来自进程 各类资源:来自进程 线程控制块( Thread Control Block, TCB) 线程 ID 程序计数器 PC 寄存器集 栈空间6进程线程线程TCBTCBPCBWindows 线程单线程和

3、多线程8单线程 一个进程只有一个线程 早期操作系统多线程 一个进程有多个线程 支持线程的操作系统 响应度高 线程创建开销小 例子: Web服务器 资源共享 进程中的线程可以共享进程资源 经济性 线程创建、上下文切换比进程快 Solaris:创建线程比进程快 30倍,线程切换比进程切换快 5倍 MP体系结构的运用 一个进程中的线程在不同处理器上并行运行线程优点Web服务器10浏览器 WEB服务器http:/./index.htm.http:/1.jpghttp:/2.jpg1.jpg data2.jpg data线程 1线程 2线程 3Windows 线程 操作系统支持线程 线程主要数据结构 :

4、 执行线程块 ETHREAD Executive thread block对应程序地址指向 KTHREAD指针内核空间 核心线程块 KTHREAD Kernel thread block线程调度和同步信息内核空间 线程环境块 TEB Thread environment block用户空间的数据结构,线程本地存 储Linux 线程 Linux 2.2版引入线程通过 clone() 系统调用创建线程 类似 fork Linux只支持克隆线程用术语“任务”表示进程和线程 ,一般不用“线程”用户线程: PThreadsClone创建 进程或者线程 Clone可有 选择继承 父进程的 资源 不和 父进程 共享int clone(int (*fn)(void *), void *child_stack, int flags, void *arg) fn: 函数 指针 ,指向 一个函数体,即想要创建进程的静态 程序 child_stack:给 子进程分配系统堆栈的指针 Flags:要 复制资源的标志, 描述从 父进程 继承的 资源 13

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报