上QQ阅读APP看书,第一时间看更新
第2章 U-Boot-201304分析与移植
2.1 BootLoader概述
从最终用户的角度看,BootLoader(即启动代码)是处理器复位后进入操作系统之前执行的一段代码,用以完成由硬件启动到操作系统启动的过渡,为操作系统的运行提供基本的环境,如关闭看门狗、初始化时钟和配置存储器等。启动代码的最终目的是引导操作系统的启动,但从开发人员的角度看,为了开发和调试的方便,还会增加串口控制、以太网络等功能。
嵌入式系统与应用密切结合,它具有很强的专用性。实际系统的需求往往千差万别, BootLoader代码与CPU的类型、应用系统的配置及使用的操作系统等因素密切相关,这就注定了不可能有完全通用的BootLoader,实际运用时必须根据具体情况对启动代码进行移植。
本文所写的内容都是基于表2.1所示配置的单板(board):NAND芯片K9GAG08U0D共4096块,每一块包含128页,每页由4096字节的数据区和218字节的空闲区组成。两片64 MB×16 bit的Mobile DDR芯片K4X1G163PC,组合构成共256 MB的内存。尽管每个人持有的单板配置各异,但分析、移植的原理相通。
表2.1 开发板配置
本节配套视频位于光盘中“嵌入式Linux开发实用教程视频”目录下第二章01课(Linux常用软件及BootLoader介绍)。