【Linux学习】初始冯诺漫体系结构

发布于:2024-04-23 ⋅ 阅读:(25) ⋅ 点赞:(0)


认识冯诺依曼系统

什么是冯诺依曼体系结构?

冯诺依曼体系结构是一种将程序指令和数据以二进制形式存放在主存储器中,由中央处理器统一控制和执行的计算机系统结构。冯诺依曼体系结构实现了程序的可编程性和硬件与软件的分离,促进了计算机的发展。冯诺依曼体系结构由五个基本部件组成,分别是存储器、运算器、控制器、输入设备和输出设备。

我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系。这种结构特点是“程序存储,共享数据,顺序执行”,需要 CPU 从存储器取出指令和数据进行相应的计算。

主要特点有:

(1)单处理机结构,机器以运算器为中心;
(2)采用程序存储思想;
(3)指令和数据一样可以参与运算;
(4) 数据以二进制表示;
(5)将软件和硬件完全分离;
(6) 指令由操作码和操作数组成;
(7)指令顺序执行。

在这里插入图片描述

目前,我们所认识的计算机,都是有一个个的硬件组件组成

  • 输入设备(单元):包括键盘, 鼠标,扫描仪, 写板,网卡,摄像头等
  • 中央处理器(CPU):含有运算器和控制器等
  • 输出设备(单元):显示器,打印机,磁盘,声卡,显卡等

注意:有些设备既做输入也做输出的。设备之间是独立的,并且是通过总线连接的。这样数据才能在这些设备之间流动(传输)。本质就是设备之间进行数据的来回拷贝。

存储金字塔图(如下):

根据这个金字塔图能够得到的信息是:
距离CPU越近的存储单元,效率越高,造价越贵,单体容量越小。
距离CPU越远的存储单元,效率越低,造价越便宜,单体容量越大。
其中,第五层就是内存。
在这里插入图片描述

为什么需要存储器呢?为什么不能让硬件设备直接与CPU连接?

因为,数据在设备之间流动(传输),本质是设备之间进行数据的来回拷贝,所以,拷贝的整体速度是决定计算机效率的整体指标,但是CPU的速度是很快的,但是外部设备的速度很慢的,如果没有内存,那么计算机整体的效率就取决于了外设的速度,会导致计算机效率过低,使用性降低。
为了解决这个问题呢?所以引入了内存,内存的速度介于外设与CPU之间,简单的说,内存就可以看作一个非常大的缓存,内存的作用是预先加载与缓存,相当于就是,提前将外设信息加载到内存中,然后CPU直接在内存中获取信息去处理,处理了再给内存,内存再把处理后的结果返回给外设。内存就可以看作一个非常大的缓存。 这样,就计算机的效率最终就会以内存的效率为主。

关于冯诺依曼需要注意的几点:

  1. 这里的存储器指的是内存,内存有一个的特点:掉电易失。
  2. 不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备)
  3. 外设(输入或输出设备)要输入或者输出数据,也只能写入内存或者从内存中读取。
  4. 就是所有设备都只能直接和内存打交道。

以例子来帮助我们理解:
注意:这里只考虑设备中数据的流动。

  1. 程序在与逆行的时候,必须先把程序加载到内存中。程序编译好了也是一个文件,该文件放在外设(磁盘)中,必须先加载到内存中,然后交给CPU执行。(CPU只会在内存中去读取)

  2. 以发消息为例,你给你的朋友发消息,然后你的朋友是怎么收到消息的呢?
    数据流动过程:消息–>键盘–>内存—>CPU---->网卡---->你朋友设备的网卡---->内存—>CPU—>显示器。

  3. 如果是在qq上发送文件呢?
    数据流动过程:磁盘(文件)---->内存---->CPU---->网卡---->朋友大的网卡—>内存---->CPU---->磁盘(下载文件后存储在磁盘)