一,系统初启 首先很惭愧的坦白大部分是抄袭他人(XIAOMAN)的因为系统的初起一直是一个麻烦而头疼的问题,不同的体系结构会有较大的不同。X86从硬件启动,读入引导扇区,执行引导程序从实模式开始再转换到保护模式这个复杂的过程其实与操作系统本身的运行机制关系并不大,但忽略过去又无法给linux内核一个完整的 过程,所以我大动剪刀浆糊,但会把精力主要集中在linux内核本身,希望得到大家的谅解。 (以核心2.0.36为主)...
我最近想写linux下的驱动,在网上找了一个想关的例子看了看,之后我就有个问题: 那里面的代码很的函数都是内核里面的,对于我一个刚开始写代码的新手来说感觉很陌生. 我主要想问问:linux内核怎么学才能在自己写代码的时候知道要用到内核里面的api和一些宏? 我在看代码的时候:我始终不知道那些api和宏是从哪里来的? 为什么要用那些东东? 如果我自己写代码,我从什么地方才能找到那些宏? 希望高手能够给我指点一下!!! 谢...
通过printk打你希望追踪的消息。从它的名字可以看出,这个东西有点类似与gnu c中的printf。不过用于内核的东西总该有些特色,printk添加了一些日志级别(loglevel),具体日志级别定义的宏在。 (printk的格式:printk(KERN_ALERT"The process is \"%s\"(pid %i)\n",current->comm,current->pid)) 。 这些宏定义的注释已经很详细了。 #define KERN_EMERG "" /* system is unusable */ #define KERN_ALERT "" /* action must...