个人主页:C++忠实粉丝
欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C++忠实粉丝 原创冯诺依曼体系结构与操作系统简介
收录于专栏[Linux学习]
本专栏旨在分享学习Linux的一点学习笔记,欢迎大家在评论区交流讨论💌
目录
1. 冯诺依曼结构体系介绍:
1.1 冯诺依曼体系结构图解 :
1.2 冯诺依曼体系结构解释 :
1.3 冯诺依曼体系结构的理解 :
1.3.1 什么是内存?
1.3.2 为什么要有内存?
2. 操作系统的概念与定位:
2.1 操作系统的概念:
2.1.1 设计操作系统的目的?
2.2 操作系统的定位:
2.2.1操作系统如何管理的?
1. 冯诺依曼结构体系介绍:
1.1 冯诺依曼体系结构图解 :
1.2 冯诺依曼体系结构解释 :
截至目前,我们所认识的计算机,都是有一个个的硬件组件组成
输入单元:包括键盘, 鼠标,扫描仪, 写板等
中央处理器(CPU):含有运算器和控制器等
输出单元:显示器,打印机等
外设 : 外部装备
外设装备包括 : 输入设备和输出设备
输入设备 : 键盘, 鼠标, 网卡, 摄像头, 话筒...
输出设备: 显示器, 磁盘, 网卡, 打印机...
存储器 : 内存
运算器 + 控制器 ~= CPU
1.3 冯诺依曼体系结构的理解 :
1. 这里的存储器指的是内存
2. 不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备) 外设(输入或输出设备)要输入或者输出数据,也只能写入内存或者从内存中读取。
3. 一句话,所有设备都只能直接和内存打交道
1.3.1 什么是内存?
内存是计算机的重要组成部分,负责数据和程序的存储与访问。
1.3.2 为什么要有内存?
我们直接这样设计不行吗?而且CPU还比内存快
1. 数据存储和管理
内存的作用:内存用于临时存储运行程序所需的数据和指令。CPU在执行程序时需要快速访问这些数据,内存提供了一个高效的存储空间。
容量问题:CPU的寄存器(内存的一种)数量有限,通常只能存储少量的数据,而程序的规模和数据量往往超过这些寄存器的容量。因此,内存是必需的,以容纳更大的数据集和更复杂的程序。(而且CPU比内存贵的多,这样能让电脑价格更加平民)
2. 程序与数据分离
冯·诺依曼结构:根据冯·诺依曼结构,程序和数据是存储在同一存储器中的,这意味着CPU可以随时从内存中读取指令和数据。这个设计简化了计算机的架构,并使得程序可以动态变化。
灵活性和可变性:将程序和数据分开存储于内存,使得程序可以根据输入数据进行不同的处理,这样的设计灵活性更高。
3. CPU与内存的速度差异
速度差异:虽然CPU的速度比内存快,但CPU的速度过快导致直接与CPU进行交互会造成效率低下。(因为输入输出的IO操作较慢,根据木桶定律,效率取决于慢的一方)CPU在执行指令时,如果每次都从寄存器或内部存储器中获取数据,将使得资源使用不合理。
数据传输:内存虽然相对较慢,但它能够更有效地管理大量数据,并通过总线与CPU进行高效的数据传输。当数据在计算机内部流转的时候,本质是在不同设备间进行拷贝!设备的拷贝效率本质就是计算机的效率!
4. 输入 / 输出操作
I / O操作:计算机需要与外部设备(如硬盘、显示器、输入设备等)进行交互,这些设备的数据传输速度通常较慢。内存可以作为缓冲区,在CPU和外部设备之间进行数据传输,优化了I / O操作的效率。
5. 处理多任务和并行计算
支持多任务:内存可以同时存储多个程序和数据,CPU可以在它们之间快速切换,支持多任务处理。
并行处理:在现代计算机中,多个CPU核心可以同时从内存中读取数据,实现并行计算,这在复杂计算中显著提高了性能。
6. 简化设计
设计简化:通过将内存与CPU分开,冯·诺依曼体系结构简化了计算机设计,允许使用标准化的存储器接口来访问数据和指令。这种分层设计使得系统的扩展和升级变得更为容易。
2. 操作系统的概念与定位:
2.1 操作系统的概念:
任何计算机系统都包含一个基本的程序集合,称为操作系统(OS)。笼统的理解,操作系统包括:
内核(进程管理,内存管理,文件管理,驱动管理)
其他程序(例如函数库,shell程序等等)
2.1.1 设计操作系统的目的?
为什么要有OS:
1. 操作系统对下软硬件资源的管理,是稳定的,高效的,安全的,能进行良好的工作(手段)
2. 操作系统对上要给用户提供一个稳定的,高效的,安全的运行环境(目的)
总结:
与硬件交互,管理所有的软硬件资源
为用户程序(应用程序)提供一个良好的执行环境
2.2 操作系统的定位:
在整个计算机软硬件架构中,操作系统的定位是:一款纯正的“搞管理”的软件
2.2.1操作系统如何管理的?
"先描述在组织"
操作系统通过进程管理、内存管理、文件管理、设备管理、用户管理、安全性管理和网络管理等多个方面来管理计算机资源。它在硬件和用户、应用程序之间建立了一层抽象,使得计算机的操作更加简单、高效和安全。通过这些管理机制,操作系统能够确保计算机系统的稳定运行,并为用户和应用程序提供一个良好的运行环境。