首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于ADSP-BF533的μClinux嵌入式系统移植与开发03

基于ADSP-BF533的μClinux嵌入式系统移植与开发03

3 利用U-Boot引导内核

       U-Boot(Universal Boot Loader)是当前比较流行的遵循GPL条件的开放源码项目。也是是嵌入式Linux系统常用的Boot Loader之一。其完成的功能是初始化硬件设备、改变处理器运行模式、重组中断向量和建立内存空间映射图,从而将系统的软硬件带到一个合适的状态或者用户定制的特定状态,以便为最终加载操作系统内核准备好正确的环境。
       U-Boot具有源码公开的特点,开发人员可根据自身需要进行裁减;支持多种处理器和嵌入式操作系统内核;具有多种设备驱动源码:支持种引导方式;具有功能强大且成熟、稳定等诸多优点,故本文采用U-Boot引导μClinux内核。U-Boot严重依赖于底层硬件,不同的CPU或嵌入式板极设备需要不同的U-Boot,不过因为本文的重点是μClinux的移植,所以这里不再详述U-Boot的具体实现过程。
       当系统上电后,U-Boot从地址OxO开始执行,将存储器映射重新配置,如图1所示,并会执行μClinux的固化内核。

       U-Boot可以使用ADI的仿真软件Visual DSP++通过仿真器或JTAG口下载到目标板上。
      4 μClinux内核的编译和移植
       作为操作系统的核心,μClinux内核负责管理系统的进程、内存、设备驱动程序、文件系统和网络系统,决定着系统的各种性能。μClinux内核采用模块化的组织结构,通过增减内核模块的方式来增减系统的功能。
       4.1 内核配置
       虽然μClinux的内核代码大部分独立于处理器和其体系结构,但是最底层的代码还是基于特定系统的。虽然各个系统存在相同之处,但是它们的中断处理上下文、内存映射的维护、任务上下文和初始化过程是独特的。这些例行程序放置在μClinux代码树的arch/目录下。这里需要根据自己的硬件平台来配置内核代码。配置过程如下:
       可以从官方网站http://blackfin.μClinux.org处下载μClinux-list的内核源代码。运行解压命令:将tar-xvfμClinux-dist.tar.gz解压完毕后,就会生成/μClinux-dist目录,加入该目录后按如下顺序编译内核:
返回列表