首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >操作系统笔记(关于进程引入和状态的切换)

操作系统笔记(关于进程引入和状态的切换)

作者头像
阑梦清川
发布2025-06-30 08:07:54
发布2025-06-30 08:07:54
960
举报

1.前言

今天下午结束了英语的四六级考试,终于是结束了,最近的这个考试太密集,周四的专业基础课考试,周五的这个线性代数的考试和这个周六的英语四六级考试,吧我都要烤焦了,最近也是疲于应对这个考试,所以状态不佳,今天考试时告一段落了,我也终于是可以腾出时间去做一些自己喜欢的这个事情了;

记下来直到开始之前的这个时间我应该不会太忙,我觉得,因为基本上就没啥任务了,就是复习,尤其是这个操作系统和组成原理,但是这个复习过程对于我而言并没有很大的这个压力,因为在这个复习的过程中如果对于之前学习的这个内容有了新的理解和体会,我就可以写一写自己的这个理解和体会了,不像这个英语和数学,写不了文章,自己一个人学,挺没劲的,而且学校给考试范围,这个显得这个考试就很没有水平,得过且过吧,从今天开始就复习这个操作系统和组成原理,今天的是操作系统

2.并发和并行

在计算机这个学科里面,无数次学到这个概念,但是似乎每一次学习的时候都是新知识,如何从宏观和微观上面去进行理解,似乎这个本来就是一个难以捉摸的话题;

在我们的日常生活里面,看似我们的这个操作系统上面同时运行这个QQ音乐,微信,浏览器多个进程,实际上这个只是我们的宏观上面的感觉罢了,实际上这个切换的速度非常之快,所以微观上面还是挨个进行执行的;

这个就是我们的并发:即多个时间是按照一定的顺序发生的,也就是下面的这个解释里面的时间间隔,并行就是同时发生,针对于这个时间间隔,我觉得可以进行区分和辨别;

并行性:多个CPU同时存在,分别调度不同的这个进程;单处理机的情况下一次只能执行一个进程;但是如果存在多个CPU,这个时候实际上就是并行执行的,相当于是五个人,五个滑滑梯,每一个人从自己对应的这个滑滑梯上面滑下来;

并发就是五个人,一个滑滑梯,每一个人都需要按照一定的这个顺序从这个滑滑梯上面滑下来;

3.多道批处理和分时系统

多道批处理:多个程序同时进入内存,在CPU上面轮流执行,实现我们的资源的共享,但是这个缺点就是没有交互的过程,我们的用户把需要执行的这个任务交给CPU之后,就只剩下漫长的等待了;

为了解决上面的这个无法进行交互的问题,我们又引入了分时系统,这个时候我们的用户可以使用终端盒我们的CPU进行交互,但是这个时候同样存在缺点,就是无法执行紧急任务;

[!note] 两者区别 是否可以进行这个用户和CPU之间的交互,是两者之间的一个显著的区别,但是分时可以交互却无法解决实时问题;

4.用户态和核心态

这个概念我也是学了很久,今天终于“识得庐山真面目”,这个让我非常的欣喜,两个状态我也知道,这个程序状态字寄存器我也知道(计算机组成原理里面学习的),今天居然在他们之间建立了联系,这个真的是非常欣喜(反正挺高兴的);

何谓用户态,何为核心态,我们的这个寄存器是如何使用不同的标志位对于这两种状态进行表示的;

5.进程的引入

进程就是运行的程序的执行的过程,在我们的笔记本里面的任务管理器当中就可以看到我们的电脑当前的这个进程的具体情况和每一个进程的详细的信息;

下面的这个你可以很明显的看到两个腾讯QQ,这个就说明相同的程序,我们两次打开的时候,他在我们的这个系统里面是两个不同的进程(虽然是相同的程序),但是他们的本质还是存在着区别的;

每一个进程的详细信息包含下面的这些内容:进程的名称运行的状态,以及PID进程编号等等,详细的信息在这个任务管理器里面也是可以查看的;

下面的这个就是进程实体的基本的组成的成分,进程控制块也就是我们更加熟悉的这个PCBprocess control block进程控制块);

6.进程的不同状态和状态的转换

下面的这个图里面涉及到的就是我们的进程的不同状态之间的切换的过程:

其中我觉得不容易记忆的就是阻塞的状态,其实就是我们的进程执行的时候需要请求这个打印机相关的资源,因此这个时候需要先去执行打印机的相关内容,这个时候为了不让我们的CPU利用率降低,这个进程就会让出CPU,让其他的进程去继续执行,这个时候我们的当前进程就是进入了阻塞态

进入阻塞态,当这个打印机执行结束之后,我们的这个进程可以去执行了,但是这个时候他不可以直接转换到这个执行状态上面去,而是进入就绪状态,因为之前他已经把这个CPU让给其他的进程了,所以他需要进入就绪态等待执行CPU;

[!abstract] 主动和被动的行为 我们更需要了解的就是执行到阻塞这个是主动让出CPU的过程,而这个阻塞到就绪则是一个被动的行为,因为我们的打印接告诉这个进程你可以继续执行了,我们的进程才可以结束这个阻塞的状态,转换到就绪状态去,因此,这个是一个被动的行为

挂起状态:把我们的进程放到外存里面去(当我们的这个进程不需要执行的时候)这样会更加方便我们对于内存里面的进程进行管理(生活里面也有,安装360类似的会有一个小球球,显示我们的电脑的这个内存的使用情况,这个其实道理就是类似的);

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-06-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.前言
  • 2.并发和并行
  • 3.多道批处理和分时系统
  • 4.用户态和核心态
  • 5.进程的引入
  • 6.进程的不同状态和状态的转换
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档