嵌入式linux开发流程.ppt

嵌入式linux开发流程.ppt

ID:56471319

大小:360.50 KB

页数:29页

时间:2020-06-19

嵌入式linux开发流程.ppt_第1页
嵌入式linux开发流程.ppt_第2页
嵌入式linux开发流程.ppt_第3页
嵌入式linux开发流程.ppt_第4页
嵌入式linux开发流程.ppt_第5页
资源描述:

《嵌入式linux开发流程.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、嵌入式Linux开发流程成都研究所操作系统团队目录嵌入式Linux开发概述嵌入式Linux软件开发的五个阶段嵌入式Linux开发流程嵌入式Linux开发工具简介嵌入式Linux开发环境交叉开发环境(主机—目标机的工作方式)嵌入式Linux开发环境Linux下开发Windows下开发CygwinVmware(虚拟机)+Linux其他集成开发环境嵌入式Linux软件组成嵌入式Linux系统软件由以下部分组成:嵌入式Linux启动装载器:BootLoaderBootLoader驱动程序嵌入式Linux操作系统内核Linux设备驱动程序最小支持文件系统应用程序嵌入式Linux组成—Bo

2、otLoader启动装载器完成Linux操作系统内核的启动加载。系统上电后执行,初始化硬件。提供基本的交互操作界面,如内存查看与修改,设备查询等功能。提供下载(读取)Linux内核的功能。提供从装载器到Linux内核传送参数的功能。装载Linux操作系统到内存中,并将控制转移到Linux内核起始执行处。完成Linux内核的启动。嵌入式Linux组成—BootLoader驱动启动装载器驱动程序驱动基本设备,提供获取内核能力。启动装载器驱动程序只在装载器环境中使用,与Linux驱动不同。一般采用相对较为简单的方式,如一般可以不必采用中断方式,而是采用查询方式。驱动串行接口,进行控制

3、台(console)操作。驱动网口,提供从网络下载内核的能力。驱动FLASH,提供从FLASH读取内核能力。嵌入式Linux组成—Linux内核嵌入式Linux内核(Kernel)是整个嵌入式操作系统的核心,它直接管理硬件,并通过系统调用为上层应用提供服务。为了适应嵌入式环境,需要对内核进行裁减与配置。提供支持特定硬件平台的内核启动代码去除多余功能,减小体积增加实时功能添加特殊的系统调用嵌入式Linux组成—Linux设备驱动Linux硬件驱动提供目标系统硬件在Linux操作系统下的驱动程序,供系统以及之上的应用存取硬件使用。Linux下的设备划分为3类:字符设备char(如键

4、盘、串口等)、块设备block(如磁盘等)、网络设备一般列为单独的一类设备由于Linux运行时候划分内核空间与用户空间,而驱动程序一般运行在内核空间中。对于运行在用户空间的应用程序而言,从相应硬件中获取数据需要经过一个内核空间到用户空间拷贝的过程。嵌入式Linux组成—最小文件系统嵌入式Linux必须要有文件系统支持才能运行嵌入式系统中一般采用MTD的物理设备作为文件系统驻留空间:如RAM、Flash等。文件系统中必须包含的内容系统init程序;Shell;应用程序;应用程序函数库。必须采取措施,减小文件系统的体积,以适应嵌入式应用的需求。具体措施在“小型化”中介绍。嵌入式Li

5、nux组成—应用程序应用程序应用程序完成整个嵌入式系统的对外功能需求与功能接口。应用程序一般运行在Linux的用户空间,作为一个用户进程在运行。应用程序通过系统调用进入内核,访问内核提供的服务。存取硬件。可以有多个应用程序同时运行。应用程序崩溃一般不会导致系统崩溃。Linux支持Posix线程:pthread。目录嵌入式Linux开发概述嵌入式Linux软件开发的五个阶段嵌入式Linux开发流程嵌入式Linux开发工具简介嵌入式Linux开发的五个阶段根据整个嵌入式Linux应用开发过程的时间先后可以分为以下5个开发阶段Boot程序(含Boot驱动)开发Linux内核开发Lin

6、ux驱动程序开发应用程序开发Linux目标系统集成每个开发阶段相应对一个完整嵌入式Linux系统的一些组成部分的开发工作Boot及驱动程序开发开发目标启动嵌入式目标系统,使系统具有加载并启动Linux内核的能力。工作重点CPU初始化;RAM初始化;串口、网卡、以及FLASH驱动;基本的TCP/IP协议栈支持。工作产品目标系统的启动ROM。可以启动目标系统的BootLoader。Linux内核开发开发目标获得一个满足目标系统功能与性能需求,可以启动的Linux内核。工作重点启动最小系统(内核配置和生成)开发、外围设备驱动的开发。工作产品可以启动系统的Linux内核(bzImage

7、、pImage等)Linux设备驱动程序开发开发目标驱动目标系统上的相关设备,为上层应用提供存取硬件的能力。工作重点关注设备身的特性,采用合适的驱动方式。工作产品可以是内核的一部分,也可以是模块化的驱动程序(内核可装载模块LKM)的目标文件(*.o)。Linux应用程序开发开发目标实现单板需要实现的产品功能与接口。提供相应的单板服务与响应。工作重点关注应用本身。如果在封装过的操作系统平台上开发,需要关注所封装的接口。工作产品可以执行的应用程序,一般为ELF格式,采用动态或者静态连接,可以在目

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。