计算机基础知识

计算机基础知识

计算机是如何工作的
在本节内容中,介绍了计算机核心工作机制,计算机结构,框架等,计算机需求在人类的历史中是广泛存在的,发展大体经历了从一般计算工具到机械计算机到目前的电子计算的发展过程


文章目录

  • 计算机基础知识
  • 一、冯诺依曼体系结构
  • 二、CPU
    • CPU的核心参数
    • CPU的寄存器
    • CPU的缓存
    • 比一比,==你学会了吗?==
    • CPU执行指令的流程
  • 三丶操作系统
    • 操作系统内核
    • PCB结构体
  • 总结


一、冯诺依曼体系结构

什么是冯诺依曼结构,就是现代计算机中的内部构造分为了4大模块.
在这里插入图片描述

1. 输入设备:用户给设备发号施令的设备,例如,键盘,鼠标等
2. 存储器:又分为内存和**外存,**用于存储数据(二进制)
内存:存储空间小,运行速度快,成本高,关机后数据丢失
外存:分为多种,硬盘,软盘,U盘,光盘,以硬盘举例:存储空间大,运行速度慢,成本低,关 机后数据依然存在.
3.CPU :又称为中央处理器,是最计算机的核心,主要用于算数运算和逻辑运算
4.输出设备 :计算机用户汇报结果的设备.

二、CPU

CPU的核心参数

1)核心数量: 是衡量CPU性能的一个重要指标之一,它指的是CPU内部可以独立执行的指令的处理器单元的数量,每个核心都可以执行计算任务,因此核心数量越多,理论上CPU的计算能力越强,因此就有了后来的==“并发编程”==在这里插入图片描述
上图就是本机的每个核心,具体查看任务管理即可

**2)频率:**又CPU的运算速度,通常指的是时钟频率,也是衡量CPU性能的重要指标,频率越高,在单位时间内可以执行的指令就越多,性能也更强

当然不至于这两个,只是这两个参数能作为衡量一个CPU的性能的主要因素,其他的因素根据各自需求了解即可,还有就是cpu具体的内部构造对于我也没有深刻,详细的能解释出来,还需大家自行探索~

CPU的寄存器

我们知道,计算机大部分数据都是存储在内存和硬盘里的,但实际上CPU在进行运算的时候,需要先把数据从内存中读取的CPU里,再进行运输,用于快速存取数据和指令,提高CPU的工作效率.寄存器是CPU内部最快速的存储单元,因为它们与执行单元非常接近,可以迅速响应CPU的操作,其存储空间非常小,往往是几个kb,例如,程序计数器,会在后面指令操作介绍

CPU的缓存

由于CPU的运算速度是内存的100多倍,所以CPU和内存再执行相关的指令时,内存就会显得格外的慢~,从而导致CPU在获取数据时的速度变慢,此时需要借助于缓存机制,每一次CPU在向内存读取数据的时候,就会把该数据放进缓存,便于CPU后续读取,从而大大的增加了效率
另外,缓存又分为L1,L2,L3分别为重复的数据进行了更好的读取,速度越来越慢,容量越来越大~

下图是多核CPU结构图
在这里插入图片描述

比一比,你学会了吗?

  1. 速度: 寄存器>缓存>内存>>硬盘
  2. 容量: 硬盘>内存>缓存>寄存器
  3. 成本: 寄存器>缓存>内存>硬盘
  4. 访问模式:寄存器用于快速存取,缓存用于减少对主内存的访问,提高了数据访问速度
  5. 数据一致性:寄存器通常不需要考虑数据一致性问题,而缓存需要与主内存保持数据一致

CPU执行指令的流程

首先介绍一个寄存器:程序计数器:这个寄存器存储下一个要执行的指令的地址,开始的时候默认为0,每当CPU执行完一条指令后,程序计数器就会自动更新为下一条指令的地址.

执行指令的三个主要阶段

