太原理工大学嵌入式系统实验报告_第1页
太原理工大学嵌入式系统实验报告_第2页
太原理工大学嵌入式系统实验报告_第3页
太原理工大学嵌入式系统实验报告_第4页
太原理工大学嵌入式系统实验报告_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

WordWord资料WordWord资料G◎d应打下火浮G◎TAIYUANUNIVEaSIIYOFTECHNOLOGY308201112016111ARM Skyeye2.熟悉交叉编译开发环境的搭建ARM-LinuxSkyeye ARM-LinuxLinuxSkyeye二、实验内容和原理PC SkyeyeARM-LinuxSMDK2410I-Cache♦:♦CPUS3C2410ARM920T 62.400MHzI-Cache16K,D-Cache16K♦32MB 62.400MHz实验软件介绍SkyEye OpenSourceSoftwareSkyEye LinuxWindows境,模拟常见的嵌入式计算机系统(这里假定“仿真”和“模拟”的SkyEyeuCLinuxuC/OS-IITCP/IPSkyEye CPUSkyEyeSkyEye SkyEyeSkyEye实的硬件环境相比还是有一定差别的。ARM-Linux ARM-LinuxARMSkyEyeARM主要仪器设备:a.PC:VMwareworkstation9.0Ubuntu10.04LTSskyeye-1.2.5_REL.tar.gzskyeye-testsuite-1.2.5.tar.bz2arm-linux-gcc-3.4.1.tar.bz2linux-2.6.14.tar.gzcpp-4.1_4.1.2-27ubuntu1_i386.debg++-4.1_4.1.2-27ubuntu1_i386.debgcc-4.1_4.1.2-27ubuntu1_i386.debgcc-4.1-base_4.1.2-27ubuntu1_i386.deblibstdc++6-4.1-dev_4.1.2-27ubuntu1_i386.deb四、操作方法与实验步骤VMwareworkstation8.0ubuntulOTypicalInstall ubuntuVMToolhostcomputergccgcc4.1 Skyeyegccubuntu10.04gcccpp-4.1_4.1.2-27ubuntu1_i386.debg++-4.1_4.1.2-27ubuntu1_i386.debgcc-4.1_4.1.2-27ubuntu1_i386.debgcc-4.1-base_4.1.2-27ubuntu1_i386.deblibstdc++6-4.1-dev_4.1.2-27ubuntu1_i386.debsudodpkg-i*.deb gcc4.1.gccupdateSKyeyeSkyeye安装交叉编译环境arm-gcc /usr/local/arm/3.4.1/bin7.cdlinux-2.6.14viMakefile Makefilecparch/arm/configs/smdk2410_defconfig.sodumakesmdk2410_defconfig/Linux裁剪/定制内核sodumakemenuconfig设置内核启动参数initrdROM filesystemext2makevmlinux arm-linux了验证skeeye-testsuite-1.2.5/linux/s3c2410/s3c2410-2.6.14 skyeye.confinitrd.imglinux-2.6.14skyeye-evmlinuxARMLinuxFileEditViewTerminalHelpStartingpid19,console/dev/console:'/etc/init.d/rcSeth0:usinghalf-duplexIBBase-T(RJ-451Welcometo,.Groot@ubuntu:/mnt/hgfs/^A^/fils/skyeye-testsuite-1.2.5/Linux/s3c2410/BusyBoxvl.4.1(2007-02-1001:19:06CST)Built-inshell(ash)Enter'help1foralistofbuilt-incommands./bin/ash:can'taccesstty;jobcontrolturnedoffARMLinuxforSkyeyeForfurtherinformationpleasecheck:/BusyBoxvl.4.1(2007-02-1SSl:19:0&CST)Built-inshell(ash)Enter'help'foralistofbuilt-incommands./bin/ash:can'taccesstty;jobcontrolturnedoffIIII//\/\\ARMLinuxforSkyeyeForfurtherinformationpleasecheckhttp:///「I二\门门\一“7,•命root@ubuntu:/home/yewanjaly/src/linux-2.6.14i 门二*「ii_iii_iii_ii/\ h_i_ii」\_\\j\jFileEditViewTerminalHelpTCPrenoregistered|TCPbicregisteredNET:Registeredprotocolfamily1RAMDISK:ext2filesystemfoundatblockQRAMDISK:Loading2S48KiB[1disk]intoramdisk...done.VFS:Mountedroot(ext2filesystem).initstarted:BusyBoxvl.4.1(20S7-02-1B01:19:06CST}multi-callbinaryStartingpid17rconsole/dev/console:'/etc/init.d/rcS'ifconfig:SIOCSIFADDR:NosuchdeviceWelcometoLINUX2.熟悉修initrd3.熟悉利C4.将自己C5.回答后面遇到的4个问题1busyboxARM-LinuxinitrdinitrdLinux的目录和关键LinuxinitLinux挂载分Linux/etc/fstab包括了许多的binLinuxBusyBox BusyBoxlinuxBusyBoxIscatecho等等,还包含了grepfindmounttelnet。GNUfileutils,shellutilsBusyBoxa.PC实验一搭建好的嵌入式虚拟平台busybox-1.19.4.tar.bz2helloword.c四、操作方法与实验步骤busyboxMakefilearchARCH ?=armCROSS_COMPILE?=/usr/local/3.4.1/bin/arm-linux-makemenuconfigc.makemakeinstallbusybox chmod4755./_install/bin/busyboxbusybox$susu:mustbesuidtoworkproperlybusyboxinitrd.img创建映像文件并挂到initrd目录将添加busybox到此映像文件busybox arm-linux/lib建立必要的文件helloworld.c home/usr/local/arm/3.4.1/bin/arm-linuc-gcchelloworld.c-ohelloworldcphelloworldinitrd/home/,initrd.imgcd..umountinitrdinitrd.imginitrd.img linux-2.6.14 skyeye-evmlinuxSkyeye home ./helloworldHelloARMWorldbusyboxmake1.5 lll-L^LULJ._LUIIJ.Lt:.Umiscutils/ionice.c:Infunction-ioprio_set':miscutils/ionice.c:23:error:LSYS_ioprio_set'undeclared(firstuseinthisfunction)miscutils/ionice.c:23:error:(Eachundeclaredidentifierisreportedonlyoncemiscutils/ionice.c:23:error:foreachfunctionitappearsin.)miscutils/ionice.c:Infunction-loprioget':miscutils/ionice.c:28:error:LSYS_ioprioget'undeclared(firstuseinthisfunction)make[l]:***[miscutils/ionice.o]Error1make:***[miscutils]Error2root@uibuntu:/home/yewanjaly/busybox/busybox-1.19.4#

makemenuconfigBusyboxSetting >MiscellaneousUtilities--->[]ionicemake2.miscutils/ubitools.c:186:error:UBIDYNAMICVOLUME'undeclared(firstuseinthisfunction)miscutils/ub^tools.c:195:)miscutils/ub^tools.c:17Q:miscuti-Ls/Libi_toa_Ls.cmiscutils/ub^tools.c:195:)miscutils/ub^tools.c:17Q:miscuti-Ls/Libi_toa_Ls.c:291:error:UBIIOCMKVOL'undeclared(firstuseinthisfunctionwarning:unusedvariable'req'error:UBIIOCRMVOL'undeclared(firstuseinthisfunctionmiscutils/ub^tools.c:294:(niscutils/ub^tools.c:214:)miscutils/ubitoals.c:294:miscutils/ubitoals.c:222:error:storagesizeof'req'isn'tknownerror:UBIIOCRSVOL'undeclaredffirstuseinwarning:unusedvariable'req'error:"UBIIOCVOLUP'undeclared(firstuseinthisfunctionthisfunctionniake[l]:***[miscutils/ub^tools.o]Error1make:***[miscutils]Error2mtdincludemtdubi-user.hmtdcp/home/yewanjaly/busybox/ubi-user.hinclude/mtd(ubi-user.h)make3.出现如下错误networking/interface.c:806:error:ARPHRDINFINIBAND'undeclaredhere(notinafunction)networking/interface.c:806:error:initializerelementisnotconstantnetworking/interface.c:806:error:[nearinitializationfor'ib_hwtype.type')make[l]:***[networkifig/interface.o]Error1makE:***[n目“"king]Error21makemenuconfigBusyboxSettings--->BusyboxLibraryTuning-->[]SupportinfinibandHWmakeinclude/linux/ifarp.”hARPHRD」NFINIBAND 32 networking/interface.c#defineARPHRD_INIFINIBAND32、' '■T・ #defineARPHR口二工EEE1394 24 /* IEEE1394IPv4 - RFC 2734#defineARPHR^EU164 27 /* EUI-64#defineARPHR口二工NF工N工BAN口32 /* InfiniBandubi_toois,cXif_arp.h翼interfacesX1S/1998-AndiKleen.Useinterfacelistprimitives.20001808-BerndEckenfels,PatchfromRHforsettingmtu(defaultAFwaswrong)/include"'Libbb.h"#include"inetcotnmon.h"#include<net/if.h>#include<net/if_arp.h>#defineARPHRDINFINIBAMM32#ifdefHAVENETETHERNET_H#include<net/ethernet.h>#working/udhcp/dhcpc.c:839:warning:(nearinitializationtortiLter_instrL8J'Jnetworking/udhcp/dhcpc.c:839:warning:excesselementsinstructinitializernetworking/udhcp/dhcpc.c:839:warning:(nearinitializationfor^filter^nstrfB]')networking/udhcp/dhcpc.c:821:error:storagesizeof'filter_instr'isn'tknownnetworking/udhcp/dhcpc.c:844:error:initializerelementisnotconstantnetworking/udhcp/dhcpc.c:844:error:(nearinitializationfor'filter_prog.filter')networking/udhcp/dhcpc.c:821:warning:unusedvariableLfilterinstr1make[l]|:***[networking/udhcp/dhcpc.o]Error1make:***[networking/udhcp]Error2vi/usr/local/arm/3.4.1/arm-linux/sys-include/linux/filter.h#include<linux/types.h>ubitools.cMif_arp.h篝interfaces篝filter.hX/**LinuxSocketFilterDataStructures*/#include<linux/types.h>#ifndef_LINUX_FILTER_H_#define3LINLOILTER2H2make5./usr/local/ann/3.4.1/^ib/gcc/arm-liniix/3.4.1/-../arm-linux/sys-include/linux/ext2_fs_sb.h:49:error:parseerrorbefore"u32M/usr/local/artn/3.4.l/lib/gcc/arm-linux/3.4.1/../■./■■/../arm-linux/sys-include/linux/ext2_fs_5b.h:51:error:parseerrorbeforetoken/usr/Tocal/ar(n/3.4.1/lib/gcc/ann-liniix/3.4.1/.■/../arm-linux/sys-include/linux/ext2fssb.h:56:error:parseerrorbeforetokenmake[l]:***[util-linux/mkfsextZ.o]Error1make:***[util-liniix]Error2makemenuconfigLinuxSystemUtilities--->[]mkfs_ext2

IL 」 3产产j・』[] upportIL 」 3产产j・』[] upport[] upport[] upport产] upport产]indfs产]lock产]reeramdisk[*]sckminixSUNdisklabelsBSDdisklabelsGPTdisklabelsexpertmode]mkfsext2[*]mfs_minix<Exit> <Help>make6./usr/local/arm/3.4.l/lib/gcc/ann-linux/3.4.1//arm-linux/sys-include/linux/fd.h:36B:error:parseerrorbeforetokennake[l]:***[util-ILinux/mkfsvfat.o]Error1nake:***[util-linux]Error2makemenuconfigLinuxSystemUtilities--->[]mkfs_vfatmake./_instafL//sbin/watchdog->../bin/busybox./_instaH//sbin/zcip->../bin/busyboxYouwillprobablyneedtomakeyourbusyboxbinarysetuidroottoensureallconfiguredappletswillworkproperly.root@ubuntu:/home/yewanjaly/busybox/busybox-1.19.4#/usr/local/arm/3.4.1/bin/ann-linux-readelf-d./_install/bin/busyboxDynamicsegmentatoffset9xfl764contains21entries:TagType Name/Value0X00000991 (NEEDED1 Shared library: [iibm.so.6]0x00000001 (NEE口ED) Shared library: [Iibc.so.6]0X0000000C (INIT) 0xd4ccTCP:Hashtablesconfigured(established2948bindTCPreno「cgi弓TCPbicregisteredNET:Registeredprotocolfamily1RAMDISK:ext2filesystemfoundatblock0RAHDISK:Loading8192K1B[1disk]intoramdisk...VFS:Mountedroot(ext2filesystem).ifconfig:SIOCSIFADDR:Nosuchdevice/bin/ash:can'taccesstty;jobcontrolturnedoff/#Isbin hellcworld lib procdev helloworld.c linuxrc rootetc home Lost+found sbin/#2048)done.tmp

