|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
在学习初期,你一定会遇到很多困难,或者说各种困难,所以你最好先将你linux中的重要内容备份,因为,在你学习的过程中,很可能将系统搞废(eg:源混乱等);
你想成晓得怎样成为一个Linux内核开辟者么?大概你的老板告知你,“往为这个设备写一个Linux驱动。“这篇文档的目标,就是经由过程形貌你必要履历的历程和提醒你怎样和社区一同事情,来教给你为到达这些目标所必要晓得的一切常识。本文也实验注释社区为何如许事情的一些缘故原由。
内核几近满是用C写成的,有一些架构相干的部分是用汇编言语写成的。纯熟把握C言语是内核开辟的必备前提。汇编言语(任何架构)的懂得不是必需的,除非你筹办做某个架构的底层开辟。固然上面这些书不克不及完整取代踏实的C言语教授教养和/大概成年累月的履历,他们仍是不错的参考,假如用得着的话:-"TheCProgrammingLanguage"作者:KernighanandRitchie[PrenticeHall]-"PracticalCProgramming"作者:SteveOualline[OReilly]
内核是用GNUC和GNU工具链写成的。固然它切合ISOC89尺度,它仍是利用了一些尺度中没有的扩大。内核是自成系统的C情况,它其实不依附尺度C库,以是某些C言语尺度是不撑持的。恣意长度longlong范例除法和浮点数是不被同意的。偶然候会很难了解内查对于它所利用的工具链和扩大的假定,并且不幸的是也没有关于它们的相对的参考。请查阅gcc的info页(`infogcc`)以猎取有关信息。
请记着你是在实验进修怎样与已存在的开辟社区一同事情。这是一群成份庞大的人们,他们关于代码,作风和步骤有高的尺度。这些尺度是经由工夫查验的。
他们发明遵守这些尺度关于如许一个年夜范围的且地舆上分离的团队是最好的选择。实验提早进修尽量多的有关这些尺度的常识,由于它们都有很好的文档;不要希冀他人会依照你大概你公司的行事体例。
功令成绩
Linux内核源代码按照GPL公布。请参考源代码树下的COPYING文件,以猎取有关这个允许证的具体信息。假如你对这个允许证有疑问,请接洽你的状师,不要在Linux内核邮件列内外扣问。邮件列内外的人们不是状师,你不该该依附于他们关于功令成绩的注释。
文档
Linux内核源代码树有良多文档,它们关于进修怎样与内核社区交换来讲有不成估计的代价。当新的功效加进内核的时分,一般倡议作者把注释这个新功效的文档也加进内核。假如一个内核变化招致了内查对用户空间界面的改动,倡议你把这个信息大概一个注释了这个变化的manpage的补钉发送给手册页的保护者mtk-manpages@gmx.net。
这里有一个内核源代码树里必要浏览的文件列表:
README
这个文件复杂先容了Linux内核的背景,并形貌了设置和编译内核必要做哪些事变。内核老手应当从这里入手下手。
Do*****entation/Changes
这个文件先容了乐成编译和运转内核所必要各类分歧软件的列表。
Do*****entation/CodingStyle
这个文件形貌了Linux内核代码作风,另有面前的一些缘故原由。一切的新代码的要切合这个文档里的原则。年夜多半保护者只会承受切合这些划定规矩的补钉,良多人只看切合准确作风的代码。
Do*****entation/SubmittingPatches
Do*****entation/SubmittingDrivers
这些文件十分具体的先容了怎样乐成的创立和发送一个补钉,包含(但不限于):
-Email内容
-Email格局
-发送给谁
恪守一切这些划定规矩其实不能包管乐成(对一切的补钉都必要举行内容微风格的具体反省),可是不恪守这些划定规矩就必定不会乐成。
其他关于怎样创立补钉的很好的文章有:
“ThePerfectPatch"
linux/patches/stuff/tpp.txt">www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt
"Linuxkernlepatchsubmissionformat"
linux.yyz.us/patch-format.html
Do*****entation/stable_api_nonsense.txt
这个文件注释了无意识的决意-不在内核里利用不乱的API-的缘故原由,包含:
-子体系分开层(为了兼容?)
-操纵体系之间的驱动可移植性
-和缓(大概制止)内核源代码树的缓慢变化
这个文档关于懂得Linux的开辟哲学长短常关头的,关于由开辟其他操纵体系转而开辟Linux人也是很主要的。
Do*****entation/SecurityBugs
假如你感到到你发明了Linux内核里的一个平安成绩,请依照这个文档里所形貌的步骤来提示内核开辟者,并匡助办理成绩。
Do*****entation/ManagementStyle
12下一页
Linux的常用命令find,察看man文档,初学者一定会觉得太复杂而不原意用,但是你一旦学会就爱不释手。 |
|