科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道在ARMSYS上进行uClinux内核移植的总结 (1)

在ARMSYS上进行uClinux内核移植的总结 (1)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

针对“如何在以S3C44B0X为核心的ARMSYS开发板上建立uClinux内核移植”的一个总结,其内容包括对Bootloader的功能分析和uClinux2.4.24发行版内核基础上针对S3C44B0X开发板进行修改的重点内容的逐一列举。

作者:tinker 来源:赛迪网技术社区 2007年10月30日

关键字: 移植 内核 ARMSYS Linux

  • 评论
  • 分享微博
  • 分享邮件
 

1. 简述

针对“如何在以S3C44B0X为核心的ARMSYS开发板上建立uClinux内核移植”的一个总结,其内容包括对Bootloader的功能分析和uClinux2.4.24发行版内核基础上针对S3C44B0X开发板进行修改的重点内容的逐一列举。

2. Bootloader

2.1 Bootloader概述

Boot Loader 就是在操作系统内核运行之前运行的一段程序。通过这段程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。因此,正确建立uClinux的移植的前提条件是具备一个与uClinux配套、易于使用的 Bootloader。

ARMSYS开发板提供了这样一个uClinux专用的Bootloader,该Bootloader程序烧录在系统的地址0x0处,每次上电即运行,能够正确完成硬件系统的初始化和uClinux的引导。

理论上,uClinux引导时并非一定需要一个独立于内核的Bootloader。然而,将Bootloader与内核分开设计能够使软件架构更加清晰,也有助于灵活地支持多种引导方式,实现一些有用的辅助功能。

ARMSYS提供的Bootloader的主要任务可以概括如下:

1.硬件初始化;

2.从主机下载新的内核映像和文件系统映像;

3.烧写NorFlash和Nandflash;

4.加载uClinux 内核映像并启动运行;

5.提供串行超级终端上的人机操作界面。

2.2 存储空间分布

Bootloader采用默认的存储空间分布地址来加载uClinux内核、文件系统,并按照正确引导uClinux的运行。在ARMSYS的Bootloader中,默认的存储空间分布如下表:

内容                      起始地址             存储介质
Bootloader程序空间         0x00000000           Flash
压缩内核映像               0x00010000           Flash
ROM文件系统映像            0x000e0000           Flash
内核运行地址               0x0c008000           SDRAM
压缩内核解压地址           0x0c100000           SDRAM
文件系统加载               0x0c700000           SDRAM

这个存储空间的分配方式也不是固定不变的,可以通过修改Bootloader中的相关代码来改变。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章