linux 移植
文章平均质量分 63
aquolee
希望能做自己想做的事情
而且做好
展开
-
Linux i386+源码中常见宏标识tag的定义
linux i386 kernel中: #define fastcall __attribute__((regparm(3))) #define asmlinkage __attribute__((regparm(0))) 函数定义前加宏asmlinkage ,表示这些函数通过堆栈而不是通过寄存器传递参数。 宏asmlinkage定义如下:#define asmlin转载 2009-06-15 10:55:00 · 551 阅读 · 0 评论 -
Linux内核启动-开启页面映射
在setup的帮助下,我们顺利地从16位实地址模式过渡到32位段式寻址的保护模式。又在arch/i386/boot/compressed/head.S的帮助下实现了内核的自解压,并且从arch/i386/kernel/head.S中的startup_32开始。现在在线性地址0x100000(1M)处开始就是我们的解压后的内核了。而startup_32()的地址恰好是0x100000。由于还没有开转载 2009-06-15 11:46:00 · 476 阅读 · 0 评论 -
宏定义
在将一个C源程序转换为可执行程序的过程中, 编译预处理是最初的步骤. 这一步骤是由预处理器(preprocessor)来完成的. 在源流程序被编译器处理之前, 预处理器首先对源程序中的"宏(macro)"进行处理. C初学者可能对预处理器没什么概念, 这是情有可原的: 一般的C编译器都将预处理, 汇编, 编译, 连接过程集成到一起了. 编译预处理往往在后台运行. 在有的C编译器中, 这些过程统统转载 2009-06-18 11:43:00 · 2246 阅读 · 2 评论 -
setup_arch()-->setup_processor()函数分析
setup_arch()-->setup_processor()函数分析static void __init setup_processor(void){ struct proc_info_list *list; *** include/asm/procinfo.h: /* * Note! struct processor is always defined转载 2009-06-18 11:14:00 · 1925 阅读 · 0 评论 -
2440从NANDFlash启动之bootloader运行以前
一直对2440上电以后怎么从nandflash中启动不是很清楚,闲来无事看了下s3c2440的用户手册,看到下面这样一段话: S3C2440A boot code can be executed on an external NAND flash memory. In order to support NAND flash bootloader, the S3C2440A is equipped转载 2010-02-24 22:29:00 · 438 阅读 · 0 评论