版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
最新的Linux内核版本可以从官方站点获取。 因为嵌入式Linux系统在开发过程中需要对Linux内核进行重新定制,所以熟悉内核配置、编译和移植是非常重要的。1.Linux内核的版本Linux内核的版本号分为主版本号、次版本号和扩展版本号等。根据稳定版本、测试版本和开发版本定义不同版本序列。9.1嵌入式Linux基本概念2.Linux系统的分类(1)以功能差异和发行组织分类标准linux。μClinux。无MMU支持的linux系统,运行在无MMU的CPU上。Linux-RT。是最早在linux上实现硬实时支持的linux发行版本。Linux/RTAI。Embedix。由Lineo公司开发,基于PowerPC和x86平台开发的。RedHatLinux。红旗Linux等。(2)以应用的嵌入式平台分类在嵌入式Linux系统开发过程中,内核移植是将系统适合于自己特定的硬件平台系统的重要步骤,只有引导内核完毕,才能运行用户应用程序。
9.1嵌入式Linux基本概念3.Linux内核组成:内存管理、进程调度、虚拟文件系统、网络接口、进程间通信.
Linux内核由进程管理、内存管理、虚拟文件系统、网络接口和进程间通信五大子系统组成,各个子系统之间的依赖关系如下图所示。9.1嵌入式Linux基本概念内存管理虚拟文件系统进程调度网络接口进程间通信9.1嵌入式Linux基本概念Linux系统结构层次可以发现Linux内核中各个系统之间有如下关系:(1)进程调度处于中间。(2)进程调度与内存管理的依赖关系(3)进程间通信依赖于内存管理。(4)虚拟文件系统与网络接口之间的关系。(5)内存管理与虚拟文件系统之间的关系。
9.1嵌入式Linux基本概念Linux内核源码非常庞大,采用C语言和少量汇编实现,并且随着版本的发展不断增加。源码的工程管理采用目录树结构,并使用Makefile组织配置编译。获得新的Linux2.6内核源码之后,一般首先仔细阅读顶层目录的README文件,了解对内核的概述和编译命令说明。顶层目录中另一个比较重要的文件是Makefile,它是整个内核配置编译的核心文件,负责组织目录树中的子目录的配置编译管理,还决定了体系结构和内核版本号等。9.2Linux内核源码结构Linux内核源码非常庞大,采用C语言和少量汇编实现,并且随着版本的发展不断增加。源码的工程管理采用目录树结构,并使用Makefile组织配置编译。获得新的Linux2.6内核源码之后,一般首先仔细阅读顶层目录的README文件,了解对内核的概述和编译命令说明。顶层目录中另一个比较重要的文件是Makefile,它是整个内核配置编译的核心文件,负责组织目录树中的子目录的配置编译管理,还决定了体系结构和内核版本号等。9.2Linux内核源码结构9.2Linux内核源码结构1
Linux内核源代码目录结构●arch包含和硬件体系结构相关的代码,每种平台占一个相应的目录。如arm、avr32、blackfin、mips等。●block块设备驱动程序的IO调度。●crypto常用的加密和离散算法,还有一些压缩和CRC校验算法9.2Linux内核源码结构●Documentation内核的说明文档。●drivers设备驱动程序,其下细分为不同种类的设备。如block、char、mtd、net、usb、video等等。●fs内核支持的文件系统的实现,如ext2、ext3、cramfs、jffs2、nfs等。Linux内核源代码目录结构9.2Linux内核源码结构Linux内核源代码目录结构●include头文件。与系统相关的头文件放在include/linux下,与ARM体系结构相关的头文件放在include/asm-arm下。●init内核初始化代码。●ipc进程间通信代码。9.2Linux内核源码结构Linux内核源代码目录结构●kernel内核的核心代码,包括进程调度、定时器等。和arm平台相关的核心代码在arch/arm/kernel目录下。●lib库文件代码●mm内存管理代码,和arm平台相关的内核管理代码在arch/arm/mm目录下。9.2Linux内核源码结构Linux内核源代码目录结构●net网络相关的代码,实现了各种常见的网络协议。●scripts包含用于配置内核的各种脚本文件。只在配置时是有意义的。●sound音频设备驱动的通用代码和硬件驱动代码都在这个文件件下面。Linux内核有两种映像: 非压缩内核Image 压缩内核zImage 嵌入式系统存储容量有限,因此通常选择压缩内核zImage.要使用压缩内核zImage,需要在映像开头加入解压缩代码,将zImage解压后,才可以执行。9.2Linux内核源码结构2
Linux内核启动方案内核编译完成后,会在arch/arm/boot目录下生成zImage文件。zImage文件的组成:pggy.o :压缩后的内核文件head.o :系统初级初始化代码文件misc.o :解压缩代码文件9.2Linux内核源码结构3
zImage的构成对于ARM处理器来讲,Linux内核zImage第一段代码入口位于arch/arm/boot/compressed/head.S文件中。它依次完成如下功能:初始化Cache、Mmu等设置跳转到C语言内核解压函数中 bldecompress_kernel跳转到非压缩内核启动汇编段 bcall_kernel9.2Linux内核源码结构汇编部分9.羽3.辩1内核胞修改1.解压亲内核鱼源码使用苗如下剑命令担进行栗加压径:ta牺rjx勾vfli读nu台x-艺2.们6.胆32黎.4古.t寸ar咐.b该z22.修改Ma漠ke腥fi钻le整个Li金nu赌x内核复工程侦是以Ma简ke阻fi虽le为核狡心完恢成编坐译和楚连接设的。进入逐内核出源码楼目录碗,使茂用编游辑工竿具打偿开一呈级目面录下用的Ma废ke赶fi耍le文件旗,找不到相桶关变昨量进搏行修伸改:AR园CH因?外=岁ar欺mCR元OS堡S_邮CO括MP幸IL奔E拥?=众a桐rm愈-li竿nu川x-9.依3内核府移植最的一乖般步蓬骤3.修改蛮目标疤板输躬入时妥钟使用天编辑吸工具没打开吸内核慢源码尝目录辫中ar还ch始/a准rm巷/m邮ac阔h-影s3能c2成44贺0/孔ma送ch夸-s事md挪k2他44庭0.油c文件掌,找魂到函材数mi迅ni叮24践40唤_m播ap铃_i疮o(明vo榴id絮)的实听现代女码,遥如下茧:……s3缓c2封4x美x_个in贱it交_c语lo惩ck爽s(夏12颂00谨00咱00以);……4.修克改MT抬D分区Li脖nu北x下的MT凤D驱动矿程序寺接口酷被划傅分为懒两类待模块嘴:用霉户模组块和捷硬件至模块装。内核MT让D分区行必须我与Bo裳ot悦lo碑ad收er分区难相一锅致。最后对去掉EC抄C校验砖:将dr挨iv距er字/m礼td脱/n杜an动d/装s3腐c2萍41滥0.专c文件秤中的照“NA胜ND叹_E倦CC胀_S治OF瓦T,宇”语句鲁将其澡改为凭“NA稻ND突_E款CC停_N键ON仅E;腥”。9.致3内核中移植粗的一袍般步筛骤9.咏3内核悼移植覆的一舒般步抓骤5.配置ya方ff搅s2文件甘系统养的补追丁YA崖FF掉S意义伸为'y抬et君a术no成th离er查f郑la爽sh膛f扮il既e煤sy榆st巷em灵',也凝是一冠个开啦源的扔文件我系统闲。YA年FF投S文件歌系统施则是互专门逐针对NA旷ND太f医la剑sh的,部源代索码可灰以到ht肉tp站:/佩/w炉ww究.a窑le蹄ph辛1.窝co笑.u段k/勾ya使ff急s/郊in秘de盒x.仔ht蹄ml上下县载。使用诸如下匀命令充解压搏补丁鬼包:ta飞r鸽-z卡xv锄f均ro站ot逢.t末ar鞠.g境z进入耗补丁带所在艺目录帮,使讨用如垦下命身令打配补丁县:./则pa添tc汁h-血ke扬r.厘sh优c隶<砍li色nu络x2析.6马p袭at拉h>其中<l巨in泽ux握2.玻6娇pa昨th号>为li逗nu思x内核瞒源码兄所在韵目录撞。上面衡命令冰执行足过程愁中相凶当于哪完成糖以下孟三项隔操作占:(1求)修改羞内核fs店/K蠢co泊nf考ig:增加歼了一吸行:s凶ou管rc由e谷"f肥s/睬ya寇ff订s2推/K编co镇nf京ig词"(2驱)修改落内核fs秩/K师co我nf汉ig增加宋一行:o药jb拔-$迷(C谅ON斤FI骂G_系YA储FF亚S_渣FS灰)析+=发ya置ff亭s2旨/(3销)在内搂核fs枪/目录更下创厉建ya学ff拒s2目录9.纽奉3.零2内核汉配置Li府nu液x内核袭版本歌不断迫更新狭,新校的内韵核修霞订了皮旧内鸦核的bu符g,并宵增加盲了许永多新睡的特段性。为了饿正确掉、合绪理、反有选蔑择地饥使用流内核纺提供悦的模爬块,年设置拨内核宪编译碍配置欲选项姻,一混般主圈要有幼下面裁几个插考虑吉。1.节省横存储笨空间扬。2.节省拒运行务空间葛。3.减少尿漏洞娃。针对偏于一粒个新泄的目袖标系梳统按付照上周一节戒进行料了内堡核的纯修改冷之后滤,就捐可以屑对内暑核进秧行进值一步址的配恢置工盈作。9.揭3内核场移植龟的一订般步误骤1.内核环配置市工具配置爱工具剪主要妖包含Ma茅ke猛fi凤le、Kc搞on饭fi匪g和配脾置界遭面生尘成工吹具,田这些础项目渗可以竹由Kb落ui灾ld系统嘱调用缘瑞,生间成配叔置界短面。写配置唤界面葱是通盟过工岭具来他生成看的,异工具拼通过Ma崇ke愚fi跪le编译侄执行制,选校项则屡是通揭过各踪蝶级目狼录的Kc相on浮fi市g文件悄定义法。Li怜nu央x枪2.墙6内核心中Ma辽ke议fi声le分类谊:Ke削rn析el沟M黄ak删ef则il明e—食—顶层迟目录著下的Ma逃ke肯fi雅le文件.c膏on不fi柴g—坚—内核煮配置矩文件ar贩ch妖/$魔(A凡RC卷H)捎/M伙ak苍ef邮il虽e—寄—对应捞不同及平台矿体系采结构壮的Ma迷ke凡fi数lesc磨ri喝pt城s/烟Ma轿ke折fi慎le外.*耻——所有kb袖ui并ld暗M百ak唉ef膜il资es的通泊用规筑则等小定义kb驶ui夜ld堪M雪ak引ef薪il混es握——内核宽编译她各级益目录槐下的Ma响ke蜡fi块le文件9.华3内核塔移植奏的一习般步看骤Kb减ui造ld大体汉上按好照下耐列步怀骤执虚行编饶译过愚程。内核炸配置偶,生苍成.c作on话fi束g文件棋。保存视内核辣版本振信息昨到in忠cl筝ud脱e/紧li释nu昨x/倾ve马rs立io盐n.精h。创建布链接那符号in锋cl叉ud睁e/谎as缺m,链搁接in作cl汉ud乌e/促as秩m-智$(纪AR植CH浪)源目睁录。升级隐所有晃依赖睁的前出提文味件,荡在ar伸ch积/$默(A草RC千H)低/M妻ak勤ef月il父e中指慨定附兆加依老赖条雾件。递归劲地遍泊历各慈级子吓目录倍并且奴编译火所有君的目螺标。in线it判-*、co荒re投*、dr桃iv邮er匠s-近*、ne克t-紧*、li往bs雹-*的目础录变熟量值瓶在ar谣ch冷/$蹄(A准RC扶H)衡/M隙ak疯ef宋il休e文件备中有炒些扩筹展。链接胜所有育的目判标文孕件,赚生成杆顶层惧目录穴的vm箭li勾nu剖x。链摧接的颤第一丘个目史标文供件在he纹ad艰-y列表斩中,凉是在ar尘ch乖/$烤(A抢RC抗H)集/M着ak言ef滨il庆e中定廊义的猪。最后扶,体稍系结泪构相柏关的大部分钱作必鸡须的晕后期住处理委,编左译生尖成最忌终的塌引导东映像键。这泛可以截包括步编译还引导陷记录贱;准付备in拢it脂rd映像哈等类六似工佩作。9.凑3内核忍移植饲的一复般步鸽骤(1)配探置入崇口在顶证层的Ma央ke舟fi迁le中,犯可以翻查找幅到如钱下几付行定谈义的洲规则聚。co怠nf尿ig酬%摸co烟nf俭ig辅:眉sc饮ri逃pt症s_饲ba接si赵c虎ou猜tp孝ut冠ma那ke葛fi恶le衬F希OR眯CE$(份Q)泳mk熔di葱r煎-p答i缩慧nc尊lu蜂de呈/l蚊in璃ux$(述Q)勉$(酒MA灭KE级)眼$(抢bu度il斥d)澡=s美cr伞ip霞ts缝/k辟co光nf轰ig道$桶@(2)Kc哭on心fi傍g下面枯解释热一下Kc金on眯fi规g的特迅点和仅语法原。①菜态单项②菜角单属霸性③菜歼单依排赖关散系④菜何单组盘织结皇构⑤Kc改on践fi拼g语法9.插3内核拣移植循的一诊般步跪骤(3)内盗核编扫译方走式Kb阵ui园ld系统痰使用Kb仪ui怀ld垮M弹ak寇ef吨il幅e来编奸译内验核或览模块俊。Kb第ui劫ld甩M蔬ak政ef海il扔e的文倦件名棚不一贡定是Ma屯ke屡fi荷le,尽猪管推载荐使盼用Ma镰ke杠fi风le这个园名字拴。Kb瓶ui事ld笔M开ak样ef树il另e的一林个最胳主要幸功能友就是塞指定元编译筐什么徒,这斑个功督能是喝通过掩两个稀对象及指定警的ob限j-拖?和xx直x-常ob摔js。ob捞j-浓?语法羡:ob问j-射?潜=雪$(洋ta粱rg胶et跑).奴oxx鹊x-步ob茄js指定配了编朗译对群象需稿要的镜文件想,一毕般只有有在章源文效件是摊多个童时才龄需要诊它。9.辩3内核士移植沸的一歪般步制骤(4)配液置选叙项在进巡寿行配弯置之亭前,萄在内药核目矮录下扁执行窑下列恭操作海,生乎成平考台默鼓认配定置文勺件.c使on恭fi类g:ma题ke棒s括3c揪24暑10斤_d袋ef兔co抬nf揉ig执行良完后监会出喉现:#石co扰nf愉ig占ur愈at沫io鞠n府wr番it恢te穷n找to尽.孝co欺nf睡ig。①常铅规设尖置选晴项Ge黑ne煤ra剑l宏se幻玉tu域p②引日导模雅块支期持Lo库ad虽ab封le殿m晓od到ul在e辛su越pp秩or倍t③块竿设备En粒ab率le牢t挺he斤B责lo怖ck得l奸ay丹er④处浙理器凝类型拘及特验性Pr洪oc肚es航so场r浙ty检pe说a斯nd优f捉ea泥tu送re周s⑤电婶源管捎理选掘项Po也we章r拜ma情na近ge多me剃nt布o惊pt避io如ns效(咸AC灾PI年,跑AP定M)⑥总明线选给项Bu画s狱op竭ti斤on弄s⑦用赔户可屑执行商文件蜻格式Ex详ec裙ut垃ab骆le逝f层il晕e偿fo肺rm沟at吃s⑧驱晃动程怎序配挂置选门项Dr础iv顺er召D电ri淡ve凯rs9.神3内核塞移植铺的一童般步房诚骤9.控3.散3内核跃编译编译锯的步辜骤就慕是执汪行一葱些相奔对固俗定的可命令经目标教序列烂。Kb内ui臭ld还提扶供了器许多朽可选爆的配柜置编惰译目芬标和浓规则依。可监以使很用ma神ke关h问el险p命令及把所下有的卵配置绑编译慌目标凯和说胁明信墙息打巨印到辈屏幕非。其中柳常用预的配帜置编浊译目跌标有壶(其国执行财格式隔为:ma同ke茂<下列删目标愉名之腥一>):(1)清孩理目慢标(Cl拴ea跨n闲ta后rg职et袋s):(2)内瘦核配牛置的要目标葡(Co我nf向ig鹊ur程at固io蔬n泽ta馋rg已et呆s)(3)其充他通骂用目住标(Ot判he与r淋ge纯ne味ri善c大ta摄rg饶et巩s)(4)静门态解映析器设目标碍(St智at弟ic租a歇na步ly停se拼rs)(5)内辩核打厨包目墨标(Ke掩rn嗓el作p骑ac核ka凳gi躲ng)(6)文谱档目说标(Do送cu子me段nt沾at担io赖n走ta废rg肚et秃s)(7)AR物M体系药结构岔相关箩的目吼标(Ar锯ch宿it州ec格tu所re阿s达pe吧ci骨fi凉c堤ta专rg只et晨s询(a府rm剃))(8)缺京省目绑标9.恶3内核则移植僵的一崭般步绣骤内核绵编译桶产生垂了哪台些目自标,利连接吉形成抢了哪肥些映煎像,申这些蔑映像委是如飞何组涂成的揪,又织处于Li略nu破x内核稻启动阶运行炎的哪丸个阶耳段1.碍vm朋li首nu蚕x映像秃:了甜解这学个映花像(vm绿li厦nu强x袍im银ag幸e)的叫构成车。2.称zI娘ma非ge映像晌:嵌封入式Li帖nu探x系统蒸的引狭导方歉式有诞两种凳,一倡种是随上文忘所说抗的非局压缩尝方式想;另居外一五种是尼压缩罢方式铺。zI要ma犬ge产生携的过全程。Li扣nu劈燕x内核芝是一悦个很妻复杂毙的代爹码块尽,有盐许许佛多多贞的全元局符创号。墙它不竿使用彩符号霜名,脾而是影通过锻变量衔或函办数的会地址拣来识蔽别变犯量或枪函数辟名。内核殖主要排是用C写的扬,编忘译成屋目标努代码港或者肚映像壤就可蚂以直吼接使完用地杠址了得。9.浆3内核相移植晶的一马般步俗骤9.喷3.见4建立Li揉nu处x根文胜件系苍统1.文件苦系统夹介绍2.蜡Li护nu乒x文件象系统暮:包司括以牙下几角项内音容:①基呆本的怪文件奶系统称结构届,包曾含一微些必套需的劈燕目录蒜比如帖:/de杆v,/pr念oc,/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年第二季度静脉血栓栓塞症的预防护理试题附答案
- 木质家具生产线项目风险评估报告
- 工程项目数字化验收与回访管理方案
- 华为的java面试题及答案
- 动物育种学的试题及答案
- 医院消防安全知识考核50题及答案
- 妇产科试题含答案
- 医疗器械经营管理办法考试题及参考答案
- 卫生用品生产线项目社会稳定风险评估报告
- 宝鸡护士笔试题目及答案
- DBJ51T 140-2020 四川省不透水土层地下室排水卸压抗浮技术标准
- 《陆地水体及其相互关系》教学设计【高中地理(新课标)选必修1】
- 交通事故责任认定书复议申请书
- 鲁迅-资料完整版本
- 上海市二级甲等综合医院评审标准(2024版)
- 国际经济与贸易专业生涯发展展示
- 2024年天津市部分区高二年级上期中--历史(含答案)
- 浙江省稽阳联谊学校2024~2025学年高三上学期11月联考历史试题
- 脑健康中心建设指南(2024年版)
- 反诈宣讲培训课件
- 安全保卫工作方案及突发事件应急预案安全保卫应急预案
评论
0/150
提交评论