伤心客 发表于 2024-6-11 08:40:16

Linux:冯·诺依曼体系布局和操作系统

冯·诺依曼体系布局

我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系。
https://img-blog.csdnimg.cn/direct/6604581d28744f789716ef831dfb2268.png
截至目前,我们所认识的计算机,都是由一个个的硬件组件组成:

[*]输入单元:包括键盘, 鼠标,扫描仪, 写板,磁盘、摄像头、网卡等
[*]输出设备:表现器、打印机、播放器、磁盘、网卡
[*]中央处理器(CPU):CPU中有运算器和播放器,运算器对数据进行计算(算数运算和逻辑运算);控制器对计算机硬件流程进行一定的控制。
在图中我们还可以看到存储器,存储器指的就是内存。不思量缓存环境,CPU能且只能对内存进行读写,不能访问外设(输入或输出设备)。外设(输入或输出设备)要输入或者输出数据,也只能写入内存或者从内存中读取。一句话:所有设备都只能直接和内存打交道。
因为CUP的运行速度很快,而输入输出设备的读取/写入速度很慢,如果直接让CPU和输入输出设备交互,CUP会有很长时间是闲置的,这就造成了资源浪费。而内存的速度介于输入输出设备和CPU之间,以是让内存充当输入输出设备和CUP之间的枢纽可以减少资源浪费,在CPU计算的同时,可以将要处理的数据提前加载到内存中,等CPU要处理时可以直接有内存提供数据,极大进步了运算效率。
操作系统

概念

任何计算机系统都包罗一个根本的程序集合,称为操作系统(OS)。
操作系统通过帮助用户管理好软硬件资源,来为用户提供精良的实行环境。
笼统的明白,操作系统包括:

[*]内核(进程管理,内存管理,文件管理,驱动管理)
[*]其他程序(例如函数库,shell程序等等)
操作系统的作用


[*]与硬件交互,管理所有的软硬件资源
[*]为用户程序(应用程序)提供一个精良的实行环境
定位

在整个计算机软硬件架构中,操作系统的定位是:一款纯正的“搞管理”的软件
机制

https://img-blog.csdnimg.cn/direct/85e33ce636b74c8eba730a05cecc5473.png
图示为冯诺依曼体系布局下的计算机软硬件布局。最底层为一个个硬件,磁盘、鼠标、键盘等,每一个硬件都有自己对应的驱动程序,只有驱动程序才能控制相应的硬件。
操作系统担任底层硬件的管理工作,包括:内存管理,进程管理,文件管理,驱动管理。
以是操作系统管理底层硬件是通过管理硬件对应的驱动来实现的。
这就是操作系统管理底层硬件的布局。
而操作系统为了包管自己内部数据的安全,也为了包管能给用户提供服务,操作系统以接口的方式给用户提供调用的入口,来获取操作系统内部的数据。
系统接口是由操作系统提供的,用C语言实现的,自己内部的函数调用。所有访问操作系统的行为,都只能通过系统调用完成。
以是用户是不能直接对操作系统内部的数据进行操作的,想要对操作系统进行操作,只能通过操作系统提供的系统调用接口。
而有一些程序员又对系统调用接口进行封装,形成了库,用户在编写程序时,可以调用库方法,库方法会调用系统调用接口,通过这样的方式来操作操作系统。
操作系统如何管理硬件

在操作系统中,管理任何对象,最终都可以转化成为对某种数据布局的增删查改。
以是操作系统中存在大量的数据布局。
操作系统管理硬件遵循一个原则:先描述,再构造。
描述指的是用布局体来存储硬件的各种信息,创建一个布局体对象,通过对该布局体对象的增删查改代表对硬件的管理。
先描述,再构造。
描述指的是用布局体来存储硬件的各种信息,创建一个布局体对象,通过对该布局体对象的增删查改代表对硬件的管理。
构造指的是多个布局体对象的管理方式,一般是用链表或其他高效的数据布局。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Linux:冯·诺依曼体系布局和操作系统