1)获取指令: CPU会从内存中读取到指令内容后到CPU内部交给寄存器存储.
2)解析指令: 识别这个指令是干啥的以及对应的功能和操作数

3)执行指令:通过指令表执行相关操作

"简单"的指令表,实际上更加复杂
在这里插入图片描述

TIP:一个指令是一个二进制数据,共有8个bit,分成两部分,
前四个bit是操作码,表示指令是干啥的
后四个bit是操作数,表示运算的数据

举个栗子
下面给出一段内存空间和里面的数据
在这里插入图片描述
在这里插入图片描述
以上操作便是cpu执行指令的详细操作,完成了3+14的运算,但是对于cpu来说,这个操作是十分容易的!,由于cpu太快,一秒就能执行几十亿次这样的运算

三丶操作系统

是计算机系统最基本的系统软件,他控制和管理计算机硬件和软件资源,提供用户与计算机交互的接口.

每个系统运行的程序是不同的,你如果再windows里写了一个程序,这个程序是不能直接拿到Linux等其他系统上运行的,因此我们希望一套程序能兼容不同的系统,所以JAVA就有了跨平台的功能

一个操作系统要做很多事,但最重要的就是"管理"

1) 管理不同的硬件设备 eg: 能接入扫码枪,医疗设备,B超超声机等
2)给软件提供稳定的运行环境

操作系统管理的硬件设备是很多的,不是系统直接操作硬件,而是硬件厂商会提供对应的"驱动程序",操作系统就是提供驱动程序间接的来操作硬件设备的

在这里插入图片描述
明确三者的基本关系即可

操作系统内核

作为操作系统的核心部分,负责管理系统资源和控制硬件设备,内核提供了操作系统的基本功能,是操作系统中最接近硬件的部分
其中有一个功能与我们生活息息相关,一定要重点掌握
进程管理~

进程就是正在执行的应用程序 一个应用程序有两种状态 1)没有运行的时候,是一个exe文件,躺在硬盘上的
2)运行的时候,exe会被加载到内存中,并且执行cpu里面的指令了
在这里插入图片描述

由于一个系统上的进程比较多,所以需要管理
1)描述: 通过结构体或类(主流系统是c/c++实现的)把进程的各种属性表示出来,对于Linux操作系统来说,使用称为 “PCB” 这样的结构体来描述进程信息的也叫进程控制块
2)组织: 通过数据结构把上面多个结构体串起来,并进一步进行增删查改.

创建新的进程(双击exe可执行文件,运行起程序),就相当于创建了一个PCB结构体.并且插入到链表中.销毁进程就是把PCB从链表上删除掉,并且释放这个PCB结构体而查看进程列表,就是在遍历这个链表.依次显示出对于的信息~

PCB结构体

在这里插入图片描述

1.PID进程标识符: 同一时刻,一个机器上的多个进程之间,PID是唯一的,系统内的许多操作都是通过PID来找到对应的进程的
2.内存指针: 描述进程依赖的指令和数据都在内存的那个区域,操作系统运行exe时,就会读取exe中的指令和数据,加载到内存中,侧面表示出,进程的执行是需要一定的内存资源的~
**3.文件描述符表:**描述了进程打开了那些文件,对应到硬盘上的数据,在进程中,打开了某个文件,就会在顺序表中添加一项,侧面表示出,进程的执行,需要一定的硬盘资源的
以下的属性都和 进程的调度 相关

当前的操作系统,都是"多任务操作系统",同时可以运行多个进程~
以前的操作系统,都是"单任务操作系统"同一时刻只能运行一个进程

在这里插入图片描述

4.进程状态: 主要分为两种状态,
1).就绪状态:可以随时被调用到cpu上执行指令的
2).阻塞状态:无法调度到cpu上执行,因为要执行其他的工作,比如进行IO操作,在控制台进行读取输入的时候,cpu就不能执行后面的代码
5.进程的优先级: 根据进程的优先级来调度,优先级高的进程先执行.
6.进程的上下文: 分时复用,一个进程执行了一会就要从cpu上调度走,过一段时间还会调度cpu就要执行上次执行的结果,继续往后执行
**7.进程的记账信息:**操作系统,统计每个进程在CPU上执行的时间根据这个进一步的调整调度的策略~~

