冯诺依曼体系结构及操作系统(OS)的简单认识

news2024/10/7 12:27:29

在这里插入图片描述

文章目录

  • 冯诺依曼体系结构
  • 操作系统(Operator System)

冯诺依曼体系结构

冯诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储结构。数学家冯诺依曼提出了计算机制造的三个基本原则,即采用二进制逻辑、程序存储执行以及计算机由五个部分组成(运算器、控制器、存储器、输入设备、输出设备),这套理论被称为冯诺依曼体系结构。🎯

现代计算机基于冯诺依曼提出的存储程序概念。在这种存储概念中,程序和数据存储在称为内存的单独存储单元中,并被同等对待。我们常见的计算机,如笔记本。不常见的计算机,如服务器,都是遵守冯诺依曼体系的。冯诺依曼的基本结构如下所示:

在这里插入图片描述

它也被称为ISA - Instruction set architecture (指令架构集),有三个基本单元:

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

关于冯诺依曼体系,需要知道的几点:

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

冯诺依曼体系结构的思想实际上是一个相对简单的理解,它大致分为以下几个部分:

输入设备(Input Device):输入设备即向计算机输入指令、数据或指令,如:键盘、鼠标、摄像头等。

输出设备(Output Device):输出设别是计算机程序完成后最终使用的设备。显示器和打印机是最常见的列子。

中央处理器(Central Processing Unit):中央处理单元由三个部分组成:控制单元、算术/逻辑单元和寄存器。CPU与内存单元交互。

控制单元(Control Unit):控制逻辑单元并提供这些逻辑单元对程序指令做出响应的指令。还指导其它组件如何交互。

算术/逻辑单元(Arithmetic / Logic Unit):负责算术和逻辑命令,控制这些操作如何工作。
寄存器(Registers):寄存器允许在处理数据之前存储数据。有5中寄存器可以存储数据:内存地址寄存器、累加器、程序计数器、内存数据寄存器和当前指令寄存器。不同的数据类型将存储在不同的寄存器中。

内存单元(Memory Unit):内存单元可以被CPU访问。数据可以加载进入和取出内存单元,方便存储和访问。


❓为什么需要有内存?

电脑是靠CPU处理数据而正常工作的,所有的存储数据都是存储在硬盘上的。但实际上,CPU的工作频率非常高,而硬盘的工作效率则相对低很多。因此,若CPU直接从硬盘读取数据,那么硬盘跟不上CPU的节奏,从而造成CPU的资源闲置。CPU在等待数据过程中处于闲置状态,造成了极大的资源浪费,为了解决这个问题,就有了后面内存的出现。

内存读取数据的效率要比硬盘高很多,因此能较好的适配CPU的工作,提高电脑运行效率以及资源利用率。

有了内存,电脑工作时所有的数据依旧存储在硬盘中,而一些正在使用的数据或者使用频率很高的数据就会加载到内存中,CPU处理数据时直接从内存中进行读取,一般不再与硬盘直接交互。

CPU的运算速率 > 寄存器的速度 > L1~L3Cache > 内存 >> 外设(磁盘)>> 光盘磁带


当你和你的好久进行聊天时数据的传送过程:
在这里插入图片描述
登录聊天软件并联网,你发送的聊天数据传送到朋友显示器的过程:键盘输入聊天数据,将消息加载到内存中,CPU从内存中读取数据并进行解码、封装等操作,然后将封装好的数据写回内存中,网络从内存中获取数据便通过网络进行传输,然后你朋友的内存中获取数据并进行解析等操作,后将数据写到内存中,显示器从内存中获取对应数据并进行显示。


🎯简单而言,冯诺依曼体系结构在当前的计算机中任然非常重要。它使得计算机价格相对便宜,从而能够普及便利人们生活,且相同的设备可以执行多个任务,因此需要的零件更少。同时提高了计算机的速度和效率。自冯诺依曼体系第一次开发以来,这种架构已经有了很大的发展。这种演变的例子包括更快、更小的部件以及用于输入和输出的组合总线。这些创新使得更快的计算机成为可能。

🎯冯诺依曼体系的瓶颈:
无论我们做什么来提高性能,都不能摆脱一个事实,即指令只能够执行一个,并且按照顺序执行。这两个因素限制CPU的能力。我们可以提供具有更多缓存、更多RAM或更快组件的冯诺依曼处理器,但是如果要在CPU性能方面取得原始收益,则需要对CPU配置进行更优的检查。

操作系统(Operator System)