varbinhelloweridlibproctmpdevhelloworld.clinuxrcrootvaretchomelost+foundsbinifconfig:SIOCSIFADDR:Nosuchdevice/bin/ash:can'taccesstty;jobcontrolturnedoff/#Is/#cdhome/home#Ishelloworld/home#./helloworldHelloARMWorid!/home#busyboxmakeARM-LinuxNFSSkyEye NFSARM-LinuxCS8900aNFSServerARM-LinuxNFSServer、写以及执行操作正常说明网卡驱动程序添加成功。NFS SUNMicrosystems1984 NFSNFS问远端系统上的文件。NFS主要仪器设备:a.PC:VMwareworkstation9.0Ubuntu10.04LTSskyeye-1.2.5_REL.tar.gzskyeye-testsuite-1.2.5.tar.bz2arm-linux-gcc-3.4.1.tar.bz2linux-2.6.14.tar.gzcpp-4.1_4.1.2-27ubuntu1_i386.debg++-4.1_4.1.2-27ubuntu1_i386.debgcc-4.1_4.1.2-27ubuntu1_i386.debgcc-4.1-base_4.1.2-27ubuntu1_i386.deblibstdc++6-4.1-dev_4.1.2-27ubuntu1_i386.debbusybox-1.19.4.tar.bz2四、操作方法与实验步骤1、内核的编译过程已在前面的实验中进行过,这里就不在cs8900( ) ,NFS复制cs8900驱动到drivers/net/arm目录#cpcs8900.cdrivers/net/arm#cpcs8900.hdrivers/net/arm修改drivers/net/arm目录下的Kconfig文件drivers/net/arm Makefile修改arch/arm/mach-s3c2410/mach-smdk2410.csmdk2410.h在include/asm-arm/arch-s3c2410目录下创建文件smdk2410.hhttp://skyeye.wiki.sourceforge.het/Linux/makemenuconfig设置内核启动参数设置CS8900的支持DeviceDrivers--->Networkdevicesupport--->Ethernet(10or100Mbit)--->[*]CS8900supportinitrd设置NFS的支持Filesystems--->NetworkFileSystems--->[*]NFSfilesystemsupport[*]ProvideNFSv3clientsupportROMfilesystemext2make编译完成后会有个vmlinux在当前目录下,这就是我们要的arm-linuxinitrd.img3 ubuntuNFSServer在arm-linux的宿主机里配置NFSServer编辑文件/etc/exports,内容如下(具体需ip重启nfsserver注:可用showmount-e来验证你的配置ipskyeyearm-linux,ipNFS挂接

