![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
全面解析Linux内核3.10.x
文章平均质量分 76
Keven2116
这个作者很懒,什么都没留下…
展开
-
全面解析Linux 内核 3.10.x - start_kernel()
From: 全面解析Linux 内核 3.10.x - 本文章完全基于MIPS架构赶得早,不如赶得巧 - 古语start_kernel前几年穿越题材很火爆,如神话,宫,步步惊心等,可是这些剧都有一些共性,那就是总是穿越到了过去! 为什么穿越一定要到过去呢?在我看来无非就是觉得回到过去题材丰富,因为在中国科幻题材很难火爆,题材有限!换言之就是,中国人总是喜欢活在过去,我祖上怎样怎样..我去年买了个表原创 2015-11-30 21:09:00 · 2857 阅读 · 0 评论 -
全面解析Linux 内核 3.10.x - 启动1号进程
From: 全面解析Linux 内核 3.10.x - 本文章完全基于MIPS架构坚持也许就是胜利 - Keven当内核找到文件系统以后(这里已经挂载proc文件系统了),内核的主要启动使命就越来越少了。因为江山基本已经打下了,剩下的就是要坐江山了。来看下面的这段代码。static noinline void __init_refok rest_init(void){ int pid;原创 2016-01-14 21:09:11 · 1977 阅读 · 1 评论 -
全面解析Linux 内核 3.10.x - initramfs 启动流程
From: 全面解析Linux 内核 3.10.x - 本文章完全基于MIPS架构坚持也许就是胜利 - Keven早在之前,Linus提出要把cache当作文件系统装载。 这里有一份来自initramfs 合并的邮件请求,请点击。 我给大家翻译一些小片段(杜撰加翻译)。————————————–致亲爱的 Linus—————————— *亲爱的Linus:* 最近我苦思冥想原创 2016-01-14 21:06:08 · 4140 阅读 · 1 评论 -
GNU内联汇编之占位符的使用
From: 杂项用心感受,用心感受 - ..一、GNU内联汇编中常用修饰符一览 修饰符 输入输出 含义 = O 表示此Output操作表达式是只写的 + O 表示此Output操作表达式是可读可写的 & O 表示此Output操作表达式独占为其指定的寄存器 % I 表示此Input操作表达式中的C/C++表达式可以与下一个Input操作表原创 2015-12-18 23:03:59 · 2943 阅读 · 0 评论 -
全面解析Linux 内核 3.10.x - 板级初始化 - setup_arch
From: 全面解析Linux 内核 3.10.x - 本文章完全基于MIPS架构九层之台,起于垒土 千里之行,始于足下 - 老子从dmesg的第一条打印信息说起 - Linux banner且看我的ubuntu 12.04的第一条打印语句Linux version 3.11.0-15-generic (buildd@allspice) (gcc version 4.6.3 (Ubuntu/Li原创 2015-11-23 21:31:43 · 13028 阅读 · 0 评论 -
全面解析Linux 内核 3.10.x - Device Tree 详解
From: 全面解析Linux 内核 3.10.x - 本文章完全基于MIPS架构如果你觉得累,那么就继续吧 - 佚名一、Device Tree简介Device Tree是一种描述硬件的数据结构,它起源于 OpenFirmware (OF)。在PPC 平台,已使用很长时间!.使用一种特殊语言来书写,通过Device Tree Compiler编译为Device Tree Blob.在Linux 2原创 2015-11-25 16:13:58 · 11639 阅读 · 0 评论 -
全面解析Linux 内核 3.10.x - IPI核间中断的应用
From: 全面解析Linux 内核 3.10.x - 中断子系统前程往事,历历在目 - 佚名一、基本概念IPI 全称为Inter-Processor Interrupt,即处理中间的中断,需要可编程中断控制器PIC or APIC的支持! 操作流程大概如下: 需要向IPI 控制寄存器中写入需要recv interrupt vector,写入的IDB代表了类似IRT Entry的ID,最多原创 2015-12-11 22:49:30 · 5334 阅读 · 0 评论 -
全面解析Linux 内核 3.10.x - 内核入口函数__kernel_entry
From: 全面解析Linux 内核 3.10.x - 本文章完全基于MIPS架构找对了入口,才有可能找对出口 – 佚名在前面几节内容中我简单将Linux ,以及Linux Kernel的概念做了总结,然后又将编译以及内核镜像也做了也总结! 从本节内容开始,我将真正的进入到内核代码中去!加油吧,Keven! 从上一节中我已经知道了vmlinux.lds链接文件中指定了内核的入口函数kernel_原创 2015-11-22 14:19:27 · 10133 阅读 · 0 评论 -
全面解析Linux 内核 3.10.x - 编译前的准备
From: ongoingcre2015年的第一场雪,比以往时候来的更早一些 - 凛冬将至1、内核最终呈现给我们的形态什么?万事万物都有它最原始的形态,也有它千变万化的形态!但万变不离其宗,同根同源!原创 2015-11-09 21:04:08 · 3296 阅读 · 0 评论 -
全面解析Linux 内核 3.10.x - 开始编译<一>
From: ongoingcre一切手工技艺,皆由口传心授 - 夏奈尔首席鞋匠1、内核编译体系 - Kbuild貌似是从2.6开始,内核编译就开始采用Kbuild体系! Kbuild几点观念: 1.一个配置文件对应一个自动包含的子目录树! 2.目标配置文件模板是简化Makefile的主要机制! 3.工具和SDK使得模板具有灵活性! 4.子Makefiles来实现非递归Makefile方原创 2015-11-11 22:56:43 · 8047 阅读 · 0 评论 -
全面解析Linux 内核 3.10.x - 如何开始
From: ongoingcre我寻寻觅觅,寻寻觅觅,一个温暖的怀抱 - 我是一只小小鸟万事开头难 - 如何开始?人总是对未知的事物充满恐惧!就像航海一样,在面对危难的时候,船员和船长是一样心中充满恐惧的!只是船员始终充满恐惧,而船长却能压抑恐惧并从当前找出突破口! 我没有船长之能,但也算入行两年的老船员,我会追随船长一起寻找突破口!而内核如此庞然大物不知从何入手这真的很正常,那么应该的入口在原创 2015-11-06 22:52:34 · 13151 阅读 · 0 评论 -
全面解析Linux 内核 3.10.x - 开始编译<二>
From: ongoingcre#1、你不知道的vmlinux - 链接规则在上面的总结中,关于链接的部分我写的并不是很详细,就是打算在此处在做详细的总结,内核的链接可以说是理解编译最重要的部分,此处要没有问题,就表示你的基本语法没啥问题了,也就不会出现写驱动的时候出现一些连接错误等问题的时候茫然无措的感觉了!还是得从vmlinux.lds说起之前没有只是简单的说vmlinux.lds是由vmli原创 2015-11-17 22:00:08 · 19851 阅读 · 0 评论 -
Kexec 引导内核内幕
目录目录前言基本概念基本用法Kexec 如何引导内核加载到内存运行新内核的完成跳转Kexec 技术应用场景Kexec 技术展望前言Linux 的引导流程,基本可以概括为两个阶段:分别是启动引导程序阶段以及引导程序引导启动内核阶段。 在嵌入式Linux中,第一个阶段常见的引导程序分别有bootloader/xloder/pmon/类bios等,以bootloader为例子,光开源的原创 2017-07-19 10:13:19 · 2589 阅读 · 0 评论