课程介绍

课程来自于 Linux内核分析课程

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

本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用,未经站长允许禁止转载、转售本站资源。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络站长QQ:502212423。

如果您已经成功付款但是无法显示下载地址,下载地址失效,请联系站长提供付款信息为您处理

教程资源、源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好是您所需要的资源