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