005 Linux 冯诺依曼体系与操作系统的理解-CSDN博客

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

前言

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

文章重点

  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.驱动管理 这些管理都要遵守一个原则先描述再组织

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

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

小结

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

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: linux