005 Linux 冯诺依曼体系与操作系统的理解

news2025/2/27 8:41:29

前言

本文将会向您介绍冯诺依曼体系与操作系统的概念

文章重点

  1. 理解冯诺依曼体系为什么到现在也如此流行
  2. 理解操作系统的概念以及操作系统是如何控制软硬件资源的

冯诺依曼体系结构

常见的计算机,如笔记本。我们不常见的计算机,如服务器,都遵守冯诺依曼体系 在这里插入图片描述

1. 输入单元:包括键盘, 鼠标,扫描仪, 写字板等
2. 中央处理器(CPU):含有运算器和控制器等
3. 输出单元:显示器,打印机等
4. 既是输入单元也是输出单元:网卡等

这里的存储器指的是内存
内存和磁盘的区别

内存和磁盘是计算机中主要的存储部件,内存是利用了电效应实现了存储,一旦电脑断电它存储的数据就会丢失 然而磁盘是外设,是永久存储介质
内存的特点:高速度高价格
磁盘的特点:低速低价

内存分级 在这里插入图片描述
结论离CPU越近的设备,运行速度越快,造价也越贵

不考虑缓存情况,这里的CPU只能对内存进行读写,不能访问外设(输入或输出设备),这是因为外设磁盘离CPU很远,处理速度很慢,根据木桶的短板效应,所以CPU为了总体的运行速度不被拉低,就不会直接和磁盘外设打交道,而是和内存打交道, 外设(输入或输出设备)要输入或者输出数据,也只能写入内存或者从内存中读取

在这里插入图片描述

结论冯诺依曼系统中硬件既有高价格的设备用于处理复杂的数据,又有低价格的是设备用于存储数据或进行数据交互,这使得冯诺依曼体系下的计算机在价格不高的前提下,做到效率比较高
正是因为这种能让老百姓买的起的价格,并且使用起来比较高效的模式,才让冯诺依曼体系到现在也如此流行

硬件

硬件是指计算机系统中的物理部件,包括主板、中央处理器(CPU)、内存、硬盘、显示器、键盘、鼠标、网卡、声卡、USB接口等。硬件是计算机系统的基础,提供各种各样的功能和服务,支持计算机的各种应用。

示例一:微信发送消息与收到消息

在发送QQ消息时,除了消息内容,还会包含发送时间、发消息人的头像等信息。当从键盘输入消息内容时,这些数据会被加载到内存中,并经过CPU处理后被推送到输出设备(如网卡)。然后,通过网络传输,消息会被推送到接收消息的人的输入设备(也是网卡),接收方的设备将接收到的数据加载到内存中,并经过CPU处理后交给显示器显示收到的消息。

案例二: 微信发文件与接受文件

与发消息不同,发送文件是从自己的磁盘中将文件拷贝一份后加载到内存 经过CPU处理后推送到输出设备网卡上 要接受文件的人在经过网络后在网卡上
收到此文件,最终将文件存储至自己的磁盘上

结论
除了键盘和显示器,计算机系统中还有其他的输入和输出设备可以传递信息。例如,鼠标、触摸屏、扫描仪、打印机、摄像头、音频硬件设备等都可以作为输入或输出设备,用于传递不同类型的数据和信息。

操作系统的概念

操作系统的本质其实就是一款软件,是一款进行软硬件资源管理的软件

在开发角度,操作系统对外会表现为一个整体,但是会暴露自己的部分接口,供上层开发使用,这部分由操作系统提供的接口,叫做系统调用,虽然说操作系统是为用户提供服务的,但是它并不相信用户,就像银行一样,为你提供服务但是不信任你,于是在操作系统和用户之间还有系统调用窗口和shell外壳来阻止群众中的坏人直接获取Linux内核中的各种信息

在这里插入图片描述
接下来将会通过示例的角度向你介绍后三层: 既然操作系统的本质其实就是一款软件,是一款进行软硬件资源管理的软件 那么操作系统作为管理者与被管理者(底层硬件、软件部分)从来没有见过面,如何进行管理?

1.可以通过信息管理
2.驱动层可以帮管理者拿到数据(辅导员、楼管阿姨、图书管理员)
3.当“信息量”特别大的时候,信息就需要被组织起来了 比如:一万学生,每个学生的属性是类似的,先把角色描述起来
场景:某学校校长是一位程序员,原先需要对5位同学的个人信息进行录入到教务系统中,刚考完期末,本来只需要简简单单在程序中把学生的通过与补考状态改改就能达到目的,但是由于扩招,一下子学生达到了五万人,这就头疼了。 解决问题:

用结构体先把角色(每一个学生)描述起来

struct student  
{  
  int age;  
  double height;  
  double grade;  
  string name; 
} 

链表或其他高效的数据结构将这些结构体组织起来

struct student  
{  
   struct student* next; 
   int age;  
   double height;  
   double grade;  
   string name; 
  } 

结论:先描述,再组织 和校长管理学生一样,操作系统也不是直接管理硬件,而是管理硬件映射出来的信息,和校长创建的的结构题类似,操作系统也会对各个硬件创建一个结构体,结构体中存放硬件的各种新信息和健康状态等等,再通过链表等一些高效的数据结构将这些结构体连接起来统一管理

操作系统的管理有:
1.进程管理
2.内存管理
3.文件/io管理
4.驱动管理 这些管理都要遵守一个原则:先描述,再组织

现在我们再来看这张图,再来理解操作系统是如何管理软硬件资源 在这里插入图片描述

每一个硬件都有对应的驱动程序来做管理,如键盘,鼠标,网卡等都有对应的驱动程序,然后操作系统再通过一套成熟的驱动程序来管理下层的硬件,并且在此基础上衍生出各种软件业务,和用户服务,例如,一个音频编辑软件需要访问音频设备,就需要通过操作系统提供的音频设备驱动程序来访问和控制音频设备。

小结

今日的分享就到这里啦,这一小节并没有代码和指令,仅是对冯诺依曼体系和操作系统的概念作了介绍,如果本文存在疏漏或错误的地方还请您能够指出!

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

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

相关文章

搭建VM虚拟机+Centos7 Oracle版 + 配置ssh + Xftp + secureCRT

文章目录 1 视频地址1.1 基本参数1.2 ISO下载地址:1.3 开启ssh1.3.1 使用root用户进行1.3.2 修改ssh配置1.3.3 关闭 SELINUX 2 查询虚拟机的ip2.1 联网2.2 桌面打开终端查询虚拟机ip 3 连接Xftp4 连接SecureRT 1 视频地址 01-搭建VM虚拟机Centos7 Oracle版 配置ss…

迅镭激光董事长颜章健荣膺“2023年如皋市科技强企人物”!

10月28日,2023如皋科技人才洽谈会开幕式在如皋隆重举行。江苏省科学技术厅副厅长、党组成员蒋洪,江苏省商务厅副厅长、党组成员孙津,中共南通市委副书记、政法委书记沈雷,中共如皋市市委书记何益军,中共如皋市委副书记…

设置博客域名跳转实现方案(免费版)

👏作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家📕系列专栏:Spring源码、JUC源码🔥如果感觉博主的文章还不错的话,请👍三连支持&…

【中国知名企业高管团队】系列54:吉利集团

今天华研荟为大家介绍中国的传统汽车行业的领军企业之一——吉利集团。 说到吉利,你想到什么产品?吉利汽车?李书福?摩托车?现在的吉利集团可能比大部分想象的规模要大、产品线要广、实力要强。吉利汽车只是旗下的一个…

网络流量分析和行为分析:介绍如何使用网络流量分析和行为分析来检测异常活动和潜在的攻击

在今天的数字化世界中,网络安全变得愈发重要。网络攻击的形式不断演变,为了保护我们的网络和数据,我们需要不断改进我们的防御方法。网络流量分析和行为分析是两种强大的工具,它们可以帮助我们检测异常活动和潜在的攻击。在本文中…

阿里云领取云服务器

阿里云在云栖大会上发布,支持全国4000多所高校的学生,每人送一台服务器使用: 活动详情地址: 2023云栖大会 | 阿里云高校计划,助力高校科研与教育加速,让每位中国在校大学生真实受益于普惠算力-阿里云开发…

古老的五子棋

午休忽然想起我奶奶喜欢下的一种古老的五子棋游戏&#xff0c;于是花了半小时开发出来了&#xff5e; 源代码&#xff1a; <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" …

iframe 给嵌入的 vue页面发送数据(vue2、vue3 都ok)

需求描述 1.有一个网页A&#xff0c;还有一个vue项目B 2.网页A中 使用 iframe 的方式引入了vue项目B 3.现在需要在网页A中 给 vue项目B 发送消息&#xff0c;让vue项目B 做出响应动作。案例代码 iframe 端 这就是一个普通的网页 <!DOCTYPE html> <html lang"en…

踩坑日记之:last-of-type选中的不是最后一个元素

