IIAbstractWiththedevelopmentoftheinformationtechnology,embeddedsystemshasbeenbroadlyappliedineachfieldoffamlilyandindustry.Andtheincreasinglywiderangeofapplications,thecomplexityofembeddedsystemsisconstantlyincreasing.Now,theembeddedoperatingsystemhasbecomeoneofthemostimportantpartoftheembeddedsystem.Intheembeddedoperatingsystems,TheLinuxoperatingsystemhasbecomemoreandmoreattened,becauseofitsopensource,smallcore,goodperformance;what’smore,Linux2.6introducesmanynewfeaturesthatmakeitanexcellentandsuitableoperatingsystemforembeddedcomputing.Undoubtedly,theembeddedLinuxoperatingsystemwillbringlargeeconomicvalueandapplicationprospects.ThisthesisisaccomplishedbasedontheautomaticmeterreadingsystemforapowercompanyinNanjing,andthemaincontributionistointroducetransplantationoftheembeddedLinuxsystem,aswellasthedriverdevelopmentofcorrespondingperipheraldevice.ThispaperaccomplishthetransplantationoftheembeddedLinuxsystembasedonAT91SAM9260EK,andincludingbuildthedevelopmentplatform,buildtheembeddedcross-compileenvironment;Basedontheanalysisofthebootingandloadingprocess—BootLoaderoftheembeddedsystem,implementsthetransplantationofUbootontheplatform.AfterthedetailedanalysisofthekernelstructureandbootingprocessofLinuxsystem,accordingtotheterminalhardwareplatform,analyzetheprocessoftransplantationandcutoftheLinuxkernel.Inaccordancewiththeapplicationrequirements,weselecttheYAFFS2asourrootfilesyetem,anddetailedlyintroducetheprocessoftheimplementationoftheYAFFS2filesystem.Finally,developthedriversoftherelatedequipment,especiallytheLCD(UC1698U),improvetheoriginalwayofdirectaccessGPIOport,andcombiningtheGPIOandframebuffertodevelopthenewdriver.Theframebufferisthecachefordisplay,writedatatothecache,thecontrollerwillautomaticallyreadthedatafromthecacheanddisplay.ThedevelopmentofGUIbasedonQt/Embeddedneedthesupportofframebuffertechnology.ButforthetypeofLCD,thedisplaycontrollercannotautomaticallyreadthedatafromthecache,usethekerneltimertoupdatetheframebufferforreal-timedisplayanddeveloptheGUIoftestbasedonQt/Embedded.Keywords:embeddedLinuxsystem,ARM9,YAFFS2,driver,FrameBufferI摘要随着信息技术的不断发展,嵌入式系统已经广泛应用于工业和家庭的各个领域。其复杂性也随之不断增加,嵌入式操作系统成为了嵌入式系统中最重要的组成部分之一。在嵌入式操作系统中,Linux操作系统得到了越来越多的关注,Linux系统开源、具有精简的内核以及优异的性能。另外,Linux2.6包含许多新的特性,为其在嵌入式领域的应用提供了更多更好的支持,嵌入式Linux系统将会有巨大的市场价值以及应用前景。本文基于南京某电力公司自动抄表系统,对负荷控制管理终端平台进行了Linux系统移植以及对LCD等外围设备的驱动开发。本系统的CPU采用ATMEL公司的以ARM926T为内核的AT91SAM9260EK处理器。采用了基于2.6内核版本的嵌入式ARMLinux,最终完成基于ARM9的嵌入式Linux系统移植开发。具体包括搭建开发平台,建立嵌入式交叉编译环境;在分析嵌入式系统引导加载程序BootLoader的基础上,结合本目标板修改Uboot源码并进行Uboot的编译和移植;通过分析嵌入式Linux系统的内核结构和启动流程,实现了针对本目标板的内核源码修改、编译以及移植;同时按照应用需求,选择YAFFS2文件系统作为根文件系统,并给出根文件系统实现的过程;最后开发终端外围设备相应的驱动程序,重点围绕LCD(UC1698U)展开,改进原来直接读写GPIO口的驱动方式,采取直接读写GPIO和帧缓冲相结合的方式开发新的驱动程序。帧缓冲是一块显示缓存,通过向该缓存中写入数据,显示控制器就会自动的从中读取数据并显示出来,在LCD设备上基于Qt的图形用户界面的开发也需要帧缓冲技术的...