已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第8章构建嵌入式Linux系统,第8章构建嵌入式Linux系统,8.1嵌入式Linux系统的构建流程8.2Bootloader8.3Linux内核8.4根文件系统,8.1嵌入式Linux系统的构建流程,嵌入式Linux的组成嵌入式Linux的构建,嵌入式Linux的组成,嵌入式Linux由以下三个部分组成为:Bootloader(引导加载器)内核根文件系统,嵌入式Linux的构建,在嵌入式Linux的构建中,Bootloader和Linux内核一般都有相对成熟的代码。主要的工作有两步:第一步是根据本系统硬件平台的状况进行移植;第二步是采取交叉编译对源代码进行编译,形成运行时需要的映象(Image)文件。,嵌入式Linux的构建,Bootloader的移植,嵌入式Linux的构建,Linux内核的移植,嵌入式Linux的构建,Linux内核的启动并不依赖于根文件系统(rootfs),但是要保证Linux内核的正常运作,还是需要根文件系统的支持。在构建系统的过程中需要为系统生成根文件系统的映像文件,让Linux内核在启动的时候挂接(mount)根文件系统。,8.2Bootloader,嵌入式linux的引导方式Bootloader的作用,嵌入式linux的引导方式,启动加载(BootLoader)模式:启动加载模式也称为“自主”(Autonomous)模式。在这种情况下,BootLoader从目标机上的某个固态存储设备上将操作系统加载到RAM中运行,整个过程并没有用户的介入。下载(Downloading)模式:在下载模式中,目标机上的BootLoader将通过串口连接或网络连接等通信手段从主机(Host)下载文件。工作于这种模式下的BootLoader通常都会向它的终端用户提供一个简单的命令行接口。,嵌入式linux的引导方式,根据所使用的存储介质和开发阶段的不同,可以采用不同的系统引导方式:使用可固化存储设备(如FLASH)使用磁盘设备通过网络引导,Bootloader的作用,Bootloader是系统启动后首先运行的程序,对于嵌入式linux操作系统的Bootloader,其最基本的功能是加载linux的内核并运行。Bootloader一般还具有以下的功能:通讯功能FLASH相关功能用户接口功能,8.3Linux内核,Linux内核配置和编译的流程Linux内核配置Linux内核的编译,Linux内核配置和编译的流程,Linux内核从配置到安装大致有如下步骤:配置内核:最常见的命令为makemenuconfig建立依赖关系:最常见的命令为makedep编译内核:最常见的命令为make或makezImage编译内核模块:最常见的命令为makemodules安装内核模块:最常见的命令为makemodules_install安装内核:最常见的命令为makeinstall,Linux内核配置和编译的流程,在内核源代码目录下输入“makeXXXconfig”等命令之一就可以对内核进行配置:makeconfig提供了一个命令行界面,然后对每一个内核选项依次询问用户的选择。makemenuconfig提供了一个基于终端curses的图形界面配置菜单。makexconfig提供了一个基于GTK的XWindow图形界面配置菜单。makeoldconfig和makeconfig类似,不过它只提示用户设置之前没有配置过的选项。,Linux内核配置和编译的流程,在内核源代码目录下输入“makeXXXconfig”等命令之一就可以对内核进行配置:makeconfig提供了一个命令行界面,然后对每一个内核选项依次询问用户的选择。makemenuconfig提供了一个基于终端curses的图形界面配置菜单。makexconfig提供了一个基于GTK的XWindow图形界面配置菜单。makeoldconfig和makeconfig类似,不过它只提示用户设置之前没有配置过的选项。,#makeARCH=armCROSS_COMPILE=arm-linux-menuconfig,Linux内核配置,内核都会在配置完后生成一个.config文件,还会产生大量的符号连接和头文件,这些在其余的创建过程中会用到。.config文件中保存了根据在menuconfig中的选择定义的相应变量,在Linux内核目录下的Makefile文件中将会包含这个文件。,重要的内核选项包括:Codematurityleveloptions(内核成熟级别选项)Loadablemodulesupport(可加载模块支持)Generalsetup(通用设置)Memorytechnologydevices(内存技术设备)Blockdevices(块设备)Networkdevicesupport(网络设备支持)Characterdevices(字符设备)Filesystems(文件系统)Consoledrivers(控制台驱动),Linux内核的编译,建立内核依赖关系(linux-2.6.x不再需要这个步骤):#makedep编译内核:#makezImage或者#make单独地编译内核模块:#makemodules如果编译成功,所生成的内核映像文件将放置在arch/$ARCH/boot目录下,对于ARM架构来说就是arch/arm/boot目录。,8.4根文件系统,Linux下的文件系统嵌入式Linux的文件系统介绍Linux的根文件系统,Linux下的文件系统,在UNIX系统中,文件系统是最基本的资源。在系统内核和文件系统之间制定一个标准的接口而实现的,不同文件结构之间可以通过该接口方便地交换数据。Linux正是使用这种方式,在系统内核和文件系统之间提供了一种标准接口VFS(virtualfilesystem,虚拟文件系统)。Linux下的文件系统,由虚拟文件系统和实际的文件系统两个层次组成。目前常用的有EXT2、CRAMFS、JFFS2、NFTL、NFS和RAM磁盘文件系统等。,Linux下的文件系统,嵌入式Linux的文件系统介绍,在嵌入式Linux中,常见的文件系统有以下几种:EXT2/3(扩展文件系统2/3)ROMFS(ReadOnlyMemoryFileSystem,只读文件系统)CRAMFS(CompressReadAccessMemoryFileSystem,压缩只读文件系统)JFFS2(JounalingFlashFilesystem2,日志文件系统2)NFS(NetFileSystem,网络文件系统)YAFFS(YetAnotherFlashFileSystem,另一种FLASH文件系统),Linux的根文件系统,Linux的根文件系统的主要目录:/bin:包含基本的用户命令工具程序/sbin:包含基本的系统管理程序/boot:包含内核映像及启动相关文件/etc:(excutivetimeconfig)包含系统配置文件和脚本/lib:包含系统库和内核模块/usr:用户程序及库目录/ho
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 烟叶调制员岗前工作能力考核试卷含答案
- 渔船机驾长应急处置技术规程
- 电子商务物流管理(第3版)
- 残留细胞检测技术研究与应用
- 中国磅称行业市场前景预测及投资价值评估分析报告
- 仓库产品存储培训
- 2.6给动物分类 教学设计-2023-2024学年教科版科学一年级下册
- 中国胎儿吸引器行业市场前景预测及投资价值评估分析报告
- 第4课 图像分类新思考-图像分类的优势与挑战教学设计-2025-2026学年小学信息科技清华版贵州2024六年级上册-清华版(贵州)2024
- 中国草制品业行业市场前景预测及投资价值评估分析报告
- 2025年湖南湘江新区招聘108名勤务协助人员考试笔试参考题库附答案解析
- 2025年公务员考行测试题库及答案
- 北京市朝阳区2025-2026学年高三上学期期中质量检测数学试卷(含答案)
- 高二学生团校考试题目及答案
- 关于加强建筑施工从业人员安全生产教育培训工作的通知
- 系统集成测试报告范本
- 镀膜工程师技能考试题及答案
- 2025贵州毕节市第四人民医院面向社会公开招聘编外23人考试参考试题及答案解析
- 2025年金融监管政策解读对金融行业反洗钱工作的影响可行性研究报告
- 2025重庆双福农产品批发市场有限公司招聘综合办公室文员、冻库管理员、招商员等岗位22人考试模拟试题及答案解析
- 2025中国水利水电出版传媒集团有限公司社会招聘10人考试参考试题及答案解析
评论
0/150
提交评论