
Linux Kernel
文章平均质量分 57
voice_shen
这个作者很懒,什么都没留下…
展开
-
Linux内核启动分析(1)
Linux内核启动分析(1) 主要实现代码为start_kernel。(/init/main.c)asmlinkage void __init start_kernel(void){ char * command_line; extern const struct kernel_param __start___param[], __stop___param[]; sm原创 2011-06-22 21:14:00 · 1645 阅读 · 0 评论 -
uImage生成过程
Build Linux kernel to generate uImage原创 2011-06-21 21:49:00 · 19847 阅读 · 0 评论 -
zImage的生成过程
Linux kernel zImage 生成过程原创 2013-12-31 14:24:05 · 4725 阅读 · 0 评论 -
Image的生成过程
Image的生成过程原创 2014-01-03 22:14:22 · 1734 阅读 · 0 评论 -
arch/arm/boot/compressed/vmlinux生成过程
arch/arm/boot/compressed/vmlinux的生成过程原创 2014-01-02 23:19:52 · 6997 阅读 · 0 评论 -
Makefile学习
Linux kernel Makefile中一些关键点学习。原创 2014-01-14 21:57:50 · 2017 阅读 · 0 评论 -
Linux驱动中delayed_workqueue使用
Linux delayed_workqueue原创 2011-08-26 18:14:53 · 7742 阅读 · 0 评论 -
debug_objects_early_init
[Author: Bo Shen ][Linux kernel: git: 0c0bd34]由于没有定义CONFIG_DEBUG_OBJECTS, 所以暂时不表。原创 2014-03-06 22:10:19 · 1928 阅读 · 0 评论 -
cgroup_init_early
[Author: Bo Shen ][Linux kernel: git: 0c0bd34]由于没有定义CONFIG_CGROUPS, 所以暂时不表。原创 2014-03-06 22:21:49 · 1156 阅读 · 0 评论 -
local_irq_disable
[Author: Bo Shen ][Linux kernel: git: 0c0bd34]local_irq_disable如果定义CONFIG_TRACE_IRQFLAGS_SUPPORT 91 #define local_irq_disable() \ 92 do { raw_local_irq_disable(); trace_hardirqs原创 2014-03-06 22:36:30 · 1533 阅读 · 0 评论 -
boot_init_stack_canary
[Author: Bo Shen ][Linux kernel: git: 0c0bd34] 1 /* 2 * GCC stack protector support. 3 *原创 2014-03-06 22:15:46 · 2818 阅读 · 2 评论 -
smp_setup_processor_id
[Author: Bo Shen ][Linux kernel: git: 0c0bd34] 470 void __init smp_setup_processor_id(void) 471 { 472 int i; 473 u32 mpidr = is_smp() ? read_cpuid_mpidr() & MPIDR_HWID_BIT原创 2014-03-06 22:07:13 · 2697 阅读 · 0 评论 -
Linux各个部份初始化过程--待续
[内核版本:Linux-2.6.30]众所周知,Linux C代码初始化入口是start_kernel() [init/main.c]函数。以下进行单核CPU进行分析。先列出start_kernel内执行的调用:start_kernel [init/main.c]原创 2011-08-15 23:32:21 · 1467 阅读 · 0 评论 -
Linux kernel Low Level debug
------以下内容转自:http://blog.youkuaiyun.com/cpuwolf/article/details/4492822------ 如果你运气不太好,那么第一次启动kernel,最多看见 uncompressing linux...ok, booting the kernel 从串口ttyS0出来,然后你什么都没了。这总情况遇转载 2011-11-08 13:34:10 · 5477 阅读 · 1 评论 -
Linux Debug Filesystem的使用
Enable Linux kernel Debug File system原创 2011-12-19 17:13:11 · 8984 阅读 · 0 评论 -
Linux启动中setup_arch分析
[ 注:内核版本Linux-2.6.30 ]setup_arch执行是由start_kernel来调用的:start_kernel [ init/main.c ] --> setup_arch(&command_line) [arch/arm/kernel/setup.c原创 2011-09-02 15:46:05 · 8155 阅读 · 0 评论 -
Linux中的parse_cmdline详解
[ 注:内核版本Linux-2.6.30 ]parse_cmdline的主要作用是用来解析命令行参数。 其实现原理:一个无穷循环,首先来查找第一个空格,如果找到,来空格之前的字符串是否与early_param相匹配,如果是,则通过实现的功能函数来找出其体参数。如原创 2011-09-02 18:07:00 · 8519 阅读 · 0 评论 -
编译linux内核生成的system.map文件详解
[注:此文转载于http://forum.eepw.com.cn/thread/128712/1][作者: 永远在路上]有时system.map文件可以帮助我们理解内核编译,它记录了所有代码的运行地址。下面一起看看如何读懂它system.map内容格式为:转载 2011-08-17 11:26:29 · 2478 阅读 · 0 评论 -
linux内核中的linux_banner信息
[ Linux 内核版本:linux-2.6.30 ]Linux内核启动后在start_kernel [ init/main.c ] 首先会调用printk(KERN_NOTICE "%s", linux_banner)来打印linux_banner的信息。linux_b原创 2011-08-18 22:21:34 · 6949 阅读 · 0 评论 -
Recovering reserved space from ext4
具体请查看: http://blog.flexion.org/2010/01/07/recovering-reserved-space-ext4/ 以下是原文,来自上面的链接地址。Recovering reserved space from ext4The E转载 2011-08-28 08:59:28 · 1871 阅读 · 0 评论 -
在Linux内核启动时打印时间
具体实现方法:make menuconfig ---> Kernel hacking --> show timing information on printks 当选中这个选项后,启动内核,会在log信息前面加上时间信息。 如下:--------------------------------------------------------------------------原创 2011-11-14 15:14:51 · 6031 阅读 · 1 评论 -
BITS_TO_LONGS宏的作用
[linux-3.0]BITS_TO_LONGS定义在:include/linux/bitops.h#define BITS_PER_BYTE 8#define BITS_TO_LONGS(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(long))DIV_ROUND_UP定义在:include/linux/ker原创 2011-11-23 20:51:51 · 7638 阅读 · 0 评论 -
vmap allocation for size 8192 failed ---- 原因及解决方法(求解)
在boot ARM Linux kernel时,解压完kernel后,就不能继续运行。log信息如下:-------------------------------------------------------------------------------------------------------------------------------------------------原创 2012-06-06 23:16:15 · 7556 阅读 · 3 评论 -
编译Linux kernel遇到:WARNING: modpost: Found 1 section mismatch(es)
如题:WARNING: modpost: Found 1 section mismatch(es).To see full details build your kernel with:'make CONFIG_DEBUG_SECTION_MISMATCH=y'解决文法:使用make CONFIG_DEBUG_SECTION_MISMATCH=y,最后得到如下输出:原创 2012-12-04 16:50:39 · 8332 阅读 · 2 评论 -
Oops on Linux-3.18-rc4
Oops on Linux-3.18-rc4原创 2014-11-12 15:08:29 · 1556 阅读 · 0 评论