简单理解操作系统结构

1.冯诺依曼体系理解

这个结构体系主要是用来描述 电脑硬件的之间的关系

输入设备 很明显就是 键盘 鼠标等把数据写入计算机的东西

存储器可以通俗理解为 内存 硬件不直接和软件打交道 而是和内存打交道

输出设备 有显示屏 打印机等一些设备 把数据给显示出来的

整一个体系体现木桶效应 运行速度取决于最短的那一个

比如这里 输入设备先把数据存入存储器里 当输出设备要用的时候就直接从内存里拿 即可 比输入设备与CPU再与输出设备的效率高的多 同时也不那么会拖CPU的后腿 达到相对好一点的传输速度

理解这个之后 我们知道路怎么修的 人就得怎么走 意思就是 硬件是这么安排的 那么也就在一定程度上决定了软件的运行方式

2. 操作系统 结构

普通人接触的一般都是 广义上的操作系统

那么为什么要有操作系统呢? 它的存在是为了 对上服务 客户 对下与硬件打交道

操作系统想要对硬件进行管理 首先要把硬件的信息描述出来 然后通过结构图体现出来 最后再进行 用数据结构组织起来 比如链表 因此最后就可以把对硬件的管理 转化为对数据结构的增删改查

从实际问题的管理 转化为对数据的管理 这个过程可以称之为数学建模

理解了操作系统对下的管理 再来;理解操作系统 对上的服务

很明显 用户有时候想对内存 进程 文件 驱动(与硬件有关的数据结构)进行管理

直接让用户访问系统文件肯定是不安全的 同时也是复杂的 所以为了让用户可以对硬件进行管理 或者是其他操作 这时候就出现了 系统调用这一说法 系统调用会提供函数接口来给用户 进行对下管理

此时 就衍生出来了 库函数 各种接口之类的东西 方便对普通人提供简单操作实现 对下实现管理

相关推荐
sxd200110 分钟前
Vmware和multicast
linux·windows·vmware·无线桥接·multicast
暴力求解12 分钟前
Linux网络---NAT代理服务、内网穿透
linux·网络·智能路由器
二十雨辰13 分钟前
[Java]-JVM面试题
java·开发语言·jvm
cfm_291417 分钟前
ConcurrentHashMap 线程安全机制与 JDK 1.8 演进
java·开发语言·安全
tqs_1234522 分钟前
值传递与引用传递
java·开发语言·python
2601_9621819625 分钟前
Spring boot从0到1 - day01
java·spring boot·后端
一直C31 分钟前
Linux系统编程|信号进阶 + SystemV IPC(消息队列、共享内存)
linux·c语言·开发语言·算法·青少年编程·vim
_F_y33 分钟前
Linux网络常用指令
linux·运维·网络
典典分享指南39 分钟前
短视频分镜提示词:让 AI 出片的产品口播
java·c#·bash·composer·symfony
IT_Octopus41 分钟前
G1 与 GC 日志入门课程(以本次离线菜单 Full GC 事故为教材)
java·jvm