操作系统比吃饭难多了,你这不开玩笑吗?
是难,但我没有在开玩笑。 理解操作系统并不是从零开始制作一个操作系统,就像吃一顿饭,油盐酱醋米面菜肉蛋也不是我们从零生产的,但由于饭是必需品,我们不会想那么多道理,而操作系统则是无关咸淡的遥远事物,理解它用的都是兴趣使然的劲(剩余价值),只有极少数人靠它吃饭,这样一想心理上是不是就不难了?
且看我将操作系统与吃一顿饭的逻辑对上给你看看。
吃饭
| 操作系统
| 筷子
| 计算资源(CPU) | 面前的大小餐盘
| 缓存/内存 | 餐桌上的饭菜
| 磁盘里的文件
| 冰箱里的饭菜
| 持久化文件
| 油盐酱醋米面菜肉蛋 | 底层库
| 做成的菜
| 软件包、应用数据
| 大人大碗盛饭菜,小孩小碗盛饭菜
| 虚拟化
| 大人吃的大碗饭菜,小孩吃的小碗饭菜 | 进程
| 大小碗饭菜里不同的菜和饭
| 线程 | 碗里的饭粒
| 栈
| 碗里的一道菜肴
| 堆 | 狼吞虎咽的吃好多菜和饭
| 并发 | 吃多了慢点怕噎着
| 锁
| 吸管、勺子、刀叉
| 设备
| 餐桌
| 总线
| 公筷给别人夹饭菜
| 网络通信
| 公筷
| 网卡
| 切换使用吃饭工具
| 中断
| 脑子里想下一筷子吃啥
| 调度 | 吃后厨包好的饺子
| 内核态调用
| 吃个洗好的西红柿
| 用户态调用
| 别人乱给你盘子夹饭菜,满了都
| 内存溢出
| 好菜大家一起夹菜
| 抢占
| 后厨不同的厨子
| 内核版本
| 做菜的方法
| 内核架构
| 后厨一个大厨子,活包圆了
| 宏内核 | 后厨几个厨子,商量着做
| 微内核
| 冰箱里买来的越来越方便易食的食材
| 越来越高级的编程语言
| ... | ...
|
是否还好吃?
|