论文部分内容阅读
目前,嵌入式产品得到社会的关注,随着信息与通讯产业的发展,嵌入式系统的产品越来越普及,并在日常生活中扮演着重要的角色,在信息电器的应用开发领域,由于需要的功能不断的增加,嵌入式系统也就将成为软件业的新宠儿。同时在计算机本身的领域里面,微型化和专业化成为了发展的新趋势,同样也需要嵌入式系统的支持。因此,研究与嵌入式系统有关的关键技术—嵌入式系统的bootloader有着相当重要的实际意义。在嵌入式Linux系统上建立一个通用bootloader可以为嵌入式产品开发的前、后期工作提供方便。 为嵌入式系统构建bootloader有多种方式,可以以硬件平台为根据,写一个完整的bootloader,也可以通过别的已存在的bootloader来进行裁剪和修改,使它适合自己的硬件平台,也就是把它移植到自己的平台上,通常我们会选择后者来节约bootloader设计的工作量。但无论是前者还是后者,其最终的源代码都有相似的流程和规律。 论文开始先介绍了Arm处理器的工作原理和编程模型,嵌入式Linux的特点和构建嵌入式linux所要注意的关键问题,bootloader的概况,并对比了几种常用的bootloader的特点,为arm linux系统的bootloader设计打下良好的前奏。 本文所要研究的就是基于ARM嵌入式系统bootloader的设计与实现的一般方法。bootloader是嵌入式系统中执行在内核操作系统前的一个重要模块,它的基本作用就是启动系统并加载内核镜像:同时在完成基本功能的基础上,它还可以支持硬件模块以完成某些特定功能。以Arm+Linux操作系统为开发平台,分别对其bootloader进行了研究,实现了bootloader的基本功能并对其进行了扩展.通过对ARM嵌入式系统中bootloader的一些共同点的分析,提出了如何对其他ARM系统进行移植的方法,以做到通用性。本文先介绍对比几种常用的Bootloader,而后分析vivi和u-boot的架构及其在S3C2410移植要点和起动流程。本课题以车载平台系统为实例进行bootloader的设计与实现,在当前嵌入式ARM平台中选择了S3C2410,并以vivi和uboot两个流行的bootloader进行分析与移植,最终可以看出bootloader实现的一般方法与步骤。