文档详情

嵌入式Linux系统移植.ppt

发布:2025-04-06约7.13千字共10页下载文档
文本预览下载声明

主要特性*操作系统实验*有2个USB主机总线的端口,或1个USB设备总线的端口。有4个具有PWM功能的16位定时器和1个16位内部定时器。8通道的10位A/D转换器,最高速率可达500kB/s;提供有触摸屏接口。具有117个通用I/O口和24通道的外部中断源。兼容MMC的SD卡接口。具有电源管理功能,可以使系统以普通方式、慢速方式、空闲方式和掉电方式工作。主要特性*操作系统实验*A看门狗定时器。B有LCD控制器,支持4K色的STN和256K色的TFT,配置有DMA通道。C具有PLL功能的时钟发生器,时钟频率高达203MHz。D双电源系统:1.8/2.0V内核供电,3.3V存储器和I/O供电。E没有内置的网络控制器,如果需要网络功能,一般使用CS8900和DM9000Bootloader*操作系统实验*Bootloader的概念Bootloader的结构和启动过程0102Bootloader的概念Bootloader*操作系统实验*系统上电后,需要一段程序来进行初始化:关闭WATCHDOG、改变系统时钟、初始化存储控制器、将更多的代码复制到内存中等。如果它能够将操作系统内核复制到内存中运行,无论从本地(比如Flash)还是从远端(比如通过网络),就成这段程序为Bootloader.01简单的说,Boot咯啊der就是这么一小段程序,它在系统上电时开始执行,初始化硬件设备、准备好软件环境,最后调用操作系统内核。02在开发时,通畅需要使用各种命令操作Bootloader,一般通过串口来连接PC和开发板,可以再串口上输入各种命令、观察运行结果等。03Bootloader的结构Bootloader*操作系统实验*Bootloader的结构嵌入式Linux系统从软件的角度通常可以分为以下四个层次:引导加载程序包括固化在固件的Boot代码(BIOS)和BootloaderLinux内核文件系统包括根文件系统。里面包含了Linux系统能够运行所必需的应用程序、库等,比如可以给用户提供操作Linux的控制界面的shell程序、动态链接的程序运行时需要的glibc库等用户应用程序特定于用户的应用程序也存储在文件系统中。有时在用户应用程序和内核层之间可能还会包括一个嵌入式图形用户界面。常用的嵌入式GUI有:Qtopia和MiniGUI等Bootloader*操作系统实验*Bootloader的两个阶段从固态存储设备上启动的Bootloader大多都是两阶段的启动过程。第一阶段使用汇编来实现,它完成一些依赖于CPU体系结构的初始化,并调用第二阶段的代码;第二阶段则通常使用C语言来实现。Bootloader第一阶段的功能硬件设备初始化(关闭WATCHDOG,关中断,设置CPU的速度和时钟频率等)为加载Bootloader的第二阶段代码准备RAM空间复制Bootloader的第二阶段代码到RAM空间中设置好栈跳转到第二阶段的C入口点Bootloader第二阶段的功能初始化本阶段要使用到的硬件设备检测系统内存映射将内核映像和根文件系统应用从Flash上读到RAM空间中为内核设置启动参数调用内核配置和编译内核*操作系统实验*解压内核tarxvfjlinux-.tar.bz2–C/opt/kernelMakefile与Kconfig*操作系统实验*Linux的Makefile分析Linux内核源码中含有很多个Makefile文件,这些Makefile文件又要包含其他一些文件(比如配置信息、通用规则等。)这些文件构成了Linux的Makefile体系,可以分为如下五类:名称描述顶层Makefile它是所有makefile文件的核心,从总体上控制着内核的编译、连接.config配置文件,在配置内核时生成。根据.config可以确定在编译内核时需要使用哪些文件arch/$(ARCH)/Makefile对应体系结构的Makefile,它用来决定哪些体系结构相关的文件参与内核的生成,并提供一些规则来生成特定格式的内核映像Scripts/Makefile.*Makefile共用的通用规则、脚本等KbuildMakefiles各级子目录下的makefile,他们相对简单,被上一层makefile调用来编译当前目录下的文件Makefile与Kconfig*操作系统实验*我们主要来关注Makefile是如何决定编译哪些文件的Linux内核的编译过程从顶层Makefile文件开始,然后

显示全部
相似文档