走进Linux的世界:冯诺依曼体系结构

嘿,各位技术潮人!好久不见甚是想念。生活就像一场奇妙冒险,而编程就是那把超酷的万能钥匙。此刻,阳光洒在键盘上,灵感在指尖跳跃,让我们抛开一切束缚,给平淡日子加点料,注入满满的

passion。准备好和我一起冲进代码的奇幻宇宙了吗?Let's go!

我的博客:yuanManGan

我的专栏:C++入门小馆 C言雅韵集 数据结构漫游记 闲言碎语小记坊 进阶数据结构 走进Linux的世界 题山采玉 领略算法真谛


1.冯诺依曼体系结构


我们先来认识这张图上的内容,在来回答一个问题:为什么要有冯诺依曼体系结构?

我们的输入设备一般有:我们的键盘、鼠标、网卡等,输出设备有显示器、磁盘、打印机、喇叭等,可见有些设备即可以做输入设备又可以做输出设备,有些设备只能做一个。

而我们把输入设备和输出设备统称为外设也叫外围设备

中间的存储器指的是什么呢?有人说磁盘啊!磁盘可以存储空间啊。不对!存储器指的是内存

而我们将磁盘称为外存

中下部分橙色框起来的部分叫作cpu

那我们先来解决为什么要有内存这个概念?先来解决一下两个子问题

1.存储分级问题

我们有很多存储空间的设备,而每种设备的造价和存储效率存储空间的大小各不相同,离我们cpu越远的比如磁盘它便宜但存储速度慢,cpu造价贵但存储速度相较于磁盘快很多。

2.体系效率问题

那我们不考虑其他问题我们可不可以直接使用这样的逻辑:

我们有个木桶原理,我们知道cpu效率高,但外部设备的效率不高啊,我们最后的效率就是外部设备的效率。

二是这样实现会导致计算机的价格高昂,一般人无法使用到,这就使得网民数量少,就无法孵化出互联网。

有人就说了你这个冯诺依曼体系中间多了个存储器那不是效率更低了吗?不!我们的数据可以提前加载到内存中,我们计算机还有个局部性原理

就是计算机会将你可能要使用的文件加载到内存中,比如你访问一个数组先访问了0号位置的元素,他就把0号元素后面的元素加载到内存中。

最后贴一张豆包的总结


相关推荐
s_daqing13 小时前
arm的ubuntu启动node
linux·arm开发·ubuntu
m0_6632340113 小时前
Python代码示例:数字求和实现
linux·服务器·前端
济61714 小时前
linux 系统移植(第二十八期)---- 运用MfgTool 工具烧写自制的烧写自制的系统系统---- Ubuntu20.04
linux·运维·服务器
太理摆烂哥14 小时前
Linux基础指令
linux·运维·服务器
Doro再努力14 小时前
【Linux04】 Linux基础指令完结与Linux权限初识(一)
linux·运维·服务器
江畔何人初14 小时前
k8s中namespace与容器cgroup区别
linux·运维·云原生
次旅行的库14 小时前
不能将windows本地虚拟环境打包到实验室服务器
linux·windows·conda
艾莉丝努力练剑14 小时前
【Linux进程控制(三)】实现自主Shell命令行解释器
linux·运维·服务器·c++·人工智能·安全·云原生
?re?ta?rd?ed?14 小时前
计算机中的进程状态与linux中如何管理进程
linux·运维·服务器
坐怀不乱杯魂14 小时前
Linux网络 - UDP/TCP底层
linux·服务器·网络·c++·tcp/ip·udp