JavaEE_操作系统之进程(计算机体系,,指令,进程的概念、组成、特性、PCB)

一、冯诺依曼体系(Von Neumann Architecture)

现代的计算机, 大多遵守冯诺依曼体系结构
在这里插入图片描述

  1. CPU 中央处理器: 进行算术运算和逻辑判断.
  2. 存储器: 分为外存和内存, 用于存储数据(使用二进制方式存储)
  3. 输入设备: 用户给计算机发号施令的设备.
  4. 输出设备: 计算机个用户汇报结果的设备.

二、指令(Instruction)

 所谓指令,即指导 CPU 进行工作的命令,主要有操作码 + 被操作数组成。指令是CPU上执行命令的最小单元

三、进程

3.1 什么是进程

 进程就是被加载到内存中的可执行程序。更准确的来说,进程是有特定功能的程序在一个数据集上一次动态执行的过程。它是操作系统执行任务的基本单元,也是分配资源和调度的基本单元
在这里插入图片描述

3.2 进程的基本组成:

进程由三大部分组成:分别是代码段,数据段,和进程控制块(PCB),这里特别注意进程控制块(PCB)是进程在计算机中的唯一标识(含有标识信息)

3.3进程的特性

  1. 并发性
     在计算机系统中,为了充分发挥硬件资源的并行性,统筹各个子系统间的平衡,最大化提高效率,我们设计各个进程是并发的频繁的轮流交替执行的,而不是单一的只有当前一个进程执行完后一个进程才能执行。
    并发和并行(重点)

并发:在一段时间内,宏观上来看,多个进程都得到了执行,但微观上,某一个时刻,只有一个进程在占用CPU资源;
并行:宏观上,多个进程在一段时间内都得到了执行,同时微观上,每个时刻也都有多个进程在被执行(占用CPU资源),前提是有多个CPU。

  1. 独立性
     不同的进程只完成自己特定的任务,进程之间的工作不会相互影响。

  2. 动态性
     进程是程序的一次执行,它有着创建、活动、暂停、终止等过程,具有一定的生命周期,是动态地产生、变化和消亡的。

  3. 制约性(异步性)
     首先,计算机资源是有限的,而计算机中的进程有很多,这就决定了不可能同时满足所有进程对资源的需求,进程之间就只能相互制约争夺某些资源;其次,某些进程具有亲缘关系或者依赖关系,这种关系就决定了它们自然而然地就有着制约关系。或者因访问共享数据/资源或进程间同步而产生制约。

  4. 结构性:
     每个进程都配置一个PCB对其进行描述。从结构上看,进程实体是由程序段、数据段和进程控制块三部分组成的。

3.4 进程是如何进行管理的?

 进程控制块(PCB)(系统为了管理进程设置的一个专门的数据结构,用它来记录进程的外部特征,描述进程的运动变化过程。系统利用PCB来控和管理进程,所以PCB是系统感知进程存在的唯一标志。进程与PCB是一一对应的)在不同的操作系统中对进程的控制和管理机制不同,PCB中的信息多少不一样。

可以使用这个 PCB 描述进程的属性,一个进程就可以使用一个或者多个 PCB 来表示。系统中会使用类似于双向链表这样的数据结构来组织多个 PCB。
(创建新的进程,就是创建 PCB ;把 PCB 插入到链表中销毁进程, 就是把 PCB 从链表上删除并释放;展示进程列表,就相当于是遍历链表的每个节点。)

PCB属性

  1. pid: 进程的身份标识
     每个进程都会有一个 pid, 同一时刻,不同进程之间的 pid 是不同的。
  2. 内存指针,(一组属性)
     每个进程在运行的时候,都会分配一定的内存空间。这个进程的内存空间,具体是在哪里,以及分配的内存空间中有哪些部分,每个部分都用来干嘛,都是通过一组指针来进行区分。
  3. 文件描述符表
     类似于顺序表这样的数据结构,有很多元素和文件有关 =>硬盘 有关
    一个进程也需要涉及到硬盘操作,就需要按照文件的方式来操作.当前进程关联了哪些文件,都能操作哪些文件就是通过文件描述符表.

3.5 进程的组织

PCB作为进程唯一标识,我们组织进程的实质就是组织PCB,而PCB又是一种数据结构,比如Linux中的task_struct结构体。

  1. 链接表方式(链表):统一状态的进程其PCB成一脸表,多个状态对应多个不同的链表,各状态的进程形成不同的链表。在这里插入图片描述

  2. 索引表方式:同一状态的进程归入一个index表(由index指向PCB),多个状态对应多个不同的index,各状态的进程形成不同的索引表,例如就绪索引表,阻塞索引表。
    在这里插入图片描述

总结

以上就是今天要讲的内容,本文仅仅简单介绍了计算机体系结构、指令是CPU上执行命令的最小单元,以及进程是操作系统执行任务的基本单元,也是分配资源和调度的基本单元。

  • 40
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值