深入 Linux 内核之路
汇编语言 |
---|
此部分基于王爽老师的《汇编语言(第3版)》,旨在理解通过汇编语言控制 CPU 行为的基本方法。本部分以 16-bits CPU Intel 8086 为例子开展叙述,通过使用 DosBox Emulator 来运行编译后的汇编程序,并且观察仿真的 CPU 的寄存器、内存单元状态等方式来进行学习。 |
8086 实模式 |
1. DosBox 的配置和使用 介绍了 DOS Emulator —— DosBox 的安装配置方法 |
2. 基本寄存器和基本操作指令 介绍了 8086 CPU 内部的各个寄存器以及操作寄存器的常用指令 |
3. 代码段、栈段和数据段 介绍了汇编代码的分段实质,并且展示了 MASM 汇编代码风格 |
4. 例子:规范化地访问数据段中的数据 通过一个例子展示了如何规范有序地访问数据段中的数据 |
5. 转移指令:JMP, JCXZ, LOOP, RET 和 CALL 详细介绍了 JMP, JCXZ, LOOP, RET 和 CALL 转移指令及其背后的原理 |
6. 标志位寄存器 详细介绍了 8086 CPU 的各个标志寄存器位的作用和相应的指令 |
7. 内中断 详细介绍了 8086 CPU 的内中断原理 |
8. 端口 介绍了 8086 CPU 访问端口的过程原理和指令,并且以读取 CMOS RAM 为例子给出了说明 |
9. 外中断 详细介绍了 8086 CPU 的外中断原理 |
8086 保护模式 |
Hello! Linux Kernel |
---|
[📌PIN] Linux 内核官方文档:The Linux Kernel documentation |
1. Intro to Linux Kernel |
操作系统实现
Minux: 一个微内核操作系统的设计与实现 |
---|
[📌PIN] Minix 源码树:Minix Source Code |
[📌PIN] 参考书籍网盘资源:百度网盘链接,提取码:bo32 |
1. 操作系统概述与历史 通过理解操作系统在整个系统中的位置来理解其意义和功能;通过浏览操作系统的历史来理解其背后一些设计理念上的历史缘由 |
其它未归档
Linux 设备驱动 |
---|
1. PCIe 网卡驱动分析 基于 Intel I350 Ethernet controller 的 PCIe 网卡对 Linux 内核的网卡驱动进行分析,并且继续深入,对 Linux 的收发数据包流程进行追踪 |