《JavaEE》进程调度的基本过程

ps:上一篇的知识没有讲全 此篇为补充~ 

目录

什么是进程?

进程是怎么运行的?

进程的状态

系统如何调度进程

并行和并发


👑作者主页:Java冰激凌
📖专栏链接:JavaEE


什么是进程?

        进程 顾名思义就是正在运行的程序~  像桌面上许许多多的“图标”

         这些文件平时不使用的时候 就会安安静静的躺在硬盘上 当我们点击运行这些文件的时候  操作系统会将文件所需的指令加载到内存中 开始执行一些具体的工作 当一部分加载完毕之后 就会在桌面上显示出来 此时便称这些正在运行的程序叫“进程”

进程是资源分配的基本单位,各进程内存空间彼此独立 一个进程不能随意访问其它进程的地址空间

硬盘图片~

 左边为固态硬盘 右边为机械硬盘 (这是笔记本中的硬盘 台式机中的硬盘跟这个略有差异)


进程是怎么运行的?

进程的状态

  • 就绪(Ready) 进程已经准备就绪 随时可以上到CPU执行
  • 执行(Running)进程正在执行中~
  • 阻塞(Blocked)正在执行的程序因为某些原因被封存 暂时不会继续往下执行
  • 创建(New)进程在创建时需要申请一个空白PCB,向其中填写控制和管理进程的信息,完成资源分配
  • 终止(Terminated)进程结束 因为出现异常 被系统终止无法再继续执行 (可以参考异常Exception 如果方法对于异常没有进行处理而被抛出的话 会在JVM中处理 也就是结束程序)


系统如何调度进程

        对于进程来说 一个CUP同时只能执行一个程序 那么我们刚刚也看到了 在计算机中同时运行着上百个进程 我们的CUP能有多少个呢?

 在我的电脑中的CUP一共是有8个核心 那么我们如何通过8个CUP核心来执行这么多进程呢?

此时 我们就不得不谈到我们的并行和并发


并行和并发

        假设我们今天的安排 是有写作业与追剧 

并行:我们可以选择先去写作业 等到作业完成我们再去追剧 

并发:我们可以开着电视剧 然后边写作业 此时系统就好像是我们的注意力,我们的注意力不可能同时集中在“写作业”和“追剧”两件事情上,那么之所以我们能做到边写作业边看电视,就是因为我们的“注意力”在反复横跳,只要它跳地足够快,那么既按时完成作业,又不耽误看电视的目标还是可以完成的;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java冰激凌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值