操作系统实战45讲

2025-01-03 01_程序的运行过程:从代码到机器运行
2025-01-03 02_几行汇编几行C:实现一个最简单的内核
2025-01-03 03_黑盒之中有什么:内核结构与设计
2025-01-03 04_震撼的Linux全景图:业界成熟的内核架构长什么样?
2025-01-03 05_CPU工作模式:执行程序的三种模式
2025-01-03 06_虚幻与真实:程序中的地址如何转换?
2025-01-03 07_Cache与内存:程序放在哪儿?
2025-01-03 08_锁:并发操作中,解决数据同步的四种方法
2025-01-03 09_瞧一瞧Linux:Linux的自旋锁和信号量如何实现?
2025-01-03 10_设置工作模式与环境(上):建立计算机
2025-01-03 11_设置工作模式与环境(中):建造二级引导器
2025-01-03 12_设置工作模式与环境(下):探查和收集信息
2025-01-03 13_第一个C函数:如何实现板级初始化?
2025-01-03 14_Linux初始化(上):GRUB与vmlinuz的结构
2025-01-03 15_Linux初始化(下):从_start到第一个进程
2025-01-03 16_划分土地(上):如何划分与组织内存?
2025-01-03 17_划分土地(中):如何实现内存页面初始化?
2025-01-03 18_划分土地(下):如何实现内存页的分配与释放?
2025-01-03 189-操作系统实战45讲
2025-01-03 19_土地不能浪费:如何管理内存对象?
2025-01-03 20_土地需求扩大与保障:如何表示虚拟内存?
2025-01-03 21_土地需求扩大与保障:如何分配和释放虚拟内存?
2025-01-03 22_瞧一瞧Linux:伙伴系统如何分配内存?
2025-01-03 23_瞧一瞧Linux:SLAB如何分配内存?
2025-01-03 24_活动的描述:到底什么是进程?
2025-01-03 25_多个活动要安排(上):多进程如何调度?
2025-01-03 26_多个活动要安排(下):如何实现进程的等待与唤醒机制?
2025-01-03 27_瞧一瞧Linux:Linux如何实现进程与进程调度_
2025-01-03 28_部门分类:如何表示设备类型与设备驱动?
2025-01-03 29_部门建立:如何在内核中注册设备?
2025-01-03 30_部门响应:设备如何处理内核I_O包?
2025-01-03 31_瞧一瞧Linux:如何获取所有设备信息?
2025-01-03 32_仓库结构:如何组织文件_
2025-01-03 33_仓库划分:文件系统的格式化操作
2025-01-03 34_仓库管理:如何实现文件的六大基本操作?
2025-01-03 35_瞧一瞧Linux:虚拟文件系统如何管理文件?
2025-01-03 36_从URL到网卡:如何全局观察网络数据流动?
2025-01-03 37_从内核到应用:网络数据在内核中如何流转
2025-01-03 38_从单排到团战:详解操作系统的宏观网络架构
2025-01-03 39_瞧一瞧Linux:详解socket实现与网络编程接口
2025-01-03 40_瞧一瞧Linux:详解socket的接口实现
2025-01-03 41_服务接口:如何搭建沟通桥梁?
2025-01-03 42_瞧一瞧Linux:如何实现系统API?
2025-01-03 43_虚拟机内核:KVM是什么?
2025-01-03 44_容器:如何理解容器的实现机制?
2025-01-03 45_ARM新宠:苹果的M1芯片因何而快?
2025-01-03 46_AArch64体系:ARM最新编程架构模型剖析
2025-01-03 结束语_生活可以一地鸡毛,但操作系统却是心中的光
2025-01-03 开篇词_为什么要学写一个操作系统?
2025-01-03 用户故事_操作系统发烧友:看不懂?因为你没动手
2025-01-03 用户故事_成为面向“知识库”的工程师