操作系统是控制和管理计算机上的硬件和其它软件的功能强大且通常范围广泛的程序。所有计算机和类似计算机设备都需要操作系统,包括笔记本电脑、平板电脑、只能手机、智能手表、智能冰箱等。

任何计算机体系都包含一个基本的程序集合,称为操作系统(OS)。操作系统包括:内核(进程管理、内存管理、文件管理、驱动管理),其它程序(例如函数库,shell程序等)。

设计操作系统的目的:与硬件交互,管理所有的软 硬件资源,为用户程序(应用程序)提供一个良好的执行环境。

操作系统的基本结构如下:

在这里插入图片描述
操作系统的一些目标,它们是:

  1. 使用方便:使计算机系统更方便有效地使用。
  2. 用户友好:为用户提供更方便的页面,使计算机系统更具有交互性。
  3. 通过充当硬件和用户之间的中介,为用户使用资源提供便捷的访问。
  4. 用于管理计算机的资源。
  5. 控制和监控:通过跟踪谁在使用哪个资源,授予资源请求,以及调节来自不同程序和用户的冲突请求。
  6. 在用户和程序之间提供高效和公平的资源共享。

计算机管理硬件:先描述,在组织。
7. 描述起来,用 struct结构体
8. 组织起来,用链表或者其它高效的数据结构。

系统调用和库函数概念

在开发角度,操作系统对外表现为一个整体,但是会暴露自己的部分接口,供上层开发调用,这部分由操作系统提供的接口,叫做系统调用。

系统调用在使用上,功能比较基础,对用户的要求相对也比较高,因此,某些开发者会对部分系统调用进行适度封装,从而形成库,有了库,就有利于跟上层用户或者开发者进行二次开发。

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

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

相关文章

虚拟机的介绍及安装

文章目录虚拟机介绍VMware WorkStation安装在VMware上安装Linux远程连接Linux系统虚拟机介绍 通过虚拟化技术,在电脑内,虚拟出计算机硬件,并给虚拟的硬件安装操作系统,即可得到一台虚拟的电脑,称之为虚拟机。 VMware…

Ubuntu安装wordpress

这里写自定义目录标题开始环境安装打开参考链接开始 环境 这里安装的php是7.4版本, apt install apache2 php mariadb-server apt install php7.4-mysql php-dev记得需要单独安装php7.4-mysql,不然可能会报错连接数据库出错,中电是wp_chec…

(机械师T90外接显卡GTX-1080)Win10笔记本通过M.2接口外接独立显卡+解决错误代码43

文章目录前言一、硬件清单二、硬件安装1.插入转接卡2.显卡安装3.接入电源4.连接显示器三、驱动安装(重点)1.禁用笔记本独显2.卸载驱动3.安装新驱动4.解决错误代码43外接显卡使用体验前言 据外接显卡成功也快有一个月了,期间畅玩了刺客信条奥…

【C进阶】程序环境和预处理

⭐博客主页:️CS semi主页 ⭐欢迎关注:点赞收藏留言 ⭐系列专栏:C语言进阶 ⭐代码仓库:C Advanced 家人们更新不易,你们的点赞和关注对我而言十分重要,友友们麻烦多多点赞+关注,你们…

新年快到了,如何运用Python实现春联

这篇博文可能写晚了,现在已经是初五了,哈哈!小编也是最近才想到的,看到老爸去年二十九(或者三十)在写春联,当时觉得他写的好慢啊!(不过让我来写,肯定不行!),于是萌生了用小编所学知识实现春联,只不过家里面没有打印机,不然代码写完之后,之后直接用打印机打印出来就…

【汤姆猫的实现 Objective-C语言】

一、实现之后的效果 1.左边3个按钮,分别是 1)点击之后,汤姆猫掏出一只白色的小鸟,刚要吃,它飞走了, 2)汤姆猫放屁 3)汤姆猫喝牛奶, 右边3个按钮,分别是 1)汤姆猫用爪子把屏幕抓出3个道子, 2)汤姆猫用披萨饼砸屏幕, 3)汤姆猫拿出两个锣,对着一敲, 2.这…

Java 23种设计模式(7.结构型模式-装饰者模式)

