分布式操作中的进程与处理器.ppt
第11章 分布式系统中的进程及处理器 研究分布式系统中线程 怎样组织处理器和进程 分布式系统中的处理器分配和调度 11.1 线程(1) 例:服务器有时因等待磁盘而进入阻塞状态 如果服务器有多个线程 当一个线程睡眠时 第二个线程就可以投入运行 引入多线程 为了得到更大的吞吐量和更高的效率 (a)三个各只有一个线程的进程(b)一个拥有三个线程的进程 线程(2) 线程 一个进程的线程都在同一个地址空间中 拥有自己的程序计数器和堆栈 线程严格按顺序执行 在多处理器系统中,它们真正并行执行 线程可以建立子线程,因等待系统调用而阻塞 当一个线程被阻塞时,同一进程中的另一个线程可以运行 线程(3) 线程共享CPU 可以共享相同的全局变量 共享同一个打开文件集,子进程、定时器、信号等 线程(4) 每个线程都可以存取任何一个虚拟地址 一个线程能够读、写、甚至完全破坏另一个线程的堆栈 在线程之间没有设置保护措施 (1)不可能;(2)没必要 进程通常来自不同的用户,可能会发生冲突 用户建立多个线程是为了协同工作, 而不是冲突 线程 (6) 线程 (8) 线程状态:运行,阻塞,就绪,完成 运行状态,正在使用CPU,处于活动状态 阻塞状态,等待另一线程激活它 就绪状态, 已被调度,只要一轮到就运行 完成状态,已退出,但还没被父线程收回 11.1.2 线程使用 进程中线程的三种组织方式 (a) 调度员/工作者模式 (b) 队列模式 (c) 管道模式 有限状态机(1) 假定不能使用多线程 单线程造成了无法接受的性能就下降 可把服务器看作一个有限状态机 当请求到达时,唯一的线程检查请求信息 如果缓存中数据能满足要求,就接着处理 如果不能满足要求,它给磁盘发送消息 有限状态机(2) 然而,这时它并不进入阻塞状态 仅在表中记下请求的状态,处理下个请求 如果是新的工作请求,就开始新工作 若是磁盘的反馈信息 则从表中取出相关信息,答复请求 有限状态机(3) 不允许发消息后因等答复而进入阻塞 调用原语也必须是非阻塞式调用 对接收和发送的消息 必须在表格中保存或恢复状态 以困难的方式模拟多线程和它们的堆栈 进程以有限状态机方式运行 根据接收作出相应反应 构造服务器的三种方式 模式 特性 11.1.3 线程包的设计问题 给用户的线程的原语集叫线程包 静态线程 在程序编制或编译阶段 就决定使用多少个线程 给每个线程分配固定的堆栈 方式简单,但不灵活 动态线程(1) 在运行中 动态创建和注销线程 需要指定线程主程序(作为指向过程的指针) 堆栈的大小,指定参数,如调度的优先级等 调用通常返回一个线程标识符 标识符在该线程的调用中被用到 进程启动时只拥有一个(隐含)线程 可据需要创建多个线程 线程的终止 当线程完成任务时,可自行退出 或者被杀掉 互斥信号量(1) 多个线程使用同一内存块保存共享的数据 要防止多个线程同时存取同一个数据 经常使用得技术:互斥信号量 互斥信号量(2) 一种小型信号量 信号量在两个状态之一:关锁和开锁 二元信号量(即只有0, 1两个值的信号量) 两种操作被定义为互斥 互斥信号量的改变是一个原子动作 LOCK,试图锁住互斥信号量 如果互斥信号量处于开锁状态 LOCK将成功执行 互斥信号量(3) 在多处理器系统中 多个线程运行在不同的CPU上 如果两个线程在同一个实例上 试图加锁同一个互斥信号量 只有一个线程能赢,别的将失败 如果线程试图加锁已被锁住的互斥信号量 它将被阻塞 互斥信号量(4) UNLOCK操作解锁一个互斥信号量 如果一个或多个线程在一个互斥信号量上等待,只有一个线程解锁,其余的线程继续等待 TRYLOCK操作 该操作试着加锁一个互斥信号量 如果该互斥信号量未被锁定 TRYLOCK返回状态码,说明操作成功 若该互斥信号量是锁着的 TRYLOCK并不阻塞该线程 而返回指示失败的状态码 容易实现 条件变量(1) 一个线程锁住互斥信号量进入临界区 在临界区,发现所需资源已被占用 锁住第二个互斥信号量(与被占资源相关的) 外面的互斥信号量将保持在关锁状态 拥有被占资源的线程不能进入临界区释放它 产生了死锁 如果解锁外面的互斥信号量 别的线程进入临界区,又会引起混乱 条件变量(2) 解决方案:使用条件变量来申请资源 条件变量定义 原子性的自动地等待和解锁互斥信号量 当使用资源的线程释放资源后 它执行 wakeup操作 wakeup 定义:一次可以唤一个线程 也可唤醒特定的条件变量上等待的所有线程 使用WHILE而不用IF 防止线程被唤醒但还
您可能关注的文档
- 老年冠心病的特点46.ppt
- 纳米科学与技术第五章c-2.ppt
- 沁园春--长沙课件ppt.ppt
- 台湾电影简述.ppt
- 第4章__DXP_2004_SP2__原理图设计进阶.ppt
- 大学女性健康讲座.ppt
- 聚焦执行-豪达.ppt
- 智能网原理ISSUE3.2.ppt
- 高二历史总结.ppt
- 【绝对精美03】其他家具制造企业培训会议演讲项目总结项目计划.ppt
- 2026年及未来5年内中国液体氩气行业投资前景及策略咨询研究报告.docx
- 2026年及未来5年内中国黄铜合页行业投资前景及策略咨询研究报告.docx
- 2026年及未来5年内中国竹工艺家具行业投资前景及策略咨询研究报告.docx
- 2025年中国微机数显自动分析仪市场调查研究报告.docx
- 2026年及未来5年内中国微尘白色粉笔行业投资前景及策略咨询研究报告.docx
- 2025年中国微电脑型压胶机市场调查研究报告.docx
- 2026年及未来5年内中国数字化等功游泳训练测试系统行业投资前景及策略咨询研究报告.docx
- 2025年中国圆形花瓶市场调查研究报告.docx
- 2026年及未来5年内中国植物纤维静淀过滤器行业投资前景及策略咨询研究报告.docx
- 2025年中国超音波手套机市场调查研究报告.docx
最近下载
- 平潭澳海上风电场项目可研收口报告2018年4月版本15工程设计概算表.pdf VIP
- 2024年常州信息职业技术学院单招职业技能测试题库(历年真题).docx VIP
- 腹膜透析指南(2025年版).docx VIP
- 党的二十届四中全会PPT课件.ppt VIP
- 产品设计与实训 设计实训.ppt VIP
- 施工现场建筑垃圾减量化专项方案.pdf VIP
- 《数学史》数学的起源.pptx VIP
- 2026年信息科技课标试题及答案.doc VIP
- 本科课件-ArcGIS Engine地理信息系统开发教程(完整).ppt
- 北京通州区2022-2023学年高一下学期期末质量检测英语试卷 含解析.docx VIP
原创力文档

文档评论(0)