这几个属性相互配合共同构成了进程的核心逻辑~
以上的调度过程,都是系统内核负责完成的,虽然在系统内核完成,写程序的时候是会收到影响的,因此还是需要了解上诉的调度过程~

总而言之,进程的调度是对PCB结构体的每个属性的一个复杂且关键的操作,它直接影响到了系统的性能和用户体验,它决定了那个进程能够获得CPU的使用权.

总结

本节介绍了计算机结构冯诺依曼结构, cpu执行指令的过程,操作系统的管理功能,其中以操作核心为主,再就是再PCB结构体的各个属性的构成共同决定了一个进程对cpu的性能要求从而满足用户的需求.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/22131.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

STM 32_HAL_SDIO_SD卡

STM32的SDIO(Secure Digital Input Output) 接口是一种用于SD卡和MMC卡的高速数据传输接口。它允许STM32微控制器与多种存储卡和外设进行通信,支持多媒体卡(MMC卡)、SD存储卡、SDI/O卡和CE-ATA设备。STM32的SDIO控制器…

JAVA-学习

一、垃圾回收机制 1、为什么要进行垃圾回收机制 如果不进行垃圾回收,内存迟早都会被消耗空,因为我们在不断的分配内存空间而不进行回收。除非内存无限大,我们可以任性的分配而不回收,但是事实并非如此。所以,垃圾回收…

【大模型】在大语言模型的架构中,Transformer有何作用?

Transformer在大语言模型架构中的作用 Transformer是一种用于序列到序列(Seq2Seq)任务的深度学习模型,由Vaswani等人于2017年提出。在大语言模型(LLM)的架构中,Transformer扮演着关键的角色,它…

Flink中因java的泛型擦除导致的报错及解决

【报错】 Exception in thread "main" org.apache.flink.api.common.functions.InvalidTypesException: The return type of function Custom Source could not be determined automatically, due to type erasure. You can give type information hints by using th…

【php实战项目训练】——thinkPhP的登录与退出功能的实现,让登录退出畅通无阻

👨‍💻个人主页:开发者-曼亿点 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 曼亿点 原创 👨‍💻 收录于专栏&#xff1a…

Mendix 创客访谈录|Mendix助力开发高手10日交付复杂应用,且支持移动端呈现

本期创客 莊秉勳 布鲁科技技术顾问 各位Mendix社群的夥伴好,我是莊秉勳,大家也可以叫我Danny。 我大學是資訊科學背景,在與Mendix相遇前,曾在一上市製造企業,擔任軟體工程師,負責企業內部軟體開發&#xf…

Virtualbox 安装unbuntu + qemu

0. 前言 关于 Virualbox 安装虚拟机的优秀文章太多了,笔者主要是着重梳理一些安装小细节,利己利人!! 如果需要保姆式的安装教程,可以查看后续的参考链接。 1. VirtualBox 的安装 直接去官网搜索最近的软件即可&…

js每日十题(二)

1. 6.3 js第6题 以下结语句中,返回true的是? A !![] B 1’1’ C nullundefined D !!’’ 答: A选项,由于数组属于对象类型,所以空的数组转换成布尔型是true,前置!!,两次取…

【paper】环形虚拟管内的多无人机协同目标包围

Multi-UAV cooperative target encirclement within an annular virtual tube2022.8ELSEVIER Aerospace Science and Technology【Q1 5.6】Yan Gao 全权 北航 Q1 Background:本文试图解决一个什么样的问题? 多无人机对单个静态目标进行连续包围任务&…

基于聚类和回归分析方法探究蓝莓产量影响因素与预测模型研究附录

