线程进程知识框架

个人博客,欢迎来撩 fangzengye.com



进程线程

进程

定义

  • 是程序的一次执行
  • 顺序执行所发生的活动
  • 在数据集上运行的过程

特征

		1.动态性
			具有创建、就绪、阻塞、运行、结束的状态
		2.并发性
			指多个程序能在一个时间段内同时执行
		3.独立性
			独立运行、独立获取资源
		4.异步性
			指各自独立、不可预知的速度向前推进

状态

		1.就绪
		2.执行
		3.阻塞
		4.挂起
			4.1用户需要
			4.2父进程请求
			4.3负荷调节
			4.4操作系统的需要

PCB(程序控制块

  • 程序独立运行的标志
  • 实现间断性运行
    PCB记录程序运行的过程信息
  • 提供进程管理所需要的信息
  • 提供进程调度所需要的信息
  • 实现与其他进程的同步与通信

信号量机制

管程机制

	定义
			一组数据结构和一组操作,并且这组操作能同步进程和改变管程中的数据

进程通信

		1.信号量通信缺点
			1.1效率低
			1.2对用户不透明
		2.通信类型
			2.1共享存储器系统l
				2.1.1基于共享数据结构
				2.1.2基于共享存储区
			2.2管道Pipe通信
				2.2.1定义:连接读操作和写操作实现题目通信的共享文件
				2.2.2互斥
				2.2.3同步
				2.2.4确定对方是否存在
			2.3消息传递系统
				2.3.1定义:发送格式化的消息
				2.3.2直接通信方式:直接利用OS提供发送原语
				2.3.3间接通信方式:有共享中间实体
			2.4客户机-服务器系统C/S
				2.4.1套接字
					2.4.1.1包含内容
						目的地址
						使用端口
						传输层协议
						进程所在的网络地址
					2.4.1.2基于文件型:对特殊文件的读写实现通信
					2.4.1.3基于网络型:通过监端口接收信息,和发送信息
					2.4.1.4优势:既可以在本计算机内实现通信,也可以通过网络实现不同计算机通信
				2.4.2远程过程调用
					一种通信协议
				2.4.3远程方法调用
		3.消息传递通信的实现方式
			3.1直接消息传递系统:利用OS所提供的发送命令直接发送给目标
				3.1.1直接通信原语
				3.1.2消息的格式
				3.1.3进程同步方式
				通信链路
			3.2通信信箱:中间实体
				3.2.1信箱的结构:是一种数据结构
					信箱头
					信箱体
				3.2.2信箱通信原语
					信箱的创建与撤销
					消息的发送和接收
				3.2.3信箱的类型
					私用
					公用
					共享

单位

		拥有资源的独立单位
		可调度和分派的基本单位(引入线程之后,由线程接管)

时空开销

		创建进程
		撤销进程
		进程切换

线程

单位

		作为调度和分派的基本单位

具有许多传统进程的特征,又称之轻型进程或进程元,把传统进程称之为重型进程

状态

		执行
		就绪
		阻塞

线程控制块

实现

		1实现方式
			1.1核支持线程
				所有进程都在内核进行
			1.2用户级线程
				1.2.1在用户空间实现
				1.2.2优点
					线程切换不需到内核
					可以对其使用专用的调度算法
					与OS平台无关
			1.3组合方式
		2线程的实现

线程与进程的比较

调度的基本单位

		引入线程之前是进程
		一如线程之后是线程

并发性(线程高)

		引入线程的OS,同个进程的不同线程可以并发,甚至不同进程的不同线程也可以并发

拥有资源(线程少)

		进程独立拥有资源,
		线程拥有一点资源

独立性(线程低)

		创建同一进程的不同线程是为了提高并发性和相互合作
		同一进程的不同线程的独立性低得多

系统开销(线程少)

		进程的系统开销(创建、撤销)明显大于线程的开销

多处理机系统(都支持)

		同一进程的不同线程可以在不同处理机上运行,实现并行执行,提高效率。
		现代多处理机OS一般都引入线程,为了提高效率

Note:
参考书籍:操作系统第四版(西安电子科技大学出版社)

posted @ 2020-12-12 12:49  开源的Boy  阅读(92)  评论(0)    收藏  举报