冯诺依曼体系结构和操作系统

news2024/10/5 2:48:54

文章目录

  • 冯诺依曼体系结构
  • 对冯诺依曼体系结构的理解——用QQ和朋友聊天时数据的流动过程
  • 操作系统是什么
  • 操作系统的作用
  • 操作系统

冯诺依曼体系结构

在这里插入图片描述

冯·诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。
数学家冯·诺依曼提出了计算机制造的三个基本原则,即采用二进制逻辑、程序存储执行以及计算机由五个部分组成(运算器、控制器、存储器、输入设备、输出设备),这套理论被称为冯·诺依曼体系结构。

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

输入单元:包括键盘, 鼠标,扫描仪, 写板等
中央处理器(CPU):含有运算器和控制器等
输出单元:显示器,打印机等

关于冯诺依曼,必须强调几点

  • 这里的存储器指的是内存
  • 不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备)
  • 外设(输入或输出设备)要输入或者输出数据,也只能写入内存或者从内存中读取
  • 一句话,所有设备都只能直接和内存打交道

冯诺依曼体系结构规定了硬件层面上的数据流向,所有的输入单元的数据必须先写到存储器中 ,然后 CPU 通过某种方式访问存储器,将数据读取到 CPU 内部,运算器进行运算,控制器进行控制,然后将结果写回到内存,最后将结果传输到输出设备中。但是输入设备和输出设备相对于中央处理器来说是非常慢的,于是在当前这个体系整体呈现出来的就是,输入设备和输出设备很慢,而CPU很快,根据木桶原理,那么最终整个体系所呈现出来的速度将会是很慢的。
在这里插入图片描述

解释:当一个快的设备和一个慢的设备一起协同时,最终的运算效率肯定是以慢的设备为主,就如 “ 木桶原理 ” —— 要去衡量木桶能装多少水,并不是由最高的木片决定的,而是由最短的木片决定的,一般 CPU 去计算时,它的短板就在磁盘上,所以整个计算机体系的效率就一定会被磁盘拖累。所以我们必须在运行时把数据加载到内存中,然后 CPU 再计算,而在计算的期间可以同时让输入单元加载到内存,这样可以让加载的时间和计算的时间重合,以提升效率。

对冯诺依曼体系结构的理解——用QQ和朋友聊天时数据的流动过程

要使用QQ,首先需要联网,而你和你的朋友的电脑都是冯诺依曼体系结构,在你向朋友发送消息这个过程中,你的电脑当中的键盘充当输入设备、显示器和网卡充当输出设备,你朋友的电脑当中的网卡充当输入设备、显示器充当输出设备。
刚开始你在键盘当中输入消息,键盘将消息加载到内存,此时你的显示器就可以从内存获取消息进而显示在你自己的显示器上,此时你就能在你自己的电脑上看到你所发的消息了。
在键盘将消息加载到内存后,CPU从内存获取到消息后对消息进行一系列操作,然后再将其写回内存,此时你的网卡就可以从内存获取已经处理过的消息,然后在网络当中经过一系列处理(这里忽略网络处理细节),之后你朋友的网卡从网络当中获取到你所发的消息后,将该消息加载到内存当中,你朋友的CPU再从内存当中获取消息并对消息进行操作,然后将处理过的消息写回内存,最终你朋友的显示器从内存当中获取消息并显示在他的电脑上。

在这里插入图片描述

操作系统是什么

操作系统是一款软件,进行软硬件资源管理的软件!!!

操作系统的作用

操作系统将软硬件资源管理好(手段)、给用户提供良好的(稳定、高效、安全)使用环境(目的)

操作系统

我们第一眼看到的就是计算机实物,也就是计算机底层的硬件。这些硬件看似是一个个罗列出来的,但实际在底层都遵守冯诺依曼的组织形式。

硬件遵守冯诺依曼体系
在这里插入图片描述
而单单只有这些硬件是不够的,还需要有一个软件来对这些硬件进行管理。例如,内存何时从输入设备读取数据?读取多少数据?内存何时刷新缓冲区到输出设备?是按行刷新还是全刷新?这些都是由软件进行管理的,而这个软件就是操作系统.
在这里插入图片描述
问题:难道操作系统直接和硬件交互吗?
OS不信任任何用户,任何对系统硬件或者软件访问,都必须通过OS的手
在这里插入图片描述
操作系统主要进行以下四项管理:

  • 内存管理:内存分配、内存共享、内存保护以及内存扩张等等。
  • 驱动管理:对计算机设备驱动驱动程序的分类、更新、删除等操作。
  • 文件管理:文件存储空间的管理、目录管理、文件操作管理以及文件保护等等。
  • 进程管理:其工作主要是进程的调度。
  • 在这里插入图片描述
    而操作系统再往上就是我们所处的位置,在这里我们就可以用命令行或是图形化界面进行各种操作,这一层被称为用户层。

