嵌入式Linux软件设计实验报告.docVIP

  • 41
  • 0
  • 约7.79千字
  • 约 14页
  • 2018-01-08 发布于江西
  • 举报
嵌入式Linux软件设计实验报告.doc

嵌入式Linux软件设计实验报告 ——排序算法执行速度 班 级:XX 姓 名:XX 学 号:XX 同组组员:XX 指导老师:XX 时 间:XX 摘要 嵌入式操作系统EOS(Embedded OperatingSystem)是一种用途广泛的系统软件,过去它主要应用于工业控制和国防系统领域。EOS负责嵌入系统的全部软、硬件资源的分配、调度工作,控制协调并发活动;它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。Linux是一类Unix计算机操作系统的统称。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。Linux是一套免费使用和自由传播的类Unix操作系统。Linux的理念“自由、开源、团结互助”在该理念的指导下,经过二十多年的发展和完善,Linux的功能越来越完善。Linux的特点是开放源码,丰富的软件资源,广泛的软件开发者的支持,价格低廉,结构灵活,适用面广。可以适用于不同的CPU,支持多种体系结构, 如X86、ARM、MIPS、ALPHA、SPARC 等。提供完整的开发工具和SDK,同时提供PC 上的开发版本。 Linux系统的优势也是显而易见的。层次结构清晰且内核完全开放,具有强大的网络支持功能。Linux具备一整套工具链,容易自行建立嵌入式系统的开发环境和交叉运行环境,并且 可以跨越嵌入式系统开发中仿真工具的障碍,且Linux具有广泛的硬件支持特性。 一、 项目名称 排序算法在ARM Linux上执行速度的比较 二、 需求分析 实验要求:三种或三种以上排序算法在ARM Linux上执行速度的比较。例如可以随机产生1000个数,在排序过程开始前计下系统时间,结束后再计下系统时间,算出时间差即为算法执行时间。在本实验中,我们采用了四种排序算法,分别为直接插入排序、希尔排序、快速排序、简单选择。 三、项目分工 小组成员:xx xx 任务分工:在本次实验中,我主要负责利用所学的C语言和数据结构的知识,编写排序算法,和调试通过程序。经过两人的协作,在反复试验和纠错改错的努力下,顺利完成实验任务。 四、概要设计 在ARM机上执行排序算法,需要两个必要条件:硬件的和软件的。一在硬件上,保证虚拟机和超级终端ARM的通信;二是所编写的排序算法是可执行的,能够得出正确结果的。在Linux下编写主程序和函数库,然后编译连接成ARM可运行的二进制文件,最后把该二进制文件下载到超级终端上运行,查看运行结果是否正确。 软硬件流程图如图所示: .C源程序 预处理器 编译器 汇编器 连接器 可执行文件 GUN交叉编译工具链: Arm-linux-gcc 编译C程序(.c)或汇编程序(.s) 使用交叉编译工具编译一个程序的arm可执行程序: #arm-linux-gcc -Wall -o (生成arm程序的名字)(源程序名).c -c:只编译不链接,-o:编译且链接,-Wall:显示出错信息 读elf文件的文件头 #arm-linux-readelf –h 生成arm程序的名字 可得Machine: ARM 生成的文件为arm是超级终端上可执行的文件 同样的若用gcc –wall –o (生成的程序名)(源程序).c 读elf文件的文件头,可得Machine: 80X86 生成的的文件为二进制文件,可以在PC机上执行。 gcc的使用格式如下:$ gcc [options][filenames] 其中filenames为所要编译的程序源文件。 当使用gcc时,gcc会完成预处理、编译、汇编和连接。前三步分别生成目标文件,连 接时,把生成的目标文件链接成可执行文件。 gcc可以针对支持不同的源程序文件进行不同处理,文件格式以文件的后缀来识别。 五、详细设计 排序算法:计算机程序设计的一种重要操作,作用是将一些数据元素或者记录,用不同的算法按照一定的顺利(升序或逆序)排列。在这次实验中:在本实验中,我们采用了四种排序算法,分别为直接插入排序、希尔排序、快速排序、简单选择。下面先给出程序的设计思路和流程图,然后具体讲述每种算法的原理和实现的时间复杂度及具体的实现算法。 5.1 程序流程图 特别指出:这里的正序是指把随机排序已经排好的序列再次排序;逆序是指把生成的随机数逆向存储,再进行升序排序。 5.2实现算法 5.2.1 随机数的生成 思路:若直接用ran

文档评论(0)

1亿VIP精品文档

相关文档