基于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 完成,这段小程序,可以初始化必要的硬件设备,把内核需要的信息创建出来,并且这些有用的信息经相关机制可传递给内核,将软件和硬件系统的环境带到合适的状态。
基于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的结合将代表着嵌入式技术的真正未来。