简体版  |  繁体版   推荐信息: 阅读排行 | 滚动 | 微软SOA高峰会 | 中型企业创新社区 | 随心所欲发新闻
企业软件

谁将引领嵌入式Linux开发?

出处:软件世界 作者:龙达  2007-11-15 14:58 评论
字体大小: | |
根据实际构建方法定义,嵌入式Linux是指对标准Linux经过裁剪、固化至设备存储体中,完成特定嵌入式应用的专用Linux系统。

  近年来,计算机技术、通信技术及小型电子设备制造业均取得了飞速发展。以计算机、通信产品、消费电子为典型产品代表的这三大产业正呈现越发明显的整合趋势,即3C整合。

  产品制造方面,各厂家都争相以微型化和专业化作为设计、制造产品的核心理念,这使得具备这些特点的产品(即嵌入式产品)成为产业中毫无争议的主流;产品系统软件方面,拥有开放源码、高硬件兼容性、高稳定性、高定制性等特点的嵌入式Linux系统,已让越来越多的企业和研发机构由传统商业系统转向对其的研究开发;新兴的嵌入式操作系统市场上,嵌入式Linux正呈现出惊人增长率。

  

  2006年嵌入式Linux开发工具采用情况

  针对这一热点,本文以对目前嵌入式Linux的开发过程与工具选择分析为主题,力争向读者展示一个清晰的开发框架及实际操作方法指向。

  系统开发复杂度确定及成本控制

  根据实际构建方法定义,嵌入式Linux是指对标准Linux经过裁剪、固化至设备存储体中,完成特定嵌入式应用的专用Linux系统。

  进行系统开发需兼顾软件、硬件两方面资源,针对特定应用,软件系统功能要配合硬件资源来设计。

  硬件方面,确定应用范围和性能等级是首先要考虑的,因为二者的选型决定了整个产品的功能及性能,也就大体确定了产品的硬件成本。硬件资源固定后,就可针对所选资源进行软件选型、功能裁剪需求、工具搭配等软件系统方面的分析和定夺了。图1是一般的系统开发流程:

  作为一个功能完整的操作系统,Linux能提供嵌入式系统所需的基本内核和所有用户界面。具有内存管理、任务切换和时间服务及其它分拆的微内核到完整的服务器,支持所有的文件系统和网络服务。要使其成为易用且高效的嵌入式系统,前期关键的工作分为Linux版本选择、系统功能裁剪分析、文件系统及工具搭配几步。

  首先,按照选定的硬件选择合适的Linux系统版本,标准为系统要支持所选硬件且系统执行速度与硬件性能匹配较好。然后进行系统功能裁剪分析,标准为系统应在满足应用的前提下,尽可能减小尺寸,去掉不需要的模块。最后,为系统选择合适的文件系统及工具,同样以满足应用和减小尺寸为标准。

  做好以上系统开发复杂度分析,不仅可较好规划产品开发成本,而且对后续开发过程也起到了关键的需求参照作用。

  开发过程与对应开发工具选择

  嵌入式Linux系统的开发过程与其对应的开发工具联系十分紧密,完成一个系统的开发,不仅需要大量的工具,而且多以平台交叉开发模式为主:

  

  图1一般的嵌入式Linux系统开发流程

  嵌入式Linux开发工具选择的基本依据

  工具选择的基本依据主要有以下几点:

  ◆ 开源性,由于Linux系统本身的开源特性,从版权及成本两方面考虑,配套开发工具也应使用开源软件;

  ◆ 跨平台性,开发过程涉及宿主机与目标机,体系架构多有不同,因此有的工具需支持多平台;

  ◆ 精简性,在满足功能前提下,除应尽量使用较小体积的软件外,多功能、高整合度工具的使用也是必不可少的。

  Linux原型系统选择与工具准备

  最终的嵌入式Linux系统来源都是完整的Linux操作系统。在开发时,对原型Linux系统的选择及前期开发工具的准备对整个开发的效率及成果都有很大影响。

  选择原型系统时,首先要从体系架构及设备兼容性进行分析,先找出满足功能要求的版本及补丁,然后根据硬件实际性能及存储容量决定最终系统版本。

  前期工具准备包括2类工具的选择:开发用工具和系统工具。前者只在开发过程中起作用,多为宿主机平台工具。后者则是在最终的嵌入式Linux系统中使用,多为目标平台工具。

  Linux交叉开发环境建立

  Linux交叉开发环境基本都是由GNU开源工具链搭建,工具链同样存在版本选择的问题。针对所开发的目标平台选择相应编译器及调试器等,同时对应原型Linux的版本、工具链版本需与其配合以保证工具可正常使用,具体版本相关性请参考 kernel.org及GNU给出的说明文档。

  将原型Linux及交叉开发环境都保存于宿主机上,使用串口或网口等连接设备将宿主机与目标机连接在一起,安装好宿主机和目标机的通讯工具及服务;安装TFTP服务器,为目标机从主机上下载文件提供服务;启动Telnet服务;安装串口通讯工具minicom,一个交叉编译环境就基本建立完成了。然后即可在宿主机上用交叉工具链对原型Linux及其他目标机用软件进行交叉编译、调试,并使用通讯工具将编译好的目标代码传至目标机运行。

共2页。 1 2 :
相关文章
  • 本文关键字:
  • 介绍(3907)
  • 网友关注
    热门产品
    编辑推荐
    推荐专题
    更多
    思科
  • 打开网络创新之门
  • 思科公司于北京嘉里中心饭店成功举办了主题为“创新网络,绿色引擎”的思科创新日暨思科新品发布会。
  • 论坛热贴
    更多
    博客精选
    更多
    视频推荐
    更多
  • 杜青松:对IT人员要求别具一格
  • 在对杜青松的采访中,他透露出目前在中粮包装有限公司信息化建设的工作中的一个难点——IT人力资源短缺。
  • TMG

    Copyright (C) 1999-2008 Chinabyte.com, All Rights Reserved 版权所有 天极网络

    渝ICP证B2-20030003号 商务联系、网站内容、合作建议:010-82657868

    版权声明 在线提交意见反馈 Powered by 天极内容管理平台CMS4i

    经营性网站备案信息 网警备案 中国网站排名