在这里插入图片描述
在开发角度,操作系统对外会表现为一个整体,但是会暴露自己的部分接口,供上层开发使用,这部分由操作系统提供的接口,叫做系统调用。
系统调用在使用上,功能比较基础,对用户的要求相对也比较高,所以,有心的开发者可以对部分系统调用进行适度封装,从而形成库,有了库,就很有利于更上层用户或者开发者进行二次开发。
在这里插入图片描述

管理
用学校来举例:

  • 学生(被管理者) —— 软件和硬件
  • 辅导员(执行者) —— 驱动
  • 校长(管理者) —— 操作系统

管理者和被管理者并不直接打交道,本质管理者是通过 “ 数据 ” 来进行管理的,管理数据,就一定要把学生信息抽取出来,而学生信息可以用一个结构体来描述,每一名同学创建一个结构体变量,然后利用指针把所有的同学关联起来,构成一个双向循环链表。操作系统并不和硬件打交道,而是通过驱动程序进行操作。
总结就是一句话:先把进程描述起来,再把进程组织起来!(即先描述,再组织)

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

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

相关文章

数据资产入表背后:中国To B数字化驶入“数据时代”

数据资产“入表”,更像是一剂通过颠覆旧的生产关系,从根上医治数字化转型的“良方”。 那么,数据资产到底是什么?以及在愈发被规范的数据市场大背景下,对中国的To B企业和To B服务商而言,正在或者即将发生…

WaitForSingleObject 函数的诸多用途与使用场景总结

目录 1、WaitForSingleObject函数详细说明 2、在线程函数中调用WaitForSingleObject实现Sleep,可立即退出Sleep状态 3、调用WaitForSingleObject函数监测线程或进程是否已经退出 3.1、子进程实时监测主进程是否已经退出,主进程退出了,则子…

高级分布式系统-第15讲 分布式机器学习--神经网络理论

