冯 • 诺依曼体系结构与操作系统

news/2023/6/9 20:11:36

目录

一、冯 • 诺依曼体系结构

1.1 冯 • 诺依曼体系结构推导

1.2 内存提高效率

1.3 具体案例理解冯 • 诺依曼体系结构

1.4 其他认识

二、操作系统

2.1 操作系统概念

2.2 操作系统的上下层

2.3 管理理念:先描述,再组织


一、冯 • 诺依曼体系结构

1.1 冯 • 诺依曼体系结构推导

计算机的作用就是为了解决问题。首先需要将数据或问题输入到计算机当中,所以计算机必须有输入设备。计算机解决完问题后还需要将计算结果输出显示出来,所以计算机必须有输出设备。要将问题解决就需要用到中央处理器,其中运算器负责算术运算与逻辑运算,控制器控制具体的流程。

对应到C语言当中,算术运算就是了完成一系列的加减乘除,而逻辑运算就对应于一系列的逻辑与、逻辑或,控制功能就对应于C语言当中的判断、循环以及各个函数之间的跳转等等。

那么好似没有存储器(内存)这个结构也是可以的,如上图所示。但实际上并不是!!!

输入设备和输出设备相对于中央处理器来说是非常慢的,而根据木桶原理,那么最终整个体系所呈现出来的速度将会是很慢的。

于是就不让输入设备和输出设备直接与CPU进行交互,而在这中间加入了内存,最终形成了冯 • 诺依曼体系结构。

内存比外设速度快许多,但比又CPU慢。在冯 • 诺依曼体系结构中,内存就处于慢设备和快设备之间,能够起到缓冲作用

冯 • 诺依曼体系结构运行流程: 用户输入的数据先存储到内存当中,CPU读取数据的时候就直接从内存中读取,CPU处理完数据后又写回内存当中,然后内存再将数据输出到输出设备当中,最后由输出设备进行输出显示。

1.2 内存提高效率

但先将输入的数据交给内存,再由内存将数据交给CPU,这个过程真的比CPU直接从外设中获取数据更快吗?

内存具有数据存储的能力。这也使得软件有了发挥的空间,譬如操作系统可以将可能使用的数据预先加载到内存,以此来提高效率。

同时CPU处理数据和内存加载数据是可以同时进行的。根据统计学原理,当某个数据被访问时,那么下一次有极大可能访问其周围的数据。所以当CPU处理某一数据时,内存可以将该数据周围的数据加载进来,这也使得计算机的效率更高。

输出数据时也是一样,CPU处理完数据后直接将数据放到内存当中,当输出设备需要时再从内存中获取即可,此时CPU就可处理其他的事务(不需要等待外设处理),从而提高效率。这也就有了我们平常所说的缓冲区的概念。

1.3 具体案例理解冯 • 诺依曼体系结构

分析两台电脑使用QQ发送信息的过程,忽略网络处理的细节从而简化模型

通过键盘输入信息并将消息加载到内存后,CPU从内存获取到消息后对消息进行各种处理,然后再将其写回内存,此时本地网卡就可以从内存获取已处理好的消息,然后在网络当中经过一系列处理,之后你朋友的网卡从网络当中获取到你所发的消息后,将该消息加载到内存当中,你朋友的CPU再从内存当中获取消息并对消息进行解包操作,然后将解包好的消息写回内存,最后你朋友的显示器从内存当中获取消息并显示在他的电脑上。

1.4 其他认识

◆   常见输入设备:键盘、鼠标、网卡、硬盘、话筒、摄像头、扫描仪等
常见输出设备:显示器、音响、网卡、硬盘、打印机等
注意: 同种设备在不同场景下可能属于输入设备,也可能属于输入设备

◆   站在数据层面上看,CPU只和内存打交道,外设也只和内存打交道。这也是为什么程序运行之前必须先加载到内存的原因。因为可执行程序(文件)是在硬盘上的,而CPU只能从内存中获取数据,所以必须先将硬盘上的数据加载到内存(即必须先将程序加载到内存)。

◆   CPU当中有寄存器,但寄存器不仅仅在CPU中存在,在其他外设当中也是有寄存器的。例如,当我们敲击键盘时,键盘先将获取到的内容存储在寄存器中,然后再通过寄存器将数据写入内存中。

◆   在物理层面上,各个硬件单元之间是通过总线连接的,外设与内存之间的总线为IO总线,内存与CPU之间的总线为系统总线

二、操作系统

2.1 操作系统概念

操作系统的定位: 操作系统其实就是一款进行软硬件资源管理的软件。

设计操作系统的目的:

1. 与硬件进行交互,管理所有的软硬件资源。

2. 为用户程序(应用程序)提供一个良好的执行环境。

2.2 操作系统的上下层

其实可以将将整个系统类比为一个银行系统进行理解。

底层硬件就是银行内的基础设施,如座椅、电脑、保险箱等。这些物品平时都是员工进行使用,使用这些硬件的员工我们就可以看作是驱动程序。

在一个银行系统里员工也是需要被管理的,管理员工的便是银行行长(操作系统)。而系统调用接口就像是银行提供的一个个窗口,可以供外面的顾客使用,顾客也必须通过系统调用接口才能访问内部,而不能直接操作内核、硬件等。

