网站mssql 导出数据,图片制作在线生成器免费版,开发什么网站好,江西省城乡住房建设部网站#x1f3a5; 个人主页#xff1a;Dikz12#x1f4d5;格言#xff1a;那些在暗处执拗生长的花#xff0c;终有一日会馥郁传香欢迎大家#x1f44d;点赞✍评论⭐收藏 目录 进程
进程在系统中是如何管理的 进一步认识PCB
线程 能否一直增加线程数目来提高效率
进程和线程… 个人主页Dikz12格言那些在暗处执拗生长的花终有一日会馥郁传香欢迎大家点赞✍评论⭐收藏 目录 进程
进程在系统中是如何管理的 进一步认识PCB
线程 能否一直增加线程数目来提高效率
进程和线程的区别 进程 进程就是正在运行的程序.
通过这个图片可以看到每个进程想要执行都需要消耗一定的系统资源。
每个进程都是系统资源分配的基本单位.
进程在系统中是如何管理的 主要考虑两个方面:
1.描述就是使用类 / 结构体把被管理的一个对象这个属性都表示出来。系统专门有一个结构体描述进程得属性这个结构体被称为“进程控制块”--PCB.
2.组织:使用数据结构类似于双向链表 这样的数据结构把这些表示出来的对象串起来.(方便后续的增删改查). 想更明确的认识进程特性就需要进一步认识PCB里面的属性!!! 进一步认识PCB 1.pid进程的身份标识. 每一个进程都会有一个pid同一时刻不同进程之间的pid是不同的.
2.内存指针 每个进程在运行的时候都会分配一定的内存空间.这样的内存空间具体在哪里以及分配的空间有哪些部分,每个部分都是干什么的都是有一组指针来进行区分的.
也就是描述了进程的“内存资源”是什么样子的.
3.文件描述符表 类似于顺序表 这样的数据结构和文件有关 硬盘 有关.
一个进程也会涉及到硬盘操作就需要按照文件来操作进程都操作了那些文件就是通过文件描述符表.描述了进程持有的“硬盘资源”. PCB中还引入了一些属性用来支持操作系统实现 进程调度 的效果.
1.进程的状态 (比如就绪、阻塞.....)
2.进程的优先级 . (有些进程会给更高的优先级,优先调度)
3.进程的上下文. (可以理解为读档、存档. 4.进程的记账信息 通过优先级机制对不同的进程分配了不同权重的资源
线程 引入多个进程的初心是什么?? 实现并发编程 现在是多核CPU时代 多进程实现并发编程也有明显的缺点.太重量。效率不高。 如果频繁的创建 / 销毁 进程开销是不容忽视了.
为了解决上述问题就引入了“线程”(Thread)也叫做“轻量级进程”. 所以每个线程都是可以独立的进行调度的每一个线程也有状态优先级上下文记账信息......。一个进程使用PCB表示一个进程可能使用一个PCB也可能使用多个PCB表示每个PCB对应到一个线程上前面谈到的pid、内存指针、文件描述符表也是共用同一份的。 创建线程就不需要重新申请资源了. 直接使用分配给进程的资源省去了资源分配的开销所以创建效率就更高了 能否一直增加线程数目来提高效率 所以线程多了可能会产冲突被称为“线程不安全问题”。
如果某个线程抛出异常没有妥善处理就可能把整个进程搞崩溃其它线程也会因此消失.
进程和线程的区别 1.进程是资源分配的基本单位;线程是调度执行的基本单位。 2.进程包含线程一个进程至少有一个线程也可以有多个。 3.进程 和 线程 都是用来实现 并发编程 线程比进程更高效、更轻量。 4. 进程 和 进程 之间具有独立性一个挂了不会影响到另一个同一个进程的 线程和 线程之间是可能相互影响的。 线程安全问题 线程异常