神经网络理论 模糊控制在处理数值数据、自学习能力等方面还远没有达到人脑的境界。人工神经网络从另一个角度出发,即从人脑的生理学和心理学着手,通过人工模拟人脑的工作机理来实现机器的部分智能行为。 人工神经网络(简称神经网络&#xf…

【嘉立创EDA】原理图显示/隐藏引脚标识

文章路标👉 文章解决问题主题内容be end..文章解决问题 1️⃣ 嘉立创EDA专业版,操作版本是V2.1.17客户端半离线版本。 本文基于嘉立创EDA专业版讲述如何将原理图中已建立的器件的引脚标识进行显示或隐藏。本文将此过程记录,以供有需要的读者参考。 主题内容 2️⃣ 对目…

html5+css3+bootstrap+js 新闻网页

新闻网页练习打卡! 一、首页 二、社会 三、财经 四、视频展示 简易新闻网站(期末作业)

无纸化革新:纸质文件转在线存储和检索 | 开源日报 No.141

paperless-ngx/paperless-ngx Stars: 13.9k License: GPL-3.0 Paperless-ngx 是一个文档管理系统,将您的纸质文件转换为可搜索的在线存档,以便您可以保留更少的纸张。 完整功能列表和截图可在文档中找到通过 docker compose 最简单地部署 paperless可以…

Linux驱动学习—IIC总线之FT5X06触摸驱动实验

1、实现触摸坐标值上报 流程图&#xff1a; 设备树如下&#xff1a; 触摸设备对应的设备树节点是&#xff1a; 读取坐标的寄存器&#xff1a; #include <linux/init.h> #include <linux/module.h> #include <linux/i2c.h> #include <linux/gpio.h> #i…

HTML---JAVAscript对向和原型链

文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 前言 一.JavaSceipt对象概述 JavaScript是一种基于对象的编程语言&#xff0c;每个值都是一个对象。JavaScript中的对象是一种无序的键值对集合&#xff0c;其中每个键都是唯一的。 JavaScript的…

@Controller层自定义注解拦截request请求校验

一、背景 笔者工作中遇到一个需求&#xff0c;需要开发一个注解&#xff0c;放在controller层的类或者方法上&#xff0c;用以校验请求参数中(不管是url还是body体内&#xff0c;都要检查&#xff0c;有token参数&#xff0c;且符合校验规则就放行)是否传了一个token的参数&am…

D4140 交流插座电器漏电断路器的低功耗控制芯片,内置桥式整流器漏电灵敏度可调,采用SOP8和DIP8 的封装形式

D4140 是一种用于交流插座电器漏电断路器的低功耗控制器。这些设备可以检测到接地的危险电流路径&#xff0c;例如设备掉进水中。在发生有害或致命的电击之前&#xff0c;断路器会断开线路。内置有整流桥&#xff0c;齐纳管稳压器&#xff0c;运算放大器&#xff0c;电流基准&a…

C++(11)——string

前面通过前面篇文章介绍了中的各项基本知识。从本篇文章开始&#xff0c;将对中的中的各项内容进行介绍&#xff1a; 目录 1.string类对象的常见构造&#xff1a; 2. string类对象的赋值操作&#xff1a; 3. string类对象的访问与遍历&#xff1a; 3.1 string类对象的访问…

大数据Doris(五十六):SQL函数之地理位置函数

文章目录 SQL函数之地理位置函数 一、​​​​​​​ST_AsText(GEOMETRY geo)

An efficient path-based approach for influence maximization in social networks

ABSTRACT 口碑对社会联系的影响非常强大&#xff0c;这已不是什么秘密&#xff0c;但问题是“哪些因素影响口碑的有效性&#xff1f;”答案取决于一小组节点如果被激活&#xff0c;就会将信息传播到整个网络。这是社交网络分析中的一个主要问题&#xff0c;称为影响力最大化&am…

优雅处理并发:Java CompletableFuture最佳实践

第1章&#xff1a;引言 大家好&#xff0c;我是小黑&#xff0c;今天&#xff0c;小黑要和大家聊聊CompletableFuture&#xff0c;这个Java 8引入的强大工具。 在Java传统的Future模式里&#xff0c;咱们都知道&#xff0c;一旦开始了一个异步操作&#xff0c;就只能等它结束…

Xcode 15 for Mac:超越开发的全新起点

作为一名开发人员&#xff0c;你是否正在寻找一款强大而高效的开发工具&#xff0c;来帮助你在Mac上构建出卓越的应用程序&#xff1f;那么&#xff0c;Xcode 15就是你一直在寻找的答案。 Xcode 15是苹果公司最新推出的一款集成开发环境&#xff08;IDE&#xff09;&#xff0…

介绍C++的关键字(保留字)

介绍C的关键字&#xff08;保留字&#xff09; 1. asm asm (指令字符串)&#xff1a;允许在 C 程序中嵌入汇编代码。 2. auto auto&#xff08;自动&#xff0c;automatic&#xff09;是存储类型标识符&#xff0c;表明变量"自动"具有本地范围&#xff0c;块范围的…

2024PMP考试新考纲-【过程领域】近期典型真题和很详细解析(6)

距离2024年3月10日的PMP考试还有不到两个月了&#xff0c;加油&#xff01; 华研荟继续为您分享【过程Process领域】的新考纲下的真题&#xff0c;进一步帮助大家体会和理解新考纲下PMP的考试特点和如何应用知识来解题&#xff0c;并且举一反三&#xff0c;一次性、高等级通过…

【excel密码】Excel中如何使部分单元格区域实现加密

Excel文件可以设置保护工作表&#xff0c;那么可以只保护工作表中的部分单元格&#xff0c;其他地方可以正常编辑吗&#xff1f;当然是可以的&#xff0c;今天我们学习&#xff0c;如何设置保护部分单元格。 首先&#xff0c;我们先将整张工作表选中&#xff08;Ctrl A&#…

不会写诗怎么办?收藏好,让你分分钟变成大才子

大家都知道&#xff0c;诗有五种载体&#xff0c;分别是五言绝句&#xff0c;五言律诗&#xff0c;七言绝句&#xff0c;七言律诗&#xff0c;以及排律。言指的是每句的字数&#xff0c;绝句是四句&#xff0c;律诗是八句&#xff0c;排律不限句数。 首先&#xff0c;我们先说…

【实施】windows部署OA项目

文章目录 一、安装JDK1.1 下载安装包后&#xff0c;傻瓜式安装即可1.2 配置环境变量1.3 测试 二、配置Tomcat2.1 关闭防火墙2.2 下载安装包后&#xff0c;在bin下双击startup启动tomcat2.3 防火墙配置 &#xff08;开放8080端口 三、MySQL安装四、部署OA项目4.1 导入数据库4.2 …