课程介绍
课程来自于 Linux内核分析课程
这门课程将带你深入了解Linux内核的工作原理。我们将从存储程序计算机的工作模型开始,逐步学习X86汇编基础,并通过反汇编一个简单的C程序来深入理解汇编指令的执行过程。接着,我们将了解操作系统如何工作,以及利用mykernel实验模拟计算机硬件平台。
我们还将构造一个简单的操作系统内核,并在mykernel的基础上构建一个更完整的Linux系统。在这个过程中,我们将学习系统调用、用户态、内核态和中断等概念,并深入理解进程的创建和管理。
最后,我们将探讨Linux系统的一般执行过程和架构。这门课程涵盖了Linux内核的多个方面,适合对计算机底层工作原理感兴趣的学员。无论你是学生、开发者还是爱好者,都可以从中受益匪浅。
文件目录
1.存储程序计算机工作模型
HowtheComputerWorks.pdf
存储程序计算机工作模型.avi
2.X86汇编基础
参考资料.txt
1.X86 Registers.avi
2.X86汇编指令一(mov指令及几种内存寻址方式).avi
3.X86汇编指令二(push、pop、call、ret).avi
4.分析几个汇编指令片段(一).avi
5.分析几个汇编指令片段(二).avi
3.反汇编一个简单的C程序分析其汇编指令执行过程
执行过程演示.gif
1.反汇编一个简单的C程序.avi
2.C程序和对应的汇编指令.avi
3.完整汇编程序执行过程分析.avi
4.操作系统是如何工作的?
FoundationsForHackingLinux.pdf
1.三个法宝.avi
2.深入理解函数调用堆栈.avi
3.参数传递与局部变量.avi
计算机是如何工作的?(总结)——三个法宝.txt
5.利用mykernel实验模拟计算机硬件平台
mykernel实验指导.txt
1.mykernel实验背后涉及的思想.avi
2.利用mykernel实验模拟计算机硬件平台.avi
6.在mykernel基础上构造一个简单的操作系统内核
1.C代码中嵌入汇编代码的写法.avi
2.一个简单的操作系统内核源代码.avi
3.运行这个精简的操作系统内核.avi
7.Linux内核源代码简介
1.Linux内核源代码.avi
8.构造一个简单的Linux系统
实验指导.txt
1.构造一个简单的Linux系统MenuOS.avi
9.跟踪调试Linux内核的启动过程
Linux内核启动过程相关的参考资料.txt
1.使用gdb跟踪调试Linux内核的方法.avi
2.简单分析一下start_kernel.avi
10.用户态、内核态和中断
1.用户态、内核态和中断.avi
11.系统调用概述
SystemCall.pdf
1.系统调用概述.avi
12.使用库函数API和C代码中嵌入汇编代码触发同一个系统调用
1.使用库函数API获取系统当前时间.avi
2.C代码中嵌入汇编代码的写法.avi
3.使用C代码中嵌入汇编代码触发系统调用获取系统当前时间.avi
13.给MenuOS增加time和time-asm命令
1.给MenuOS增加time和time-asm命令.avi
14.使用gdb跟踪系统调用内核函数sys_time
1.使用gdb跟踪系统调用内核函数sys_time.mp4
15.系统调用在内核代码中的处理过程
1.系统调用在内核代码中的工作机制和初始化.mp4
2.简化后便于理解的system_call伪代码.mp4
3.简单浏览system_call到iret之间的主要代码.mp4
16.进程的创建
浏览进程创建过程相关的关键代码.wmv
进程的创建的创建和撤销资料参考.txt
理解进程创建过程复杂代码的方法.wmv
创建的新进程是从哪里开始执行的.wmv
使用GDB跟踪创建新进程的过程.wmv
进程的创建概览及fork一个进程的用户态代码.wmv
17.进程的描述
进程描述符task_struct数据结构(一).wmv
进程描述符task_struct数据结构(二).wmv
18.预处理编译链接和目标文件的格式
目标文件的格式ELF.wmv
可执行程序是怎么得来的.wmv
预处理编译和链接相关命令参考.txt
静态链接的ELF可执行文件和进程的地址空间.wmv
19.可执行程序共享库和动态链接
装载可执行程序之前的工作.wmv
装载时动态链接和运行时动态链接应用举例.wmv
可执行程序共享库和动态链接.txt
20.可执行程序的装载
浅析动态链接的可执行程序的装载.wmv
可执行程序的装载.txt
可执行程序的装载相关关键问题分析.wmv
sys_execve的内部处理过程.wmv
可执行程序的装载与庄生梦蝶的故事.wmv
使用GDB跟踪sys_execve内核函数的处理过程.wmv
21.进程切换的关键代码switch_to分析
进程的调度时机与进程的切换.txt
进程上下文切换相关代码分析.wmv
进程调度与进程调度的时机分析.wmv
22.Linux系统的一般执行过程
linux系统执行过程中的几个特殊情况.wmv
内核与舞女.wmv
Linux系统的一般执行过程.txt
linux系统的一般执行过程分析.wmv
23.linux系统架构和执行过程概览
linux操作系统架构概览.wmv
最简单也是最复杂的操作--执行ls命令.wmv
LinuxArchitectureAndSystemExecution.pdf
从CPU和内存的角度看linux系统的执行.wmv
声明:本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理,邮箱:502212423@qq.com。