有一说一&#xff0c;这个子类元素选择器太变态了…实际效果不是自己所想。先记录一下&#xff0c;还没想出来解决办法。 结果是&#xff0c;不止最后一个元素被选中了&#xff0c;其他li里面的最后一个元素也被选中了&#xff0c;li内部的<a>也被选中了

如何在idea中使用maven搭建tomcat环境

目录 一、创建maven项目 二、完善代码结构 三、引入依赖和插件 四、启动tomcat&#xff0c;运行项目 &#xff08;1&#xff09;点击添加配置 &#xff08;2&#xff09;点击左上角的加号&#xff0c;选择maven &#xff08;3&#xff09;输入运行命令 五、验证 一、创建…

4.4 多态

思维导图&#xff1a; 4.4 多态 在深入研究对象的世界后&#xff0c;我们已经学到了封装和继承。接下来&#xff0c;我们要讨论的是面向对象编程的另一个核心概念&#xff1a;多态。 4.4.1 多态概述 多态是面向对象的三大特性之一&#xff0c;它允许我们以统一的方式处理不同…

在IDEA运行spark程序(搭建Spark开发环境)

建议大家写在Linux上搭建好Hadoop的完全分布式集群环境和Spark集群环境&#xff0c;以下在IDEA中搭建的环境仅仅是在window系统上进行spark程序的开发学习&#xff0c;在window系统上可以不用安装hadoop和spark&#xff0c;spark程序可以通过pom.xml的文件配置&#xff0c;添加…

学生成绩这样分发

作为一名老师&#xff0c;经常被问到这样的问题&#xff1a;“老师&#xff0c;我的成绩什么时候发&#xff1f;”、“老师&#xff0c;我的成绩出来了吗&#xff1f;”等等。倍感烦恼&#xff0c;需要花费时间来回答这些问题&#xff0c;而且有时候学生还会因为成绩不佳而抱怨…

前端Vue选项卡tab切换【切换传不同参数】

目录 实例1&#xff1a;源码如下实例2&#xff1a;实战1&#xff1a;图片如下实例2&#xff1a;实战1&#xff1a;源码如下实例3&#xff1a;实战2&#xff1a;图片如下实例3&#xff1a;实战2&#xff1a;源码如下最后 适用于所有前端&#xff0c;用uniapp写的 实例1&#xff…

【k8s】pod进阶

一、资源限制 1、资源限制的概念 当定义 Pod 时可以选择性地为每个容器设定所需要的资源数量。 最常见的可设定资源是 CPU 和内存大小&#xff0c;以及其他类型的资源。 当为 Pod 中的容器指定了 request 资源时&#xff0c;调度器就使用该信息来决定将 Pod 调度到哪个节点上…

pt权重转onnx记录

方法: 1.一般YOLO 会自带一个权重pt转onnx模型的代码 export.py 2.打开export.py &#xff0c;我们运行该文件可以通过命令行运行&#xff0c;对照修改argument参数即可 3.运行命令行如下&#xff1a; python ./models/export.py --weights ./models/best.pt weights&#x…

1、Flink基础概念

1、基础知识 &#xff08;1&#xff09;、数据流上的有状态计算 &#xff08;2&#xff09;、框架和分布式处理引擎&#xff0c;用于对无界和有界数据流进行有状态计算。 &#xff08;3&#xff09;、事件驱动型应用&#xff0c;有数据流就进行处理&#xff0c;无数据流就不…

探路、寻解,SaaS企业的“中国路径”在哪?

当下的中国SaaS企业&#xff0c;需要建立的是一个可持续增长模式。 这种可持续增长是基于企业所在赛道的价值思考&#xff0c;即相信SaaS能给企业带来的价值&#xff0c;基于需求不断打磨产品&#xff0c;寻找优质的企业进行服务&#xff0c;与优质企业共生共长&#xff0c;同…

OpenCV学习(七)——图像阈值

图像阈值 7.1 简单阈值7.2 自适应阈值 7.1 简单阈值 cv2.threshold(src, thresh, maxval, type, dstNone)图像阈值 src&#xff1a;源图像&#xff0c;应该为灰度图。thresh&#xff1a;阈值&#xff0c;像素值小于阈值&#xff0c;则将其设置为0&#xff0c;否则将其设置为最…

使用 Curl 和 DomCrawler 下载抖音视频链接并存储到指定文件夹

项目需求 假设我们需要从抖音平台上下载一些特定的视频&#xff0c;以便进行分析、编辑或其他用途。为了实现这个目标&#xff0c;我们需要编写一个爬虫程序来获取抖音视频的链接&#xff0c;并将其保存到本地文件夹中。 目标分析 在开始编写爬虫之前&#xff0c;我们需要了…