但在现实情况中,有些用户并不会使用窗口(第一次来银行的客户),这时外面的工作人员就会询问你要办理什么业务,这些工作人员就可以看作是用户调用接口。工作人员了解到你要办什么业务后,会告诉你具体告诉你要如何领票排队、具体去哪个窗口。所以用户操作接口内部还是会调用系统调用接口的。

我们可以发现操作系统并不直接与硬件交互,就像行长不会修电脑。但是为什么要设计成这样呢?

譬如,若操作系统自己来完成键盘的读取操作,那么只要键盘读取方式发生了改变,那么操作系统的内核源代码就需要进行重新编写,这对操作系统来说维护成本太高了。
于是在操作系统与底层硬件之间增加了一层驱动层,驱动层的主要工作就是单独去控制底层硬件。例如,键盘有键盘驱动,网卡有网卡驱动,硬盘有硬盘驱动,磁盘有磁盘驱动。驱动简单来说就是去访问某个硬件,访问这个硬件的读、写以及硬件当前的状态等等,驱动层就是直接和硬件打交道的。而驱动一般是由硬件制造厂商提供的,或是由操作系统相关的模块进行开发的(例如网卡)。
此时操作系统就只需关心何时读取数据,而不用关心数据是如何读取的了,也就是完成了操作系统与硬件之间的解耦。

2.3 管理理念:先描述,再组织

操作系统具体是如何管理的,我们今天先不谈,先谈谈操作系统的管理理念: 先描述,再组织

以校园中的管理举例,校园中可以大致分为三类人: 学生(被管理者)、老师(执行者)、校长(决策者)

在校园中学生几乎是不会看见校长的(操作系统不直接与硬件交互),他只进行决策。可是他不与学生交互,是如何管理学生的呢?

譬如校长想选出三名学生代表在元旦晚会上发表讲话,就让老师将成绩单拿给他,校长从中选出了成绩前三名的学生并让老师告诉这三名学生。在这个过程中,校长并没有与学生交互却管理到了学生,就是根据数据进行的管理。

实际上,学校将我们每个学生的各种信息都进行了管理,基本信息、成绩信息以及健康信息等等。每一套信息就描述了一名学生,校长通过对这些信息的管理就能做到对学生的管理。当学生的数量较多时,校长可以将全部学生的信息组织起来(链表、顺序表、树等)。此时校长对各个学生的管理,实际上就是对数据结构的增删查改。

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

如若内容造成侵权/违法违规/事实不符,请联系郑州代理记账网进行投诉反馈,一经查实,立即删除!

相关文章

synchronized 原理(锁升级、锁消除和锁粗化)

目录:一、前言二、锁升级三、锁消除四、锁粗化一、前言根据之前的锁策略,可以总结出, synchronized 具有以下特性( JDK 1.8):1. 开始时是乐观锁, 如果锁冲突频繁, 就转换为悲观锁。2. 开始是轻量级锁实现, 如果锁被持有的时间较长, 就转换成重量级锁。3.…

常见漏洞类型

常见漏洞类型 1. WEB漏洞 1.1. 反射型XSS 1.2. 存储型XSS 1.3. 命令注入 1.4. SQL注入 1.5. 上传漏洞 1.6. 信息泄露 1.7. CSRF 1.8. 文件包含 1.9. 逻辑漏洞 1.10. 权限绕过 1.11. URL跳转 1.12. XXE注入 1.13. 文件读取 1.14. …

MyBatis常见问题

1、MyBatis是什么 是一个半ORM(关系对象映射)框架,它封装了JDBC,加载驱动,创建连接,创建statement等繁杂的过程,是开发者只专注于如何编写SQL语句。作为一个半ORM框架,MyBatis可以使…

css 选择符总结

选择符分类: 1.类型选择符(元素选择符); 2.ID选择符、类选择符; 3.子选择符; 4.同辈选择符(一般同辈组合子、相邻同辈组合子); 5.通用选择符; 6.属性选择符&a…

Python深度学习基础(九)——深入浅析卷积核

深入浅析卷积核引言单通道卷积简单图像边缘检测锐化高斯滤波引言 提到卷积,应该多数人都会想到类似上图的这种示例,可以简单的理解成卷积核与图像中和卷积核相同大小的一块区域与卷积核相乘再求和,通过移动区域产生一个有和组成的新的图像&am…

JPEG系列二 JPEG文件中的EXIF(下)

https://blog.csdn.net/shelldon/article/details/54407534 EXIF格式介绍(下) JPEG图片中的EXIF信息是以TIFF格式保存的,关于TIFF格式的介绍,可以参考上篇。 下篇中将介绍EXIF中都保存了哪些数据,这些数据的内容和格…

JPEG文件中的EXIF(下)

原文链接 EXIF格式介绍(下) JPEG图片中的EXIF信息是以TIFF格式保存的,关于TIFF格式的介绍,可以参考上篇。 下篇中将介绍EXIF中都保存了哪些数据,这些数据的内容和格式,最后介绍一下EXIF中的缩略图信息。 JP…

2021电赛F题智能送药小车方案分析(openMV数字识别,红线循迹,STM32HAL库freeRTOS,串级PID快速学习,小车自动返回)

2021全国大学生电子设计竞赛F题智能送药小车 前提:本篇文章重在分享自己的心得与感悟,我们把最重要的部分,摄像头循迹,摄像头数字识别问题都解决了,有两种方案一种是openARTmini摄像头进行数字识别加寻迹,…