Linux1.0核心游记<br><br>第一部分 基础知识(Basic knowledge ).....................................................................11 <br> 软件部分(Software part)...........................................................................................12 <br> S1.Makefile简介.....................................................................................................12 <br> S1.1Makefile规则.........................................................................................12 <br> S2.汇编简介 ...........................................................................................................17 <br> S2.1 汇编优缺点............................................................................................17 <br> S2.2 汇编语法(AT&T asm VS Intel asm).............................................18 <br> S2.3 Hello world!示例...............................................................................20 <br> S3.实模式向保护模式切换....................................................................................21 <br> S3.1 切换到保护方式的准备工作.................................................................21 <br> S3.2 使用段间指令切换进保护模式............................................................22 <br> S3.3 打开A20 地址线切换进保护模式........................................................23 <br> S4.gcc内嵌汇编......................................................................................................25 <br> S4.1 内嵌汇编格式.........................................................................................25 <br> S4.2 内嵌汇编示例.........................................................................................26 <br> S5.GDB调试器.......................................................................................................28 <br> S5.1 GDB命令................................................................................................29 <br> S5.2 GDB调试样例........................................................................................29 <br> S6.系统调用实现详解............................................................................................34 <br> S6.1 核心中提供的宏....................................................................................34 <br> S6.2 系统调用编号........................................................................................37 <br> S6.3 系统调用入口点及函数表....................................................................40 <br> S6.4 对系统调用调用....................................................................................41 <br> 硬件部分(Hardware part)..........................................................................................44 <br> H1.操作系统的引导...............................................................................................44 <br> H1.1 BIOS的工作...........................................................................................44 <br> H1.2 操作系统的引导块程序.......................................................................44 <br> H2. X86 CPU 寻址简介........................................................................................47 <br> H2.1 实模式...................................................................................................47 <br> H2.2 实模式方式下物理地址的形成............................................................48 <br> H2.3 保护模式...............................................................................................49 <br> H2.4 保护模式方式下物理地址的形成........................................................49 <br> H3. IDT & GDT & LDT .........................................................................................51 <br> H3.1 IDT .........................................................................................................51 <br> H3.2 GDT & LDT ...........................................................................................52 <br> H4.8259A可编程中断控制器................................................................................53 <br> H4.1 8259A芯片简介.....................................................................................53 <br> H4.2 8259A芯片对的中断处理过程.............................................................54 <br> H4.3 8259A编程方式.....................................................................................55 <br> H5.I/O端口及指令..................................................................................................61 <br> H5.1I/O端口.......................................<br><br>A1.模块的编写.............................................................................................................396 <br> A1-1 模块代码及分析..........................................................................................396 <br> A1-2 模块的加载、注销及查看..........................................................................398 <br> A2.系统调用的添加.....................................................................................................400 <br> A2-1 静态添加系统调用......................................................................................400 <br> A2-1-1 讨论Linux系统调用的体系.............................................................400 <br> A2-1-2 修改代码来添加系统调用..............................................................405 <br> A2-2 动态添加系统调用......................................................................................406 <br> A2-2-1 动态添加系统调用的原理..............................................................407 <br> A2-2-2 实现动态添加、修改系统调用......................................................408 <br> A2-2-3 反汇编capturemod.o并分析之........................................................414 <br> A3.函数库的编写.........................................................................................................419 <br> A3-1 静态函数库的编写.....................................................................................419 <br> A3-1-1 包含算法的各个文件及Makefle .....................................................420 <br> A3-1-2 测试静态函数库的程序及Makefile ................................................422 <br> A3-1-3 静态库编译情况..............................................................................423 <br> A3-1-3 主程序与静态库连接......................................................................425 <br> A3-2 动态函数库的编写.....................................................................................425 <br> A3-2-1 动态库编译情况..............................................................................426 <br> A3-2-2 使用动态装载器..............................................................................428 <br> A3-3 动态/静态函数库优点 ...............................................................................429 <br> A3-3-1 静态库优点......................................................................................429 <br> A3-3-2 动态库优点.................................... 【Linux1.0核心游记】:深入操作系统的心脏地带 Linux操作系统自1991年问世以来,经过数十年的发展,已经成为了全球最受欢迎的操作系统之一。对Linux内核的深入了解,不仅可以帮助我们更好地理解操作系统的工作原理,还可以让我们更有效地利用系统资源,实现更高级别的定制和优化。本文档——【Linux1.0核心游记】,就带领我们走进了Linux 1.0内核的世界,从基础知识到系统调用,再到硬件层面的深入探讨,全面剖析了操作系统从启动到稳定运行的整个过程。 文档从软件部分入手,深入探讨了Makefile的基础知识。作为项目构建和管理的重要工具,Makefile定义了构建过程中的编译规则、依赖关系和操作命令,是每一个Linux开发者都需要掌握的基础。文档不仅介绍了Makefile的组成,还通过实例讲解了如何使用Makefile来构建复杂的项目。 在软件部分的后续章节中,汇编语言作为底层开发的重要工具被详细介绍。它简洁而强大的特点使其在系统编程中占据了一席之地。作者不仅指出了汇编语言的优缺点,并且比较了两种主流的汇编语法:AT&T汇编和Intel汇编。然后,通过编写一个简单的"Hello world!"程序,演示了汇编语言的基本用法。 实模式向保护模式的切换是操作系统启动过程中的关键环节。这部分内容涉及到了计算机系统从启动到进入保护模式前的准备工作,以及使用段间指令和开启A20地址线等技术细节。这对于理解操作系统是如何从硬件层面获取控制权,开始其运行历程至关重要。 gcc内嵌汇编是高级语言与汇编语言结合的产物,它为开发者提供了一个灵活而强大的编程接口。文档中通过介绍内嵌汇编的格式和示例,帮助读者掌握如何在C语言程序中嵌入汇编代码,以提高程序性能和执行效率。而GDB调试器的介绍,则向我们展示如何利用GDB跟踪程序执行过程,定位和解决编程中遇到的错误和问题。 在对系统调用的深入研究中,文档不仅详细解释了系统调用的机制,包括宏的定义、系统调用编号、入口点和函数表,还指导读者如何实际调用系统调用。这对于理解操作系统如何管理进程、文件和设备等资源非常有帮助。 硬件部分是【Linux1.0核心游记】的另一个重点。它从操作系统的引导开始,探讨了BIOS的工作原理以及操作系统的引导块程序的编写。这些内容是理解操作系统启动过程的基石。 接下来,文档对X86 CPU的寻址模式进行了深入的讲解。实模式和保护模式是CPU工作状态的两种不同形式,它们有着不同的物理地址计算方法。文档通过对比讲解,帮助读者理解CPU在不同模式下的行为。 IDT、GDT和LDT是操作系统管理中断和内存的重要数据结构。文档详细解释了它们的定义、作用以及在保护模式下的地址形成。此外,8259A可编程中断控制器作为PC架构中重要的中断设备,其工作原理、中断处理流程和编程方式也得到了详尽的阐述。 硬件部分的文档介绍了I/O端口及其指令的使用,这是硬件交互的基础。无论是在早期的计算机系统中,还是在现代的高性能计算中,对I/O端口的理解都是不可或缺的。 除了这些核心内容之外,【Linux1.0核心游记】还提供了一系列附加内容,包括编写Linux内核模块、添加系统调用、以及编写和优化函数库的方法。这些内容为读者展示了如何在Linux内核层面上进行编程和优化,从而更深入地控制系统的运行。 【Linux1.0核心游记】为读者提供了一条深入了解Linux内核的途径,涵盖了从低级别硬件交互到高级别系统调用的全面知识,是学习Linux操作系统内部运作机制的宝贵资源。通过这份文档,无论是初学者还是有经验的开发者,都可以获得宝贵的洞见,提升自己在Linux系统开发和优化方面的能力。
- wangxuef2013-11-11根本打不开,骗人的。。。。。。
- kevin61329192011-12-11下下来打不开,说不是标准的PDF文件
- 粉丝: 5
- 资源: 232
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于双流卷积多注意力模型的行人意图识别研究.pdf
- 基于深度神经网络和注意力机制的实体关系抽取方法研究.pdf
- 基于双通道交互的图卷积网络方面级情感 分析.pdf
- 受生物视觉“图形–背景”分辨机制启发的遥感影像水体信息提取方法.pdf
- 视交叉上核神经元递质释放与弛豫速率的异质关系对导引的影响研究.pdf
- 基于最大决策熵的快速属性约简算法.pdf
- 序决策系统下近似约简的启发式算法.pdf
- 进流畸变下涡流发生器对喷水推进器性能的影响研究.pdf
- 基于Retinex-Net的低照度图像增强算法研究.pdf
- 风扇部件性能退化及其对整机性能影响研究.pdf
- 台球收费系统设计与实现-论文+Java、MySQL+台球收费、体育馆收费
- 台球收费系统+Java、MySQL+台球收费、体育馆收费
- 基于GIS边缘云的水质监测系统研究.pdf
- 环形涵道串列翼空气动力技术的研究.pdf
- 电磁兼容及安全认证.pdf
- 可重复使用航天运载器及其关键技术.pdf