🌟欢迎来到 我的博客 —— 探索技术的无限可能! 🌟博客的简介(文章目录) 目录 背景数据说明数据来源思考 附录数据预处理导入包以及数据读取数据预览数据处理 相关性分析聚类分析数据处理确定聚类数建立k均值聚类模型 …

12- Redis 中的 链表 数据结构

Redis 的 List 对象的底层实现之一就是链表。C 语言本身没有链表这个数据结构,所以 Redis 自己设计了一个链表数据结构。 1. 链表节点结构设计 先来看看【链表节点】结构的样子: typedef struct listNode {//前置节点struct listNode *prev;//后置节点…

liunx配置网络的命令

liunx配置网络的命令 文章目录 liunx配置网络的命令ifconfig命令查看路由表信息netstat命令ss命令lsof命令ping 命令nslookup命令 ifconfig命令 ifconfig:显示正在工作的网卡&#xff0c;启动的设备 ifconfig -a 展示所有设备 ens33: flags4163<UP,BROADCAST,RUNNING,MUL…

RK3588+FPGA+算能BM1684X:高性能AI边缘计算盒子,应用于视频分析、图像视觉等

搭载RK3588&#xff08;四核 A76四核 A55&#xff09;&#xff0c;CPU主频高达 2.4GHz &#xff0c;提供1MB L2 Cache 和 3MB L3 &#xff0c;Cache提供更强的 CPU运算能力&#xff0c;具备6T AI算力&#xff0c;可扩展至38T算力。 产品规格 系统主控CPURK3588&#xff0c;四核…

数字、钱工具栏

/*** 提取字符串中的 数字 带小数点 &#xff0c;没有就返回"0"** param money* return*/fun getMoney(money: String): String {var money moneyvar pattern Pattern.compile("(\\d\\.\\d)")var m pattern.matcher(money)if (m.find()) {money if (m.…

数据挖掘实战-基于长短期记忆网络(LSTM)的黄金价格预测模型 | 97% 准确度

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…

攻防世界babyRE做法(Linux调试)

在做题之前我们先了解一些知识点&#xff0c;首先是汇编中的知识点&#xff0c;汇编中&#xff0c;数据和代码可以说是一回事&#xff0c;数据和代码可以无条件相互转换&#xff0c;换句话说&#xff0c;数据就是代码&#xff0c;代码就是数据 接下来开始做题&#xff0c;简单…

【经验总结】怎样查看计算机CPU核数量

方法一&#xff1a;任务管理器 方法二&#xff1a;设备管理器 选中“计算机”右击&#xff0c;选择“属性”&#xff1a; 选择“设备管理器”->“处理器”&#xff0c;有几行就代表有几个核&#xff1a;

Ubuntu系统升级k8s节点的node节点遇到的问题

从1.23版本升级到1.28版本 node节点的是Ubuntu系统20.04的版本 Q1 node节点版本1.23升级1.28失败 解决办法&#xff1a; # 改为阿里云镜像 vim /etc/apt/sources.list.d/kubernetes.list# 新增 deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main# 执…

浙江大爱遮阳新材料股份有限公司新品发布会圆满成功

5月29日,浙江大爱遮阳新材料股份有限公司新品发布会在上海国家会展中心举办。本次会议出席的嘉宾有浙江大爱遮阳新材料股份有限公司总经理俞彬军,常务副总王志华,上海大爱益可美遮阳科技有限公司总经理陆俊青,浙江大爱遮阳新材料股份有限公司销售经理平鸿烈,销售经理蒋扬锋和玛…

vmware将物理机|虚拟机转化为vmware虚机

有时&#xff0c;我们需要从不同的云平台迁移虚拟机、上下云、或者需要将不再受支持的老旧的物理服务器转化为虚拟机&#xff0c;这时&#xff0c;我们可以用一款虚拟机转化工具&#xff1a;vmware vcenter converter standalone&#xff0c;我用的是6.6的版本&#xff0c;当然…