五、实验结果与分析Packagenfs-commonisnotconfiguredyet.nfs-kernel-serverdependsonlibgssgluel;however:Packagelibgssgluelisnotinstalled.nfs-kernel-serverdependsonlibnfsidmap2;howHve「:Packagelibnfsid(nap2isnotinstalled.nfs-kernel-serverdependsonlibrpcsecgss3;however:Packagelibrpcsecgss3isnotinstalled.dpkg:errorprocessingnfs-kernel-server(--install):dependencyproblems-leavingunconfiguredProcessingtriggersforureadahead...lurpaHlahpadwiIIIIhprpnrnfi1pHnnnpvtrphnnt Iroot^uDuntu:-#/usr/sbin/exportfs-rexportfs:/etc/exports[1]:Neither'subtreecheck'or'nosubtreecheck'specifiedforexport"^i/test™.Assumingdefaultbehaviour('nosubtreecheck'1.NOTE:thisdefaulthaschangedsincenfs-utilsversionl.a.xrootfaubuntu:-#/etc/init.d/nfs-kernel-serverrestartStoppingNFSkerneldaemon [OK]UnexportingdirectoriesforNFSkerneldaemon... [OK]ExportingdirectoriesforNFSkerneldaemon...exportfs:/etc/exports[1]:Neither'subtreecheck'or'nosubtreecheck'specifiedforexport"*:/test''.Assumingdefaultbehaviour('nosubtreecheck'1.NOTE:thisdefaulthaschangedsincenfs-utilsversionl.a.x I-13QQskyeye.conf(/home/yewanjaly/src/linux-2.6.14)-gedit ?FileEditViewSearchToolsDocumentsHelp।,OpentSave®-Undo,\skyeyeTonfXskyeyeconfigfileforS3C241BXcpu:arm929tmach:s3c2410xphysicalmemorysize=0x00800000size=0x0080S000,file=./initrd.imgsize=9x01000000membank:map=M,type=RW,addr=0xc0000000,membank:map=M,type=RW,addr=0xcS800000,membank:map=M,type=RW,addr=0xcl000000size=0x00800000size=0x0080S000,file=./initrd.imgsize=9x01000000allperipheralsI/Omappingareamembank:map=Ltype=RW,addr=0x48000000,size=0x20000000membank:map=Irtype=RWraddr=Qxl9000300rsize=0xQ0000020^et:type=cs8900a,base=0xl9900300rsize=0x20,int=9,mac=0:4:3:2:l:f,ethmod=tuntapRhostip=ie.0.0.1led:type=s3c2410x,mod=gtkdbct:state=on$OOroat(a)ubuntu:〜FileEditViewTerminalHelp|root(aubuntu:-#pingIB.0.0.2-c2RING(]56(84)bytesofdata.64bytesfrom:icmp_seq=lttl=64time=2.61ms64bytesfrom:icmp_seq=2ttl=64time=1.16ms---IB.0.0.2pingstatistics--2packetstransmitted,2received,日常packetloss,timeIBS1msrttBin/avg/max/mdev=1..160/1.885/2.610/0.725msrootfaubuntu:-#PING(1B.0.0.1):56databytes64bytesfromW.B.e.l:seq=flttl=64time=0.039ms64bytesfromW.0.0.I:seq=lttl=64timers.S18ms——pingstatistics——2packetstransmittedp2packetsreceived,packetlossround-tripmin/avg/max=O.01B/0.028/0.039ms/#ping/#cdtmp/tmp#Ishelloworld/tmp#./helloworldHelloARMWorld!/tmp#I1.ubootkernelsystemrootfs、操作方法与实验步骤1. SDwindowswindows SD SD 10Muboot SDuboot linux ubuntuSD(1)打开软件2SD3)右键,选择【删除4)右键,选择【创建5 10MFAT32

+ParagonPartitionManager服务器版口回冈常规⑥查看鱼)硬盘鱼)分区W)操作⑥)帮助也)口回冈司.掾4 0®圾®目烧1-1导磁盘口(TOCWD1600AAJS-08FE等主C:电犷展*■口通逻辑D:修逻辑E:曲主,自由磁盘11.9GE他主,自由盘展由磁扩自FAT16FAT32HTFSLiniiKExt£ LinwtSwap未格式化LinuitExt3 HFFS 无效SDC:HTFSD:HTFSE:NTFS祚i”rF5格式化主分区1.广(磁盘1)E0卷名蛤 ||系统类型1-1导磁盘口(TOCWD1600AAJS-08FE等主C:电犷展*■口通逻辑D:修逻辑E:曲主,自由磁盘11.9GE他主,自由盘展由磁扩自FAT16FAT32HTFSLiniiKExt£ LinwtSwap未格式化LinuitExt3 HFFS 无效SDC:HTFSD:HTFSE:NTFS祚i”rF5格式化主分区1.广(磁盘1)E0卷名蛤 ||系统类型(T) ||FAT32表面测试区)<HI><哥航结0IJfiCID1EOOA<TS-08P<多主c:m多拉晨*:aiSttn:.生逻辑E-,主,自由班弗It9GB,主,目由才主•S展由磁r自FKT16 -LinuxExt2LinwSir«p 耒格式化椁T鸵 | LinuxExt3HPFS 无力ms |—免*imdg 其它卷 类S3[黑标 大小I巴则I自由卷标丁酒拓IJ&院(Q).. Alt+»装数®[自由] 70MB集最选定的分区分配盘符并记好,按 【确定】磁盘口fflDC*主C:B扩展*:学逻疆D:磁盘口fflDC*主C:B扩展*:学逻疆D:9逻辑E:力主,目由磁盘11.9GB多主,自由*主*:£展由磁扩自FAT32HT^=LinuxEx12 Linux Swap 未格式化一LinuxExt3 KFFS 无效ReistrFS |・ 其它磁盘0meTO1600AAJS-03PSAD)144GB常规⑥)笆香⑥硬盘⑥分区口操作①帮助如磁=i-0CttDCWD1600WS-06FSB-DEGI常规⑥)笆香⑥硬盘⑥分区口操作①帮助如磁=i-0CttDCWD1600WS-06FSB-DEGI+:辑辑髓9之3主r:l寺主&主.自由FAT16 | Limu^Ext2 Lin,^Swap未格式化FAT32 J LinuxExt3 KFFS 无效NTFS RtissrFS 其它*FAT32盘展由磁扩自要获得帮助,话按Fl&1.9要获得帮助,话按Fl选择【应用】,让之前所有操作真正执行5Para&onPartitionlanager服务看版卷类型1系统|大小|已使用| I自由卷标 |活百学收 主 [自由1 7.8MB圣*: 主 FAT32 1.9GB 0b1.9GB 否±i要获得然助,请按FlWordWord资料3.使用sdfuse SD3.使用sdfuse SDSD sdfuse (kernel,system,u-boot)Word资料2.ubootSDubootwindows1SD FAT32 SD2)打开烧写软件(以管理员身份moviNAND_Fusing_Tool_v2.0|jIImoviNAHDFueing^TODO:<Filed**TODO:KComp&TiynSDu-boot4START

sdfuseSDSDDNW0.6CCONNECTetcv210_i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论