导图社区 王道408进程与线程 中
王道408进程与线程(中)思维导图,线程是为了减小程序在并发执行时所付出的时空开销,提高操作系统的并发性能,引入线程。本图分享了进程的组织、进程的通信、多线程模型的知识。
王道408处理机调度(下)--经典的调度算法,内容有:先来先服务(FCFS)、短作业优先(SF)、优先级调度算法、高响应比调度算法、时间片轮转调度算法、多级队列调度算法、多级反馈队列调度算法。
王道408计算机系统概述--操作系统的发展与分类,操作系统是负责协调软硬件等计算机资源的工作,为上层用户,应用程序提供方便的接口软件系统。
王道进程的切换和同步与互斥的思维导图,任何进程的切换都是在操作系统内核的支持下运行的;同步是为了合作完成某任务而建立的多个进程,所以要相互进行通信同步;互斥是当一个进程访问临界资源的时候,其他进程不能访问。
社区模板帮助中心,点此进入>>
互联网9大思维
安全教育的重要性
组织架构-单商户商城webAPP 思维导图。
个人日常活动安排思维导图
域控上线
西游记主要人物性格分析
17种头脑风暴法
python思维导图
css
CSS
进程与线程 中
进程的组织
进程控制块PCB
进程描述信息
进程标识符PID:标志各个进程,每个进程都有唯一的一个进程标识符。
用户标识符UID:进程归属的用户,主要为共享和保护服务。
进程控制和管理信息
进程当前状态
进程优先级
主要是这两个,其余有印象即可
代码运行入口地址
程序的外存地址
进入内存时间
处理机占用时间
信号量使用
资源分配清单
用于说明有关内存地址空间或虚拟地址空间的状况,所打开文件列表和使用的输入/输出设备信息
代码段指针、数据段指针、堆栈段指针、文件描述符、键盘、鼠标。
处理机相关信息
也称处理机的上下文,主要指处理机中寄存器的值。
常用的PCB组织方式
链接方式
将同一状态的PCB链接成队列
索引方式
将同一状态的PCB组织在一个索引表中。
程序段
能被进程调度程序调度到CPU执行的程序代码段
数据段
进程对应的程序加工处理的原始数据或程序执行时缠身根的中间或最终结果。.
进程的通信
共享存储
概念:
通信进程之间存在一块可以被直接访问的共享空间,通过对这片共享空间进行写,读操作实现进程之间的信息交换
低级方式:
基于数据结构共享
高级方式:
基于存储区共享
操作系统只负责为通信进程提供可共享使用的存储空间和同步互斥工具,数据交换则由用户自己安排读/写指令完成
消息传递
进程间的数据交换是以格式化的消息为单位的,进程通过系统提供的发送消息和接受消息的两个原语进行数据交换
直接通信方式:
发送过程直接发送消息和接受进程,并将它挂在接收进程的消息缓冲队列上,接受进程从消息缓冲队列中取得消息
间接通信方式:
发送过程把消息发送给某个中间实体,接收进程从中间实体获得消息。
管道通信
发送进程以字符流形式将大量数据送入写管道,接收进程从管道中接收数据
当管道写满时,写进程的write()系统调用将被阻塞,等待读进程将数据提取走
当读进程将数据全部取走后,管道变空,此时读进程的read()系统调用将被阻塞。
提示:
管道半双工通信,不可以同时读和写。
线程概念和多线程模型
概念
为了减小程序在并发执行时所付出的时空开销,提高操作系统的并发性能,引入线程。
线程与进程的比较
调度
传统中进程是资源和独立调度的基本单位
引入线程后,线程是独立调度的基本单位,进程是资源的基本单位
不同进程的线程切换会引起进程切换
拥有资源
进程是资源分配的基本单位
并发性
引入线程后,进程可以并发执行,多个线程之间也可以并发执行,提高了系统的吞吐量。
系统开销
同一进程的线程切换要比进程切换开销小的多。
地址空间和其他资源
进程的地址空间之间相互独立,统一进程的各进程之间共享进程的资源,某进程的线程对其他进程不可见。
通信方面
进程间通信需要进程同步和互斥手段的辅助,保证数据的一致性。
线程间可以直接读/写进程程序段来进行通信。
线程属性
1.不拥有系统资源,拥有唯一标识符和线程控制块。
2.不同的线程可以执行相同的程序,同一个服务程序被不同用户调用时,操作系统将其创建为不同线程
3.同一进程的线程共享该进程拥有的全部资源。
4.线程是处理机的独立调度单位
5.线程也有生命周期,阻塞,就绪,运行等状态。