基于计算机嵌入式系统移植研究.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于计算机嵌入式系统移植研究

基于计算机嵌入式系统移植研究   摘 要:Linux系统具有开源、可裁减、免费、完全支持TCP/IP协议、可移植性好、运行稳定等特点,ARMLinux继承了这些优良特性。ARM9处理器具有MMU,支持一般操作系统的虚拟内存机制,这就使在ARM9上运行一个完全的ARMLinux系统成为可能。本文主要基于ARM的嵌入式Linux系统移植进行研究。   关键词:ARM;嵌入式;Linux系统移植   ARMLinux是以Linux为基础,经过裁减之后适用于ARM核心嵌入式设备的嵌入式Linux操作系统,广泛应用在移动电话、PDA、媒体播放器、消费性电子产品以及航空航天等领域。不同的处理器需要的内核代码是不同的,需要为2410处理器修改Linux内核源代码,主要完成下面几个丁作:指定目标平台为2410处理器;指定交叉编译器;设置内核在Flash中保存的位置;设置内核最终被解压缩到内存中的起始位置;修改Linux的配置菜单;修改处理器初始化文件;配置中断;指定内存块的容量、数量,内存块的起始地址。   一、Linux内核概述   1.进程调度(ProcessSchedule)   进程调度控制进程对CPU的访问。当需要选择下一个进程运行时,由调度程序选择最值得运行的进程。可运行进程实际上是仅等待CPU资源的进程,如果某个进程在等待其他资源,则该进程是不可运行进程。Linux使用了比较简单的基于优先级的进程调度算法选择新的进程。   2.进程间通信(Intev-ProcessCommunication,简称IPC)   Linux的进程间通信机制包括FIFO、管道(pipe)等机制以及SystemVIPC的共享内存(shm)、消息队列(msg)和信号灯(sem)。   3.内存管理(MemoryManagement,简称MM)   内存管理允许多个进程安全的共享主内存区域。Linux的内存管理支持虚拟内存,即在计算机中运行的程序,它的代码、数据和堆栈的总量可以超过实际内存的大小,操作系统只是把当前使用的程序块保留在内存中,其余的程序块则保留在磁盘中。当必要时候,操作系统负责在磁盘和内存问交换程序块。内存管理从逻辑上分为硬件无关部分和硬件有关部分。硬件无关部分提供了进程的映射和逻辑内存的对换;硬件相关的部分为内存管理硬件提供了虚拟接口。   二、ARMLinux   ARMLinux一般专指标准Linux在ARM处理器上的应用。ARM是标准Linux支持的主要几种体系结构之一。Linux是最为流行开源操作系统,而ARM是目前嵌入式领域中最为流行的32位处理器,ARM与Linux的结合在嵌入式系统中有着非常广泛的应用空间。传统的工作流系统,节点即任务,一个节点上只能有一个任务存在和执行。对于法检行业核心应用系统来说,通常情况下,一个业务阶段上会有很多的可执行任务,这些任务直接没有明确的先后顺序关系或者制约条件。如果把这些大量的任务都设计为一个节点的话,那么整个的工作流模型将会非常的复杂,这样会对业务流程的分析、模型的制作带来很大的麻烦,并且业务系统的开发也会复杂很多。因此单节点、多任务的特性对法检行业来说是非常必要的,这样的话,我们就可以设计简单的工作流流程(即少量节点,节点下多个任务),从而降低业务流程建模复杂度,并降低软件复杂度。同时该特性也会影响到建模工具、升级工具等相关特性。   三、计算机嵌入式开发的内核设计   1.建立开发环境   宿主机可以采用Cygwin环境。需要准备的源码包括vivi源码、kernel源码和文件系统,需要准备的软件包括交叉开发工具链和文件系统镜像制作工具mkcramfs。编写并在启动Cygwin时执行相关命令,可以完成一些系统环境配置工作。   2.系统交叉编译   首先交叉编译BootLoader。准备好vivi源码,修改Makefile文件,指定目标体系结构为arm,交叉编译工具前缀为arm-linux-,注意工具链的路径要设置正确;然后按照目标板的实际情况设置vivi运行的硬件地址;交叉编泽vivi。运行makeclean命令清除中间文件,然后运行makemenuconfig命令对vivi进行配置,最后执行make命令,当出现提示“--Thevivibootimagefileis:…/vivi/vivi”(省略号代表用户实际安装vivi源码的目录)时,交叉编译完成。下一步需要配置编译内核源码。准备miziLinux源码,修改Makefile文件,把内核运行的目标平台改为2410处理器,修改交叉编译器前缀为arm-linux-,注意工具链的路径要设置正确;按照目标板RAM、Flash的实际情况配置硬件地址;配置串口,设置正确的波特率。本阶段依次运行以下命令:makemrproper、makexconf

文档评论(0)

317960162 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档