太原网站建设晋icp备,东莞专业网站制作设计,建设网站西安,简单的做海报的网站前言#xff1a; #x1f31f;#x1f31f;本期讲解计算机工作原理#xff0c;希望能帮到屏幕前的你。 #x1f308;上期博客在这里#xff1a;【MySQL】MySQL中JDBC编程——MySQL驱动包安装——#xff08;超详解#xff09; #x1f308;感兴趣的小伙伴看一看小编主… 前言 本期讲解计算机工作原理希望能帮到屏幕前的你。 上期博客在这里【MySQL】MySQL中JDBC编程——MySQL驱动包安装——超详解 感兴趣的小伙伴看一看小编主页GGBondlctrl-CSDN博客 目录
️1.引言
️2冯诺依曼体系
️3.CPU
3.1CPU的组成
3.2多核CPU
3.3指令
3.4缓存和流水线
1.缓存
2.流水线
3.5总结
️4.操作系统
4.1进程、任务
4.2进程的管理
1.先描述
2.再组织
4.3PCB的核心属性
1.pid进程标识
2.内存指针
3.文件描述附表
4.4进程的调度
1.状态
2.优先级
3.记账信息
4.上下文
4.5内存的分配-内存的管理
4.6进程间通信
4.7缺点
️5.总结 ️1.引言 Hello!!!家人们小编又回来啦上期讲解了关于JDBC编程那么mysql部分就基本上结束撒花咯接下来就开启后端开发JavaEE初阶的学习了本期就开始基础的计算机是如何工作的开始发车了。加油加油~~~
且听小编讲解包你学会
️2冯诺依曼体系
图片展示 很明显可以看出
CPU是进行数据的算术运算和逻辑运算
存储器由外存和内存组成主要是用来进行数据的存储这数据以二进制的方式进行存储
输入设备顾名思义即用户给计算机发送指令的部分
输出设备顾名思义就是计算机进行数据处理后返回展示给用户的部分
按照内存大小硬盘内存CPU
运行速度CPU内存硬盘
️3.CPU
3.1CPU的组成
CPU是由 门电路半加器全加器加法器ALU运算器构成了CPU 虽然后端开发不用全部了解每个部分的工作原理但是计算机的重要部分例如内存硬盘CPU这些重要的部分还是要了解到的
门电路是由晶体管构成这是一个非常小的单元级别为nm级别CPU能无限小吗
答案是不能太小了经典物理学就不管用了还有制作工艺大大增加过大也不行太大了会造成良品率大幅度下降 此时就有了多核CPU的概念
3.2多核CPU
即软件将任务分成部分小块合理的分给多个CPU即一个活有多个人来干并发编程那么此时的效率就大大提升了那么还有一种情况就是一个CPU可以干两个人的活那么就有了超线程技术
即4个CPU可以干8个人的活4为物理核心8为逻辑核心
其实我们的电脑即时运用了超线程技术的打开任务管理器 打开性能栏目可以看到小编这个电脑是内核为6物理核心逻辑处理器为12逻辑核心这就运用了超线程技术
当然不是核心越多越好像有的CPU核心很多但是单核的频率不高也是不行的
频率描述CPU核心工作的速度 例如小编这里的速度3.01GHz表示的是一秒钟执行30.1亿次
这里的单位换算 1KHz1024Hz 1MHz1024KHz 1GHz1024MHz 注意描述一个CPU的性能好坏是看最低执行频率基础频率和上限最大睿频
3.3指令
指令表 这里的RAM即是内存
所谓的寄存器就是由于CPU的存储数据少而为了支持CPU的计算而保存中间结果的一个空间
下面小编就来模拟一下程序的执行过程 3.4缓存和流水线 随着啥时间的发展cpu执行的速度越来越快而CPU的执行需要从内存中读取数据那么就会发现内存读取跟不上CPU的执行速度了
1.缓存
例如在表演的时候演员家里表演的地方很远时隔天表演那么演员就会在附近的宾馆住宿那么就不会回自己的家而CPU执行也是一样的
那么需要用的数据存储在一个空间集成在CPU上虽然空间不大但是里CPU近。就解决了从内存中读取数据太慢的问题
2.流水线
例如一次表演当A上台进行表演时就要把接下来表演的B接到舞台附近依次进行
同理当CPU在执行的时候就将内存中的数据读出来准备下一个数据的执行
3.5总结 1.CPU执行的指令都存储在内存中 2.要想执行指令就要从内存中取出指令解析只能最后执行指令 3.取指令需要从内存中读取指令到CPU寄存器中由于取指令这一步很消耗时间引入了流水线和缓存机制 4.CPU解析指令时要用到指令表不同CPU架构的指令表是不同的 5.指令在执行过程中带有的操作数不同的操作数的作用是不同的 6.CPU主要的参数是主频代表这CPU一秒中执行的次数 ️4.操作系统
目前的操作系统WindowsLinuxiOSAndroidMac
操作系统是一个软件~~~由程序编写而成
作用
1.管理各种硬件设备
2.为软件提供稳定的运行环境
而JVM又是对其系统进行封装所以我们JAVA程序员就只用掌握JVM提供的API就可以实现各个操作系统的操作
为啥我们要有操作系统 就拿各种硬件设备来看不同的鼠标有不同的功能键盘也是一样的那么程序员需要针对不同的硬件设定不同的代码吗这样就太麻烦所以就引入了操作系统这样就可以管理各种硬件设备给软件提供统一的API
图例如下 此所谓上至软件应用程序下至各种硬件设备
4.1进程、任务
所谓的进程就是操作系统提供一种软件资源我们运用的系统就是“多任务操作系统”
这里的每个电脑打开的后台和最小化就是多个任务一个任务可以理解为一个进程
注意任务在执行的过程会消耗一定的硬件资源换而言之就是进程执行时都要分配一定的系统资源进程是系统资源分配的基本单位 可以猜测这个截图时运用微信进行裁剪的~~~嘿嘿
4.2进程的管理
1.先描述
一般是通过类/结构体这样的方式将实例所属性描述出来由于操作系统是c写的所以可以使用结构体来表示进程的结构体叫做PCB进程控制块
2.再组织
在使用数据结构将这些类或者结构体串起来
当我们看到任务管理器里的进程信息的啥时候就意味着系统内部在进行链表的遍历并进行每个节点的打印
若果进行一个新的程序那么就会创建一个新的进程那么就要构造一个新的PCB然后插入到链表上
若果结束一个程序的运行那么进程的PCB就要从链表中进行删除对应的PCB就要进行销毁
4.3PCB的核心属性
1.pid进程标识
系统会通过简单的不重复整数来进行区分保证同一时刻每个进程的pid是不同的
2.内存指针
所谓的内存指针就是用来描述进程使用内存的分配问题的
例如学校的寝室楼每个同学都有自己的寝室内存指针就像是每个学生所对应寝室号指定这个学生的寝室是哪一个而不是每个寝室学生都可以使用
所以内存指针就是表示进程能够使用哪些内存~~~而指令和数据都是存在内存中的进程的也需要知道能够使用哪些数据和指令
3.文件描述附表
所谓描述了进程所使用的相关硬盘资源操作系统会对这些硬盘资源封装文件
进程想使用一个文件那么就要先打开文件所以进程就会在文件描述附表中构建一个结构数据来表示文件的相关信息
4.4进程的调度
1.状态
描述某个进程能否进入CPU进行执行
就绪状态随时准备好进入CPU进行执行
阻塞状态指某个进程不方便进入CPU不能进行调度例如等待IO用户的输入与输出
例如
Scanner函数执行就需要用户进行输如数据否则程序就不会执行
2.优先级
即指多个进程等待系统的调度每个进程的被调度的先后顺序是不一样的
例如在游戏和QQ同时运行时很明显游戏的进程优先级肯定大于QQ的优先级
3.记账信息
即描述每个进程运行占CPU的时间的统计会根据这个统计来进行调整进程占有CPU的时间
4.上下文
PCB一种数据结构
1.存档
当要将进程调度出CPU时那么就要将寄存器中的信息单独存储在一个空间里内存中
2.读档
当该进程再次进入CPU时就要将寄存器中的信息回复过来即将内存中寄存器存储的数据加载到CPU中
4.5内存的分配-内存的管理
对于内存的管理是一个非常复杂的问题小编这里就不再讲解了小编没有过多了解~~
核心思想每个进程的内存是互不干扰的通常情况下进程A是不能访问进程B的
作用主要是为了当一个进程代码出现Bug的时候保证其他的进程是不会受到干扰的这也叫做进程的独立性
4.6进程间通信
对于一些特殊的情况需要多个进程相互配合来合作完成某些工作
进程间通信是与进程独立性是不冲突的系统会提供公共空间来供多个进程进行数据之间的交换
4.7缺点
多任务操作系统即多进程操作系统希望系统同时进行多个程序的运行
但是如果在频繁的创建和销毁进程的时候多进程编程系统的开销就会很大主要是在资源的申请和释放上此时就要引入多线程编程了小编下期开始讲解
️5.总结
小编本期讲解了关于计算机的构成主要讲解了关于CPU的相关知识以及操作系统中最主要的进程控制块和进程的相关知识如状态通信等问题。
~~~~最后希望与诸君共勉共同进步 以上就是本期内容了 感兴趣的话就关注小编吧。 期待你的关注~~~