基于ARM9的LINUX操作系统移植_毕业设计
- 格式:doc
- 大小:2.37 MB
- 文档页数:40
linux操作系统在ARM平台上的移植-毕业论文学生毕业论文( 2012届)姓名:学号:指导教师:诚信声明我声明,所呈交的毕业论文是本人在老师指导下进行的研究工作及取得的研究成果。
据我查证,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,我承诺,论文中的所有内容均真实、可信。
毕业论文作者签名:签名日期:年月日摘要:在ARM平台上移植linux操作系统作为实现设备小型化、智能化的一个重要元素,目前己经广泛应用于国防、工业、交通、能源、信息技术以及日常生活等各个领域,研究和开发linux操作系统在ARM平台上的移植具有重要的现实意义。
本文主要介绍了将公开源代码的linux3.3.3内核移植到S3C6410(arm1172 核)的关键技术分析以及具体的移植过程,建立嵌入式Linux交叉开发环境,移植BootLoader引导程序,配置、编译、移植Linux内核,制作文件系统并对文件系统进行移植到开发板。
我们可以根据内核所支持的文件系统类型制作文件系统本论文选择制作yaffs文件系统并移植。
并且vim,arm-linux-gcc开发环境下设计了一个简单的测试程序。
另外,基于此平台的开发也将使软件缺陷大幅度减少,从而为程序员开发此平台上进行二次开发。
关键词:系统移植;BootLoader;S3C6410;Linux3.3.3Abstract: in the ARM platform transplant Linux operating system as realize miniaturization, intelligent equipment an important element of, at present has been widely used in n ational defense, industrial, transportation, energy resources, information technology and daily life, and other fields,rese arch and development and Linux operating system in the ARM platform of transplantation has the important practical sign ificance. This paper mainly introduced to the public in source code linux3.3.3 kernel transplanted to S3C6410(arm1172) of the key technical analysis and specific transplant process,easta blish embedded Linux cross development environment,transplant BootLoader boot, configuration, compilation,transplant Linux kernel, and making the file system and the file system transplant to development board. We can according to the sup port of the kernel file system type making file system this paper yaffs select file system and transplantation. And vim, arm-Linux-GCC development environment design a simple test procedures. In addition, based on this platform will also make the development of software defect greatly reduced, and thus for programmers development this platform secondary development.Keywords: system transplantation; BootLoader; S3C6410; Linux3.3.3目录1 绪论1.1课题研究的背景、目的和意义随着各种芯片技术的发展,各种嵌入式产品也如雨后春笋一般地出现了。
基于ARM9的LINUX操作系统移植Transplantation of Linux Operation System Based on ARM9摘要随着电子技术的不断更新,嵌入式已经涉及到各行各业了,在智能家电,数字移动终端等这些行业嵌入式软件开发的需求下,嵌入式集成开发环境已经成为目前嵌入式系统发展的趋势。
Linux作为优秀的开源操作系统软件被广泛应用到嵌入式操作系统中,它的实用性,可移植性,支持大容量的内存,MMU(微控制器)和I/O 系统等得到了体现。
本次设计主要研究了嵌入式Linux系统从PC机向开发板上移植的过程,硬件平台是基于CPU:三星S3C2440A,采用ARM920T 内核,主频400MHZ。
本文介绍了嵌入式系统的概念和现状以及嵌入式系统的开发模式,介绍了内核启动流程,对Bootloader启动进行了分析,移植了Linux内核,移植了文件系统yaffs以及自己的LED程序移植。
以上烧写的文件均是官网下载的,这样可以使得Linux在开发板上更流畅的运行。
本次设计成功的将嵌入式Linux系统移植到了FL2440开发板,文件系统运行正常,可通过触摸屏进行操作,LED程序调试成功,并在开发板上得到了运行结果。
对以后Linux开发打下了很好的基础。
关键词:嵌入式系统Linux Bootloader 文件系统AbstractAlong with the continuous renewal of electronic technology, the development of embedded system has become the mainstream of science and technology, under the requirements of embedded software development in the intelligent home appliance, digital mobile industry, the embedded integrated development environment has become the trend of the development of the embedded system at present. Linux as excellent open source operating system software has been widely applied to embedded operating system,whose featares such of practical applicability, portability, supporting large capacity memory, MMU (microcontroller) and I/O system have been reflected.Mainly from the PC to transplant process the embedded Linux system are studied on the development board, hardware platform is based on CPU: samsung S3C2440A, adopted ARM920T kernel, dominant frequency 400 MHZ. This paper introduces the concept of embedded system and the status quo and development mode of the embedded system, the kernel boot process is introduced, the Bootloader startup was analyzed, and the transplantation of the Linux kernel, transplant yaffs file system as well as their own LED transplant program.The above writing files are the official website to download, so you can make the Linux more smoothly in the development board to run.The design successful porting embedded Linux system to FL2440 development board, file system running normal, can be operated by touch screen, LED program debugging is successful, and gets the results on the development board. For future study Linux development laid a good foundation.Key words: embedded system Linux Bootloader file system目录摘要 (I)Abstract (II)绪论 (1)1 嵌入式Linux系统构成和软件开发环境 (5)1.1嵌入式Linux系统的体系结构 (5)1.2 嵌入式Linux系统硬件平台 (5)1.2.1 S3C2440A处理器简介 (5)1.2.2 硬件系统整体结构 (7)1.3 嵌入式Linux开发软件平台建立 (12)1.3.1 ADS1.2 集成开发环境 (12)1.3.2 DNW串口调试软件 (12)2 嵌入式Linux的引导BootLoader程序 (14)2.1 BootLoader概述 (14)2.2 NAND Flash和NOR Flash的区别 (14)2.3 BootLoader移植 (15)3 Linux内核的编译、移植 (21)3.1 Linux2.6内核的新特性简介 (21)3.2 Linux内核启动流程 (21)3.3 内核移植的实现 (22)4 移植文件系统yaffs (24)4.1 yaffs文件系统简介 (24)4.2 yaffs文件系统移植的实现 (24)5 移植自己的程序 (30)5.1 移植开机画面 (30)5.2 移植LED程序 (31)结论 (33)致谢 (34)参考文献 (35)绪论研究的背景及意义随着计算机技术、通信技术以及Internet的飞速发展。
2020年第8期信息与电脑China Computer & Communication软件开发与应用基于嵌入式ARM9的Linux 系统移植的研究和实现冯宁波 周 剑(苏州长风航空电子有限公司,江苏 苏州 215151)摘 要:笔者以ARM9处理器为硬件,对嵌入式系统展开分析,并对安装到嵌入式ARM9芯片开发板上的Linux 系统移植进行研究。
Linux 系统移植步骤如下:首先初始化随机存取存储器,设置堆栈,引导加载程序移植;然后下载Linux 内核,修改Makefile 文件,设计交叉编译环境;最后依据内核启动过程,指定启动初始值,控制后台,并执行制作菜单配置命令。
关键词:嵌入式ARM9;Linux 系统;移植;内核中图分类号:TP311.54;TP316.81 文献标识码:A 文章编号:1003-9767(2020)08-078-02Research and Implementation of Linux System Migration Based on EmbeddedARM9Feng Ningbo, Zhou Jian(Suzhou Changfeng Avionics Co., Ltd., Suzhou Jiangsu 215151, China)Abstract: The author takes ARM9 processor as hardware, analyzes the embedded system, and studies the Linux systemporting installed on the embedded ARM9 chip development board. The steps of Linux system porting are as follows: first, initialize random access memory, set stack, boot loader porting; then download Linux kernel, modify makefile file, and design cross compiling environment; finally, according to the kernel startup process, specify the initial startup value, control the background, and execute thecommand of making menu configuration.Key words: embedded ARM9; Linux system; transplantation; kernel0 引言微电子技术快速发展使计算机技术支持下的嵌入式系统得到广泛应用,该系统因软硬件可裁剪、使用性能良好,受到人们青睐[1]。
目录摘要 ----------------------------------------------------------------------------------------------------------------------------------- IABSTRACT ----------------------------------------------------------------------------------------------------------------------------- II引言----------------------------------------------------------------------------------------------------------------------------------------- 1 1绪论------------------------------------------------------------------------------------------------------------------------------------ 21.1儿童定位系统背景及应用现状------------------------------------------------------------------------------------------ 2 1.2所需做的工作----------------------------------------------------------------------------------------------------------------- 22硬件平台系统简介---------------------------------------------------------------------------------------------------------------- 42.1博创平台简介 ---------------------------------------------------------------------------------------------------------------- 4 2.2嵌入式L INUX简介 ---------------------------------------------------------------------------------------------------------- 4 2.3GPS模块简介----------------------------------------------------------------------------------------------------------------- 52.3.1GPS实现原理 ---------------------------------------------------------------------------------------------------------- 52.3.2GPS接口----------------------------------------------------------------------------------------------------------------- 73开发工具软件与系统软件部分 ----------------------------------------------------------------------------------------------- 83.1儿童定位系统程序框图 --------------------------------------------------------------------------------------------------- 8 3.2开发工具软件的安装------------------------------------------------------------------------------------------------------- 8 3.3开发环境配置----------------------------------------------------------------------------------------------------------------- 8 3.4超级终端 ----------------------------------------------------------------------------------------------------------------------- 9 3.5F LASH FXP --------------------------------------------------------------------------------------------------------------------10 3.6程序分析-----------------------------------------------------------------------------------------------------------------------104移植过程 ----------------------------------------------------------------------------------------------------------------------------134.1L INUX2.6内核驱动与2.4的区别--------------------------------------------------------------------------------------13 4.2平台升级操作步骤 ---------------------------------------------------------------------------------------------------------154.3.1烧写 u-boot ---------------------------------------------------------------------------------------------------------164.3.2烧写内核、文件系统及应用程序 -----------------------------------------------------------------------------184.3.3烧写文件系统--------------------------------------------------------------------------------------------------------194.3.4烧写应用程序--------------------------------------------------------------------------------------------------------195实验验证 ----------------------------------------------------------------------------------------------------------------------------216结论-----------------------------------------------------------------------------------------------------------------------------------24致谢----------------------------------------------------------------------------------------------------------------------------------------25参考文献 ---------------------------------------------------------------------------------------------------------------------------------25摘要随着生活节奏的日益加快,人们把越来越多的精力投入到了工作之中,对于子女尤其是儿童的照顾就显得力不从心了。
基于ARM9的LINUX操作系统移植ARM9是ARM公司开发的一种低功耗、低成本的微处理器核。
它具有较高的性能、较低的功耗和较小的尺寸,适用于嵌入式系统、智能手机和便携设备等。
移植Linux操作系统到基于ARM9的平台是一项复杂的任务,需要仔细考虑硬件和软件的兼容性,以及适配内核和驱动程序等。
下面将详细介绍ARM9平台上的Linux操作系统移植过程。
首先,进行硬件选型和准备。
选择合适的ARM9处理器和开发板,确保其能够满足项目的需求。
然后,对硬件进行适配和配置,包括时钟、存储器、外设等。
需要将硬件的相关信息添加到Linux内核配置文件中,以确保内核能够正确地检测和使用硬件。
随后,编写启动代码。
ARM9平台上的启动代码是一个汇编文件,用于初始化处理器和硬件,设置堆栈和中断向量表,并跳转到内核入口点开始执行。
启动代码的编写需要根据具体的处理器和开发板进行调整和修改。
然后,进行驱动程序的移植。
驱动程序是操作系统与硬件之间的桥梁,负责管理和控制硬件资源。
在ARM9平台上,需要移植适配各种外设的驱动程序,包括串口、网卡、显示屏等。
可以根据硬件厂商提供的驱动程序手册或原始代码进行移植和调试。
最后,进行系统调试和优化。
移植完Linux操作系统后,需要进行系统调试和测试,确保系统能够正常启动和运行。
可以使用调试工具和性能分析工具来检测和解决问题,并对系统进行优化,提升性能和稳定性。
总之,移植Linux操作系统到基于ARM9的平台是一项复杂而又重要的任务。
通过详细的硬件准备、内核编译、启动代码编写、驱动程序移植和系统调试等步骤,可以成功将Linux操作系统移植到ARM9平台上,并实现功能完善、稳定可靠的嵌入式系统。
2018年 / 第11期 物联网技术智能处理与应用Intelligent Processing and Application85基于ARM9平台上的嵌入式Linux系统移植刘 迪,周 强(安徽理工大学,安徽 淮南 232001)摘 要:随着嵌入式技术的广泛应用,ARM9平台上的嵌入式Linux 操作系统成为一个焦点。
在诸多嵌入式操作系统中,Linux 凭借其低成本开发,可应用于多种硬件平台,可定制内核,性能优异,良好的网络支持等优势成为嵌入式系统的首选。
针对当前复杂的嵌入式产品,以Linux 移植到嵌入式平台的过程为对象,内容包括Boot Loader 叙述,内核和根文件系统定制等。
关键词:ARM9;嵌入式Linux ;操作系统;移植中图分类号:TP274 文献标识码:A 文章编号:2095-1302(2018)11-0085-02————————————————收稿日期:2018-07-02 修回日期:2018-08-01DOI :10.16667/j.issn.2095-1302.2018.11.0270 引 言嵌入式系统是传感器、微电子、计算机和半导体等先进技术相结合的产物。
嵌入式系统适合对功耗、成本、功能、可靠性等严格要求的专用计算机系统[1-2]。
随着嵌入式系统的迅速发展,其应用领域越来越广范。
嵌入式系统中的操作系统选择Linux 。
Linux 是一种具有开发成本低,可应用于多种硬件平台,可定制的内核,性能优异,良好的网络支持等优势的系统[3]。
Linux 具有的诸多优势,注定它将在嵌入式操作系统的应用中,给人们带来意想不到的惊喜,使生活越来越便捷。
1 Boot Loader 引导程序及移植系统加电后运行的第一段程序是Boot Loader 。
通常由BIOS 和位于MBR 的操作系统Boot Loader 组成,系统的加载启动任务交由Boot Loader 完成,这段小程序,可以初始化必要的硬件设备,把内核需要的信息创建出来,并且这些有用的信息经相关机制可传递给内核,将软件和硬件系统的环境带到合适的状态。
Linux操作系统在ARM9处理器上的移植王晓宁;王振臣;张少兵;姚帆【期刊名称】《化工自动化及仪表》【年(卷),期】2010(037)002【摘要】嵌入式系统在工业生产和日常生活中的应用已经越来越广泛,基于ARM 的Linux嵌入式系统更是因其各个方面的优良特性成为当前嵌入式研究的热点.结合实例阐述了Linux内核移植到ARM9芯片S3C2410的具体实现过程,重点论述了移植过程中的具体方法及需要修改的文件,其中Linux操作系统选用RedHat9.0版本,交叉编译工具为arm-linux-gcc3.4.1,移植主要内容为:交叉环境的建立,引导程序 (BootLoader)移植,内核的移植,最后,将编译好的内核代码通过已经移植好的BootLoader下载到开发板上,Linux系统就成功的移植到了ARM处理器中.【总页数】4页(P67-69,77)【作者】王晓宁;王振臣;张少兵;姚帆【作者单位】燕山大学,西校区电院,工业计算机控制工程河北省重点实验室,河北,秦皇岛,066004;燕山大学,西校区电院,工业计算机控制工程河北省重点实验室,河北,秦皇岛,066004;燕山大学,西校区电院,工业计算机控制工程河北省重点实验室,河北,秦皇岛,066004;燕山大学,西校区电院,工业计算机控制工程河北省重点实验室,河北,秦皇岛,066004【正文语种】中文【中图分类】TP316【相关文献】1.基于ARM9的嵌入式Linux操作系统的移植 [J], 王志诚2.Linux内核在ARM9处理器上的移植 [J], 张明华3.MicroBlaze处理器的PetaLinuX操作系统移植 [J], 薛慧敏;武传华;路后兵4.软PLC在ARM9处理器上的实现 [J], 车炯晖5.基于S3C2410处理器的ARM Linux操作系统移植实现 [J], 谢清;张建刚因版权原因,仅展示原文概要,查看原文内容请购买。
An Experimental Design of Embedded Linux System Transplantation Base on ARM9 Platform 作者: 方帆[1]
作者机构: [1]巢湖学院教务处,安徽巢湖238000
出版物刊名: 湖州师范学院学报
页码: 104-110页
年卷期: 2020年 第4期
主题词: ARM9;嵌入式Linux系统;引导加载程序;内核
摘要:选用以微处理器S3C2440A(ARM920T架构)为核心的嵌入式开发板作为移植目标平台,设计将嵌入式Linux操作系统移植到ARM9硬件平台的创新性实验,通过在ARM9硬件平台上
进行Bootloader移植、Linux内核裁剪和移植,以及构建根文件系统,完成嵌入式Linux应用开发
平台的构建.同时根据学生自身能力将实验操作分成基本实验、扩展实验和创新实验3个阶段,让
学生在实际操作和编译移植过程中深入理解Linux软件架构,掌握嵌入式Linux平台的搭建方法,初步了解嵌入式系统的应用开发,从而有效提高学生的实践动手能力和创新能力.。
-113-1.引言操作系统的移植是指通过对操作系统的改造,使同一个操作系统可以在不同的硬件平台上运行。
如果一个系统可以在不同硬件平台上运行,那么这个系统就是可移植的。
Linux 操作系统就可以通过移植,运行在ARM 等多种硬件平台上。
考虑到嵌入式系统是“硬件可裁减”的,以及不同的用户需求,我们需要对已有的内核代码进行裁减移植。
一般情况下的Linux 内核的剪裁及移植,主要是针对操作系统中关于具体硬件以及除去不需要的功能模块,如一些不会用到的外设支持、驱动程序、协议、网络支持、文件格式等。
Linux 内核具有很好的模块性和伸缩性,在资源要求严格的情况下经过合理的裁减可获得明显的效果[1]。
Linux 内核支持很多的硬件体系结构如ARM,PowerPC 等,但由于新的硬件设备不断出现,根据新的硬件平台移植内核是嵌入式系统构建的必须工作。
2.交叉编译环境的建立Linux 下的交叉编译环境主要包括以下几个部分:针对目标系统的编译器gcc ;针对目标系统的二进制工具binutils ;目标系统的标准c 库glibc ;目标系统的Linux 内核头文件,G D B 调试工具。
交叉编译环境的建立主要是在Linux 下创建以上工具。
这里重点介绍gcc 建立过程:基于ARM9嵌入式Linux内核的移植方兴 贵州师范大学机械与电气工程学院 5500021).下载arm-linux-gcc.3.3.2.tgz 软件包到宿主机Linux 操作系统上。
2).在终端下解压安装交叉编译器,命令如下:tar xvzf arm-linux-gcc.3.3.2.tgz /usr/local/arm3).修改环境变量:为了方便的使用arm-linux-gcc 编译器系统,最好把arm-linux 工具链目录加入到环境变量PATH 中,即修改/etc/profile 文件,在PATH 变量中加入pathmunge /usr/local/arm/3.3.2/bin 语句。
基于ARM9的LINUX操作系统移植移植ARM9的LINUX操作系统是一项复杂的任务,需要充分了解ARM9架构和LINUX操作系统以及相关工具链。
以下是一个基本的指南,用于说明如何进行ARM9的LINUX操作系统移植。
1.ARM9架构的简介ARM9是ARM处理器系列中的一种32位RISC架构芯片,广泛应用于嵌入式系统和移动设备中。
ARM9具有较高的性能和低功耗特性,对于运行Linux操作系统非常适合。
ARM9处理器通常由ARM920T和ARM926EJ-S 两种型号组成。
2.LINUX操作系统的简介LINUX是一个开源的类UNIX操作系统内核,广泛应用于嵌入式系统和服务器领域,并且也非常适合ARM架构设备。
LINUX操作系统提供了丰富的功能和各种驱动程序,可以满足嵌入式系统的需求。
3.移植准备在进行LINUX操作系统移植之前,需要先准备好以下工具和材料:-ARM9开发板:用于将LINUX操作系统移植到ARM9架构上。
-交叉编译工具链:用于在主机上编译ARM9上的LINUX操作系统。
4.移植步骤移植LINUX操作系统到ARM9架构上比较复杂,一般需要以下步骤:-了解ARM9的硬件特性和寄存器体系结构。
- 配置LINUX内核:根据ARM9的硬件特性和功能需求,对内核进行配置。
可以通过make menuconfig或make xconfig命令进行配置。
-编译内核:使用交叉编译工具链,将LINUX内核编译为ARM9可执行的二进制文件。
-烧录内核映像文件:将编译好的内核映像文件烧录到ARM9开发板上的存储介质中。
-启动LINUX操作系统:通过引导加载程序启动LINUX内核,完成ARM9上的LINUX操作系统移植。
5.设备驱动程序移植LINUX操作系统提供了各种设备驱动程序,但是在ARM9架构上可能需要根据具体硬件进行相应的移植。
需要注意的是,ARM9的LINUX驱动程序必须与硬件兼容才能正常工作。
移植设备驱动程序的步骤包括:-阅读设备的硬件文档,了解设备的寄存器操作和特性。
基于ARM9的嵌入式Linux系统移植
刘云锋;黄英;何新鹏;刘奇
【期刊名称】《工业控制计算机》
【年(卷),期】2011(24)6
【摘要】描述移植Linux内核到ARM9的具体实现过程和方法.ARM9采用三星公司的S3C2440,Linux内核版本号为2.6.34.8.首先从搭建交叉编译环境入手,接着介绍Bootloader引导程序及移植,然后详述Linux2.6.34.8内核的移植过程,最后介绍根文件系统的制作.移植后的Linux在嵌入式系统中运行稳定.
【总页数】2页(P44-45)
【作者】刘云锋;黄英;何新鹏;刘奇
【作者单位】广东工业大学自动化学院,广东广州510006;广东工业大学自动化学院,广东广州510006;广东工业大学自动化学院,广东广州510006;广东工业大学自动化学院,广东广州510006
【正文语种】中文
【相关文献】
1.ARM9上的嵌入式Linux系统移植 [J], 邹颖婷;李绍荣
2.基于ARM9的嵌入式Linux系统移植 [J], 刘新建;于会山;李子东;姬小夸;张守辉
3.基于ARM9的嵌入式linux系统移植 [J], 李胜琴;许岩
4.基于ARM9平台上的嵌入式Linux系统移植 [J], 刘迪;周强
5.基于ARM9平台的嵌入式Linux系统移植实验设计 [J], 方帆
因版权原因,仅展示原文概要,查看原文内容请购买。
基于SSH的企业级应用用户内容管理系统基于SSH的用户内容管理系统的设计与实现摘要操作系统的移植是嵌入式系统开发的重要环节。
笔者给出了在基于ARM9 内核的硬件平台上构建一个基本的带有根文件系统的嵌入式Linux系统的过程与方法。
首先介绍了基于S3C2410系统硬件结构和Linux内核结构,然后分析了如何将Linux移植到目标板上的方法与步骤,最后建立根文件系统。
通过串口、网口或者JTAG口烧至目标板,该系统成本低、工作稳定、通用性强,可用在多种工业场合。
设计与实现了Bootloader和Linux在硬件平台上的移植。
主要完成的工作包括在开发机上完成创建交叉编译环境和NFS,TFTP服务以及串口通信程序UUCP的配置。
同时完成了对Linux2.4.18内核的板级修改移植和文件系统的创建。
通过以上步骤,成功实现了Linux在硬件平台S3C2410上的运行。
…关键词:ARM9;嵌入式linux移植;操作系统移植Based on ARM9 embedded Linux transplantationAbstractThe porting of operating system is the significant segment of Embedded System development.The writer gives out process and means to transform the embedded linux os with root file system into the hardware platform based on ARM9 core.First of all introduced baseds on S3C2410's system hardware composition and Linux's crux of a matter composition,afterwards how analysed transplanting Linux up the target plank means together with move, and finally establishs a document system.By means of the stringtrain rim Net rim or JTAG's rim bakes till the target plank,and that system cost is leted drop Work is steadyd The commonality is powerful,usable much kinds of industry situations being living.…Keywords:ARM9; the embedded system linux porting; OS porting目录摘要 (I)Abstract (II)第1章绪论 (1)1.1 课题背景 (1)1.2 目的和意义 (1)1.3 解决问题 (1)1.3.1 Bootloader的移植 (1)1.3.2 Linux内核移植 (1)第2章方法论证 (2)2.1 可行性分析 (2)2.2 温度传感器的选择 (2)第3章过程论述 (3)3.1 信号采集 (3)3.1.1 温度传感器 (3)3.1.2 湿度传感器 (3)结论 (4)致谢 (5)参考文献 (6)附录A (7)第1章绪论1.1 课题背景在嵌入式开发中,把操作系统移植到开发板是进行嵌入式应用开发的前提和基础。
基于ARM9的LINUX操作系统移植Transplantation of Linux Operation System Based on ARM9摘要随着电子技术的不断更新,嵌入式已经涉及到各行各业了,在智能家电,数字移动终端等这些行业嵌入式软件开发的需求下,嵌入式集成开发环境已经成为目前嵌入式系统发展的趋势。
Linux作为优秀的开源操作系统软件被广泛应用到嵌入式操作系统中,它的实用性,可移植性,支持大容量的内存,MMU(微控制器)和I/O 系统等得到了体现。
本次设计主要研究了嵌入式Linux系统从PC机向开发板上移植的过程,硬件平台是基于CPU:三星S3C2440A,采用ARM920T 内核,主频400MHZ。
本文介绍了嵌入式系统的概念和现状以及嵌入式系统的开发模式,介绍了内核启动流程,对Bootloader启动进行了分析,移植了Linux内核,移植了文件系统yaffs以及自己的LED程序移植。
以上烧写的文件均是官网下载的,这样可以使得Linux在开发板上更流畅的运行。
本次设计成功的将嵌入式Linux系统移植到了FL2440开发板,文件系统运行正常,可通过触摸屏进行操作,LED程序调试成功,并在开发板上得到了运行结果。
对以后Linux开发打下了很好的基础。
关键词:嵌入式系统Linux Bootloader 文件系统AbstractAlong with the continuous renewal of electronic technology, the development of embedded system has become the mainstream of science and technology, under the requirements of embedded software development in the intelligent home appliance, digital mobile industry, the embedded integrated development environment has become the trend of the development of the embedded system at present. Linux as excellent open source operating system software has been widely applied to embedded operating system,whose featares such of practical applicability, portability, supporting large capacity memory, MMU (microcontroller) and I/O system have been reflected.Mainly from the PC to transplant process the embedded Linux system are studied on the development board, hardware platform is based on CPU: samsung S3C2440A, adopted ARM920T kernel, dominant frequency 400 MHZ. This paper introduces the concept of embedded system and the status quo and development mode of the embedded system, the kernel boot process is introduced, the Bootloader startup was analyzed, and the transplantation of the Linux kernel, transplant yaffs file system as well as their own LED transplant program.The above writing files are the official website to download, so you can make the Linux more smoothly in the development board to run.The design successful porting embedded Linux system to FL2440 development board, file system running normal, can be operated by touch screen, LED program debugging is successful, and gets the results on the development board. For future study Linux development laid a good foundation.Key words: embedded system Linux Bootloader file system目录摘要 (I)Abstract (II)绪论 (1)1 嵌入式Linux系统构成和软件开发环境 (5)1.1嵌入式Linux系统的体系结构 (5)1.2 嵌入式Linux系统硬件平台 (5)1.2.1 S3C2440A处理器简介 (5)1.2.2 硬件系统整体结构 (7)1.3 嵌入式Linux开发软件平台建立 (12)1.3.1 ADS1.2 集成开发环境 (12)1.3.2 DNW串口调试软件 (12)2 嵌入式Linux的引导BootLoader程序 (14)2.1 BootLoader概述 (14)2.2 NAND Flash和NOR Flash的区别 (14)2.3 BootLoader移植 (15)3 Linux内核的编译、移植 (21)3.1 Linux2.6内核的新特性简介 (21)3.2 Linux内核启动流程 (21)3.3 内核移植的实现 (22)4 移植文件系统yaffs (24)4.1 yaffs文件系统简介 (24)4.2 yaffs文件系统移植的实现 (24)5 移植自己的程序 (30)5.1 移植开机画面 (30)5.2 移植LED程序 (31)结论 (33)致谢 (34)参考文献 (35)绪论研究的背景及意义随着计算机技术、通信技术以及Internet的飞速发展。
嵌入式系统已得到越来越广泛的应用。
以此同时,嵌入式系统也变得更加的复杂多样,嵌入式操作系统已经成为其中最重要的组成部分。
根据IEEE(国际电机工程师协会)的定义,嵌入式系统是“控制、监视或者辅助机器和设备运行的装置”(原文为:Devices Used to Control,Monitor or Assist the Operation of Equipment,Machinery or Plants )。
这主要是从应用上加以定义的,从定义之中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。
从历史性、本质性、普遍性出发,嵌入式系统可以定义为:“嵌入到对象体系中的专用计算机系统”。
“嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素,对象系统则是指嵌入式系统所嵌入的宿主系统。
不过上述定义并不能充分体现出嵌入式系统的精髓,目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
嵌入式系统是面向用户、面向产品、面向应用的,它必须与具体应用相结合才会具有生命力、才更具有优势。
嵌入式系统一般指非PC系统,它包括硬件和软件两部分。
硬件包括处理器、存储器及外设器件和I/O端口、图形控制器等。
软件部分包括操作系统软件(OS)(要求实时和多任务操作)和应用程序。
应用程序控制着系统的运作和行为,而操作系统控制着应用程序与硬件的交互作用。
嵌入式系统是将先进的半导体技术、计算机技、电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。
嵌入式系统同PC系统相比具有以下特点:(1)嵌入式系统功耗低、体积小、专用性强。
嵌入式系统与PC的最大不同就是CPU大多工作在特定用户群设计的系统中。
能够把PC中许多由电路板完成的任务集成在芯片内部,从而有利于嵌入式系统趋于小型化系统设计。
(2)为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储芯片或单片机本身中,而不是存储与磁盘等载体中。
(3)嵌入式系统的硬件和软件都必须高效率地设计,系统要精简。
操作系统一般和应用软件集成在一起。
(4)对软件代码质量要求很高,应该尽最大可能避免“死机”的发生。
(5)嵌入式系统开发需要专门的开发工具和开发环境。
嵌入式设备能得到用户的喜爱,最重要的原因就是它能提供非常友好的用户界面、图形界面和灵活的控制方式。
这就要求嵌入式软件设计者要在图形界面、多媒体技术上多下功夫(这样可以使客户更轻松方便的使用嵌入式产品)。
目前,市场上存在的众多的嵌入式操作系统,而在这些系统之中,兼有Linux和嵌入式优点的嵌入式Linux操作系统,凭借其在结构清晰、源代码开放性、裁剪性好,开发与使用均易实现等方面的优势,拥有巨大的市场前景和商业机会。
当前嵌入式Linux的一个热点应用就是将Linux内核移植到一些典型的微控制器和微处理器上,提供操作系统层面支持,以实现嵌入式系统用软件的开发。
系统地研究嵌入式Linux系统的移植有很大的现实意义。
首先,可以增加对S3C2440A以微处理器、内置外设以及系统扩展的了解,有助于将来的嵌入式学习。
其次,可以熟悉嵌入式软件系统移植的整个过程,对该过程有整体上的把握,对后续的嵌入式系统开发有指导性意义。
最后,通过该研究过程可以构建较新版的软件系统,实现更好的系统性能,最重要的是可以在实践基础上增加对系统移植理论的理解并积累丰富的系统移植经验,为后续的嵌入式应用开发打下坚实的基础。
国内外嵌入式系统的发展概况我国国内的嵌入式软件市场已处于整体启动阶段。
国内嵌入式软件市场未来的发展重点在于对应用范围的拓展。
随着Internet的发展以及Internet技术在信息家电、工业控制技术等领域的应用,嵌入式系统与Internet的结合将代表着嵌入式技术的真正未来。