冯诺依曼体系结构和操作系统概念的介绍
操作系统是管理计算机软硬件资源、控制程序运行、为用户和应用程序提供服务接口的系统软件,是硬件与应用软件之间的中间层。• 对下,与硬件交互,管理所有的软硬件资源• 对上,为用户程序(应用程序)提供一个良好的执行环境1.软硬件体系结构层状结构2. 访问操作系统,必须使用系统调用-- 其实就是函数,只不过是系统提供的3. 我们的程序,只要你判断出它访问了硬件,那么它必须贯穿整个软硬件体系结构4. 函数库
目录
一.计算机硬件结构——冯诺依曼体系
1.组成:
1.组成部件
运算器(ALU):算术运算(加减)、逻辑运算(与或非)。
控制器(CU):取指令→译码→发控制信号,协调全机;含程序计数器 PC(存下条指令地址)。
存储器(主存):即内存,统一存程序 + 数据;一维线性地址空间,按地址访问。
输入设备:键盘、鼠标、网卡、磁盘等,将信息转为二进制。
输出设备:显示器、打印机、网卡、磁盘等,结果转出。

2.组成链接部件的总线
分类(按照总线的功能)
数据总线 DB传真实数据、指令,双向传输
地址总线 AB传内存地址,找数据放哪,单向
控制总线 CB传控制命令(读、写、启停、同步)
各部件依赖的总线:
1.控制器依靠控制总线指挥所有设备,发命令
2.运算器靠数据总线拿数据、传结果
3.主存储器(内存)同时连数据 + 地址 + 控制三大总线,总枢纽
4.输入/输出设备靠数据总线从内存输入/输出数据
简化一下:
CPU(运算器 + 控制器) ←三总线→ 内存内存 ←数据总线→ 输入 / 输出设备
我们根据总线的位置来分类:
外部:IO总线
内部:系统总线
2.工作流程和关系
结构关系特征:
我们可以根据冯诺依曼系统的结构特点可以得出:内存将计算机分割为计算机内部——cpu和计算机外部——外设。现在有一个问题是:为什么要这样分割?为什么直接不让外设直接和cpu交互?
1. 速度差距天差地别(最主要)
CPU:纳秒级,运算极速
外设:毫秒 / 微秒级,慢到极致如果外设直接连 CPU,CPU 会全程等待外设,99% 性能直接废掉
内存做缓冲:CPU 全速跑,外设慢慢传,互不耽误
2.次原因
外设太多,线太多太复杂,直接连cpu上会爆炸。。。
信号电压、频率、通信规则不一样,无法直接对接
外设只是负责录入 / 输出,无权直接指挥 CPU 执行指令(不能让手脚指挥大脑)
而且为了让外设跟上cpu的速度,单纯的内存是不够的,我们还需要寄存器——CPU 三级高速缓存 L1/L2/L3,层层逐级提速、逐级缓冲
寄存器特点就是:空间小,速度快,价格贵

工作流程:
数据传输:数据在内外部流动

二.操作系统的概念
1.组成
两大组成部分
1. 内核(进程管理,内存管理,文件管理,驱动管理)
2. 其他程序(例如函数库,shell程序等等)

2.定义
操作系统是管理计算机软硬件资源、控制程序运行、为用户和应用程序提供服务接口的系统软件,是硬件与应用软件之间的中间层。
• 对下,与硬件交互,管理所有的软硬件资源
• 对上,为用户程序(应用程序)提供一个良好的执行环境

1.软硬件体系结构层状结构
2. 访问操作系统,必须使用系统调用 -- 其实就是函数,只不过是系统提供的
3. 我们的程序,只要你判断出它访问了硬件,那么它必须贯穿整个软硬件体系结构
4. 函数库可能在底层封装了系统调用
3.如何管理各种资源
1.管理目标:
对内:
进程管理
存储管理(内存)
设备管理
文件管理
对外: 用户管理
2.管理方式:
其实就是先把软硬件各种核心属性用一个结构体 “打包”,就可以对应填入各种数据了,然后将所有的软硬件各自的结构体组织起来(可以用不同高效合适的数据结构组织),就可以实现统一管理了。
抽象出来就是:先根据其数据进行描述其属性,再使用合适的数据结构将其组织起来,这样就方便增删查改(管理)了。阶段说就是:先描述,再组织。
4.系统调用和库函数的理解
1. 系统调用
定义:操作系统内核向用户程序暴露的、访问硬件 / 系统资源的唯一接口,是用户态进入内核态(切换系统操作的对象(对用户(shell),还是对硬件(IO)))的 “入口”。
功能:整理所有资源,方便用户使用并且更加高效,防止用户直接接触设备,造成混乱,就像是银行不会让客户自己去金库取钱。
2.函数调用
定义:更加便利的使用工具(系统调用还是太复杂了)
分类:
1.封装了系统调用的库函数:比如 C 标准库的printf、fopen,底层会调用write、open系统调用
2. 纯用户态的库函数:比如strlen、memcpy,完全在用户态执行,不触发系统调用
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐

所有评论(0)