计算机是如何工作的

一台计算机的构成

基本构成

1.cpu中央处理器(通用计算芯片)

2.主板(大插座)

3.内存 4.硬盘  存储结构 区别:大小,速度,成本, 持久性(mysql中有提过)

5.电源,散热器,机箱

6.GPU显卡 和CPU类似,都能进行算术运算和逻辑判断

GPU是专用计算芯片,用来处理运算虽然简单但运算量较大的:1.图形晕染(大型游戏,3D建模)        2.挖矿(加密货币)        3.AI人工智能

冯诺依曼体系

cpu,存储器,输入设备,输出设备

ps:有的设备既是输出设备也是输入设备,如触摸屏,网卡等

CPU

CPU是计算机的中央处理器

关心的指标

1.CPU的频率

基频/默频: GHz

睿频/加速频率        

现代CPU的一个特性:动态根据当前的任务量,频率变更

2.CPU的核心数  

2008前CPU是单个核心的

物理核心:真实干活的人

逻辑核心:实际上这些人能同时干几个人的活

CPU的核心数越多,CPU越牛

CPU的构成(了解)

CPU执行程序(指令)的过程 

首先要了解寄存器,寄存器也就是存储数据的模版,是长在CPU身上的,CPU的寄存器访问速度比内存还快,存储空间也比较小,成本也高很多

真实指令是8个字节,64个比特位    一个CPU不止一个寄存器

一条指令=操作码+操作数 (操作码类似函数名,操作数类似函数参数)

CPU执行指令流程:1.读取指令        2.解析指令        3.执行指令

CPU默认的就是顺序的执行下一条指令

热补丁(一个服务器程序,本质上就是内存中的一段指令(找到BUG,让其跳过),CPU在执行这段指令完成各种功能)

操作系统

基本概念

操作系统是计算机中最重要的软件

主流的操作系统:Windows(图形化界面),Linux(后端开发,命令行),  Mac OS

 Windows和Linux最直接的区别是两个系统提供的API不同

手机端:IOS(与Mac OS不同), Android

操作系统是一个搞管理的软件:1.管理各种硬件设备(通过驱动程序 间接的管理硬件设备)        2.给各种应用程序提供一个稳定的运行环境

重要概念-进程

进程(process)一个运行起来的程序我们称之为进程,进程是操作系统中资源分配的基本单位

操作系统是如何管理进程呢?

1.先描述出一个进程是啥样的?  ---->使用结构体,描述出进程的核心属性,进程控制块(PCB)

2.再把多个进程组织起来  Linux使用链表的形式,把多个PCB组织起来

在不同情况下简单来说:

1.创建一个新的进程

创建一个PCB,初始化PCB中的各个属性,把PCB加到链表上

2.销毁一个进程

把这个进程的PCB在链表上找到并删除

3.查看进程链表

遍历链表,取出每个元素,把关键信息显示到界面上

PCB中的一些关键要点

1.pid

进程id,进程的身份标识符

2.内存指针

进程要知道执行指令在哪里,指令依赖的数据又在哪里

双击exe,运行一个程序,创建一个进程  (操作系统会把exe中的指令和数据读取出来加载到内存中)

操作系统加载的过程:1.在运行过程中,要执行哪些指令(二进制的)        2.这些指令在运行过程中依赖的数据

进程运行的过程,需要依赖内存资源,硬盘,网卡等相关资源设备

ps:操作系统和内存

操作系统本身也是软件,也是由一系列指令构成的,CPU会依次执行操作系统上的这些指令(操作系统才会跑起来)

运行某个进程,操作系统进行加载指令数据到内存的过程,并让CPU来执行这些指令

3.文件描述符表

进程运行过程中,很多时候,需要和硬盘这个硬件设备去进行交互,硬盘上的数据,就是以文件的形式来组织的

进程在读写文件时,要先“打开文件”,每打开一个文件就会把这个文件中的信息保存到文件描述符表中

注意:操作系统中,会把很多资源都抽象成文件来表示,文件不一定是硬盘上的资源

进程调度

进程调度包括进程的状态,进程的优先级,进程的上下文,进程的记账信息

操作系统进行进程管理过程中完成的重要工作

进程会有很多,但我们电脑CPU的核心数有限,这里采用分时复用的策略,让人感觉这些进程好像是同时进行的

把一个CPU核心上,按照分时复用来执行多个进程方式叫“并发执行”

把多个CPU核心上,同时执行多个进程这样的方式叫做“并行执行”

并发执行和并行执行是同时存在的,我们在代码上无法区分,统称为“并发”

4.进程的状态

进程的状态有很多种,最为典型的两种是:就绪状态:进程可以随时到CPU上进行执行

                                                                    阻塞状态:进程当前不适合到CPU上执行

5.进程的优先级

有些进程,就是要优先级更高一些,吃更多的CPU资源

但进程的优先级与显示器的显示无绝对关系

6.进程的上下文

进程调度,一个进程执行一会,失去CPU,过了一段时间,还会回到CPU上执行,沿着上次执行的状态,继续往下执行

进程在CPU中运行的过程中,CPU上的各种寄存器就表示了当前进程运行的“中间状态”

保存上下文:把CPU中的这些寄存值保存到内存中(PCB对应属性)

恢复上下文:把PCB中保存属性填回到对应的寄存器中

7.进程的记账信息

统计功能,统计每个进程在CPU上运行了多久,如果发现某个进程好久没吃到CPU资源了,就会给这个进程倾斜一些CPU资源

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值