结构型模式-装饰者模式 代码分析 类图 代码 abstract class Component {abstract void operation(); }public class ConcreteComponent extends Component {void operation() {System.out.println("具体类");} }public class Decorator extends Component{private …

为向IPv6过渡的组织发布安全指南

美国国家安全局 (NSA) 已发布指南,以帮助国防部 (DoD) 和其他系统管理员识别和减轻与过渡到互联网协议版本 6 (IPv6) 相关的网络风险。 IPv6 由互联网工程任务组 (IETF) 开发,是用于识别和定位系统并在互联网上路由流量的协议的最新版本,提供…

统计学习方法 学习笔记(5)决策树

决策树5.1.决策树模型与学习5.2.特征选择5.3.决策树的生成5.4.决策树的剪枝5.5.CART算法决策树基本概述: 算法类别:一种基本的分类和回归方法;基本结构:呈现树形结构,在分类问题中表示基于特征对实例进行分类的过程。…

云原生之使用docker部署Postgresql数据库

云原生之使用docker部署Postgresql数据库一、Postgresql介绍1.PostgreSQL简介2.PostgreSQL的特点二、检查本地docker环境1.检查系统版本2.检查docker版本3.检查docker状态三、下载Postgresql镜像四、部署Postgresql数据库1.创建Postgresql容器2.查看Postgresql容器状态3.查看Po…

通配符的匹配很全面, 但无法找到元素 ‘context:component-scan‘ 的声明。

HTTP状态 500 - 内部服务器错误 类型 异常报告 消息 Servlet[springMVC]的Servlet.init()引发异常 描述 服务器遇到一个意外的情况,阻止它完成请求。 例外情况 javax.servlet.ServletException: Servlet[springMVC]的Servlet.init&#x…

一文看懂Linux基础

文章目录什么是Linux操作系统window和linux的对比快照的拍摄Linux的文件结构kali Linux的简单介绍基础命令vim命令文件权限kali的常见工具查看命令1.查看操作:2.删除操作:3.复制操作:4.移动操作:5.重命名操作:7.上传文…

【时间复杂度和空间复杂度】

1.时间复杂度时间复杂度的定义:在计算机科学中,算法的时间复杂度是一个数学函数,它定量描述了该算法的额外运行时间。一个算法执行所耗费的时间,从理论上说,是不能算出来的,只有你把你的程序放在机器上跑起…

Linux系统用户和权限

文章目录root用户用户、用户组管理查看权限控制修改权限控制 - chmod修改权限控制 - chownroot用户 无论是Windows、MacOS、Linux均采用多用户的管理模式进行权限管理。 在Linux系统中,拥有最大权限的账户名为:root(超级管理员) …

机器学习(七):Azure机器学习模型搭建实验

文章目录 Azure机器学习模型搭建实验 前言 Azure平台简介 Azure机器学习实验 Azure机器学习模型搭建实验 前言 了解Azure机器学习平台,知道机器学习流程。 Azure平台简介 Azure Machine Learning(简称“AML”)是微软在其公有云Azure上推…

前缀树 字典树 TrieTree的学习与模拟实现

目录前言前缀树介绍C实现核心思想前缀树的大致框架前缀树插入字符串前缀树查找完整的字符串前缀树查找前缀匹配的字符串前缀树删除完整字符串总结完整代码前言 哥们在去年12月的一次实习面试的时候,远在旧金山的一家美企CTO面试我,岗位在西安&#xff0…

【MySQL进阶】MySQL视图详解

序号系列文章6【MySQL基础】MySQL单表操作详解7【MySQL基础】运算符及相关函数详解8【MySQL基础】MySQL多表操作详解9【MySQL进阶】MySQL事务详解文章目录前言1,视图1.1,视图概述1.2,视图使用环境1.3,视图创建格式1.4,…

【C语言课堂】 函数递归

欢迎来到 Claffic 的博客 💞💞💞 前言: 时隔多日,来还欠大家的 C 语言学习啦,上期讲了函数,其实函数中应该包括函数递归的,这里单独拿出来讲解的原因是函数递归属于重难知识&#xf…

【编程入门】开源记事本(Flutter版)

背景 前面已输出多个系列: 《十余种编程语言做个计算器》 《十余种编程语言写2048小游戏》 《17种编程语言10种排序算法》 《十余种编程语言写博客系统》 《十余种编程语言写云笔记》 本系列对比云笔记,将更为简化,去掉了网络调用&#xff0…

数据结构入门(力扣算法)

数据结构入门前面的题号为力扣的题号数组的217. 存在重复元素53. 最大子数组和1. 两数之和88. 合并两个有序数组350. 两个数组的交集 II121. 买卖股票的最佳时机566. 重塑矩阵118. 杨辉三角36. 有效的数独73. 矩阵置零字符串的387. 字符串中的第一个唯一字符383. 赎金信242. 有…