
Linux内核
新哥
专注嵌入式开发
展开
-
LINUX/MIPS内核移植
<br /> Linux MIPS Porting GuideI want your feedback: info, errors, spelling, dead links, comments, or even compliments :-)<br />Prefix<br />转载 2011-04-19 11:59:00 · 5074 阅读 · 0 评论 -
移植linux到龙芯3210笔记1
<br /> 移植的基本思路是:先编译后调试<br />首先修改配置文件,如:Makefile 、 Kconfig等。这样就可以进行内核的配置,然后可以编译。<br />编译完之后,开始从代码上一步步的进行调试。<br /> <br /> <br />修改配置文件:<原创 2011-04-19 15:13:00 · 2284 阅读 · 0 评论 -
移植linux到龙芯3210笔记3
根据笔记2对Makefile的配置,接下来就应该加入这些平台相关的代码到相应的目录下。所以这次的主要任务是:增加代碼或修改代碼把平台相关的代碼,加入内核工程中:(1)将soc3210-board目录拷贝到arch/mips目录下,这里拷贝到arch/mips/mips-board原创 2011-04-19 23:44:00 · 2323 阅读 · 0 评论 -
移植linux到龙芯3210笔记2
有了笔记1的配置,也就是说,得到了三个宏:CONFIG_SOC32101_BOARDS、CONFIG_SOC_SOC、CONFIG_CPU_SOC32101那么:修改或者增加一些与CPU相关的代码就可以用CONFIG_CPU_SOC32101来判断,例如cache、tlb等。修改原创 2011-04-19 15:57:00 · 1975 阅读 · 0 评论 -
移植linux内核平台相关之 中断
<br />前言:<br /> 在移植linux的时候,需要加入一段平台相关的代码。而在这部分代码中,中断是一个重要的环节。所以我们需要去了解linux内核的中断处理结构是怎样的,然后才能在适当的地方加上平台相关的代码。在不同的linux内核版本中,可能中断处理的结构不原创 2011-04-29 23:13:00 · 1887 阅读 · 0 评论 -
linux io调度
转自:http://home.lupaworld.com/home.php?mod=space&uid=56821&do=blog&id=139949 一)I/O调度程序的总结: 1)当向设备写入数据块或是从设备读出数据块时,请求都被安置在一个队列中等待完成. 2)每个块设转载 2011-08-12 14:45:46 · 2148 阅读 · 0 评论 -
linux内核宏定义
<br />linux内核宏定义<br />1. gcc的__attribute__编绎属性<br />要了解Linux Kernel代码的分段信息,需要了解一下gcc的__attribute__的编绎属性,__attribute__主要用于改变所声明或定义的函数或数据的特性,它转载 2011-04-21 15:06:00 · 1470 阅读 · 0 评论 -
看linux启动代码中的Cache与TLB
<br />在移植linux2.6.18.1到龙芯3210的时候,也就是在移植笔记3里,对Cache和TLB进行了一段修改,移植的时候以对照的方式进行修改,现在来看看,为什么代码这样写。<br /> <br />在移植笔记3里面已经知道,对Cache和TLB的操作是在trap_i原创 2011-04-29 14:25:00 · 2757 阅读 · 1 评论 -
linux内核中的一个宏函数例子
<br /> 在移植linux到龙芯3210的过程中,调试串口的时候,遇到了一个outb函数,却找不到这个函数的原型。当时是用VIM的跳转功能来看的代码。直接用grep工具也找不到这个函数。后问人才发现其实outb实则上是一个宏函数,而这宏函数的写法还真是少见,可能原创 2011-04-21 16:04:00 · 1352 阅读 · 0 评论 -
移植linux到龙芯3210笔记4
跑过trap_init之后,跑进console_init就停止了。问题出在console_init里面。从字面上看是控制台初始化。而我们现在的控制是串口0。所以这部分的问题应该出在串口上。之前可以打印信息是因为用了prom_printf,这个函数定义在./arch/mips/ar原创 2011-04-20 21:30:00 · 2237 阅读 · 0 评论