【JavaEE】计算机工作原理

发布于:2025-07-05 ⋅ 阅读:(20) ⋅ 点赞:(0)

目录

一、CPU

1.指令

2.核心

3.频率

3.1主频

3.2睿频

4.读取

4.1位置

4.2效率

4.2.1缓存

4.2.2流水线

5.执行模式

5.1内核态

5.2用户态

模式切换

二、进程

PCB

1.身份标识

(1)pid

2.资源分配

2.1内存资源

(2)内存指针

2.2硬盘资源

(3)文件描述符表

2.3CPU资源

进程的调度

(4)进程的状态

(5)进程的优先级

(6)进程的上下文

(7)进程的记账信息

三、操作系统

1.软件管理

api

2.硬件管理

2.1硬件抽象

2.2中断信号


一、CPU

1.指令

指令是 任务划分成最小单元cpu能执行二进制机器码


2.核心

cpu的核心是 由许多计算单元构成的 能够独立执行指令 完成完整计算功能整体cpu的每个核心 一次只能执行一个进程的指令


3.频率

3.1主频

主频是 cpu所有核心同时运行下 确保在满载、散热或供电受限下 仍能长期稳定运行的 最低工作频率,是cpu的默认执行频率,1.90GHz 即cpu一秒钟可以执行19亿条指令


3.2睿频

睿频是 cpu部分核心 在高负载、散热和供电允许时 按性能需要 自动提升的 短期爆发的 最高瞬时频率


4.读取

4.1位置

cpu只能直接读取 加载在内存中的指令与数据,硬盘的访问速度太慢 而不适合快速运转的 cpu的直接接触读取

4.2效率

  • cpu 需要不停地从内存中 读取指令解析指令执行指令

读取指令 涉及cpu与内存的交互,相比cpu里面的 解析与执行指令,读取效率是低下,通过 缓存与流水线的机制,提高读取效率

4.2.1缓存

cpu 已读取的指令 存储到cpu的 缓存空间里面,当后面要执行 重复执行过的指令时,从缓存中读取指令 会比在内存中 变得快很多

4.2.2流水线

cpu 在执行上一条指令的过程中 同时读取下一条指令


5.执行模式

在 硬件架构和操作系统的 共同协作下,cpu 可切换处在两种权限状态下 进行指令的执行

5.1内核态

cpu 以具有最高执行权限的内核态 运行操作系统的内核,此时cpu可以执行任何指令,直接访问系统中的 所有资源


5.2用户态

cpu 以受限制执行权限的用户态 运行应用程序,cpu只能执行非特权指令


模式切换

当应用程序进程 需要执行更高权限的操作时,通过调用操作系统内核提供的api 请求操作系统来执行,此时cpu 由用户态切换为内核态 执行高权限指令,内核指令 完成相应请求操作后 cpu再转回用户态 继续执行应用程序的代码指令


二、进程

  • 应用程序 是存储在硬盘中的 可执行但未激活的 包含 指令和数据的 二进制文件

进程是 应用程序在内存中的 运行实例,当应用程序启动时,操作系统加载应用程序的二进制文件 在内存中创建进程cpu执行 在内存中的 进程里面的指令与数据,实现程序的运行

PCB

操作系统用 进程控制块PCB 将进程存储在结构体对象中 并用双向链表组织起来,结构体中 存储着进程的属性信息

1.身份标识

(1)pid

pid是进程的身份标识


2.资源分配

进程是 操作系统资源分配的 基本单位

2.1内存资源
(2)内存指针

 操作系统 为每个进程 分配独立内存地址空间隔离出 互不干扰稳定运行环境

内存指针 管理着进程持有的内存空间,进程要执行的指令、加载保存的数据、运行时产生的临时数据 都存储在内存中

2.2硬盘资源
(3)文件描述符表

计算机 通过文件 来进行操作硬盘的,文件描述符表是 进程里存储的 一种类似顺序表的 数据结构,存储了 文件描述符与内核中打开文件表的 映射关系描述了 当前进程关联的文件、能操作的文件


2.3CPU资源
进程的调度

cpu的每个核心 一次只能执行一个进程的指令,操作系统 通过调度 使多个进程在同一个核心里 半指令地 快速切换着执行,使多个进程 都似同时连续地 并发执行,达到并行执行的假象

(4)进程的状态
  • 进程在cpu上执行着准备好去执行的状态 是就绪状态
  • 进程的 执行条件不具备 而暂时无法参与cpu调度执行 的状态 是阻塞状态

(5)进程的优先级

操作系统 在调度多个进程时 会根据进程的优先级 优先差别调度,按需调配cpu资源


(6)进程的上下文

寄存器

cpu中 有一组寄存器硬件,时时保存 cpu上 当前运行进程的执行信息,进程调度切换时,寄存器 会将当前存储的寄存器值 保存到 即将调度走进程的 PCB的上下文中,接着加载 即将调度来进程 PCB里 上下文 存储的寄存器值,使cpu转到 调度来进程 上次的执行位置 继续执行

1.程序计数器/指令指针

保存进程 当前执行指令的地址

2.栈指针

保存当前进程里面 调用栈的栈顶位置,ebp指向栈底,esp指向栈顶,调用栈 存储函数的 调用关系、方法参数和局部变量,通过修改esp 实现入栈与出栈,维护进程的调用栈信息

3.通用寄存器

保存进程里面 计算的中间结果


(7)进程的记账信息 

操作系统内核中 存储着每个进程 实际持有cpu的情况,为操作系统 调度进程 提供参考依据


三、操作系统

操作系统 是由内核和配套的应用程序 组成的 管理硬件资源、为软件提供稳定运行环境的 系统管理软件

  • 硬件与软件 都是经过着 操作系统 进行交互

1.软件管理

api

操作系统 提供api给应用程序,运行的进程 调用提供的api 靠着操作系统内核 向下间接使用硬件资源

  • 在Java的强制规定下,所有操作系统提供的api 像JDBC一样 被各自研发的驱动程序 转化成Java规定的统一api,封装在JVM中

2.硬件管理

2.1硬件抽象

操作系统 将硬件抽象为逻辑资源 管理着资源调度,为每个进程分配资源


2.2中断信号

硬件产生中断信号 交给操作系统处理向上传递给 正在运行的应用程序


网站公告

今日签到

点亮在社区的每一天
去签到