




已阅读5页,还剩85页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式软件开发导论,同济大学软件学院2006,5.操作系统开发,目录,介绍PlatformBuilder用户界面UI目录(Catalog)and特性(Feature)配置平台平台创建流程Build系统定制目录Catalog,目录,介绍PlatformBuilder用户界面UI目录(Catalog)and特性(Feature)配置平台平台创建流程Build系统定制目录Catalog,介绍PlatformBuilder,一个定制基于WindowsCE的平台定制集成开发环境(IDE)提供所有与基于WindowsCE平台设计、创建、编译、测试和调试相关的开发工具该集成开发环境提供统一的与平台和项目相关的工作空间,PB能做什么?(1),平台向导帮助你创建一个新的平台(platform)BSP向导帮助你创建新的板级支持包(BSP)目录(Catalog)显示用户定制的平台OS属性列表依赖性自动监测(Automateddependencychecking)可以确保与平台相关的所有属性都会被包含在OS镜像中导出向导可以导出目录中的属性给其它PB使用者基本配置(Baseconfigurations)是创建用户特定定制OS的起点,PB能做什么?(2),WindowsCE测试套件(TestKit)提供了整套驱动测试工具内核调试器可以调试定制的OS镜像,同时提供给用户镜像运行状况的信息应用调试器可以调试在特定OS上运行的应用程序远程工具可以调试基于WindowsCE的目标机上运行任务,并获取相关信息模拟器通过模拟硬件可以加快和简化开发过程,使用户可以在宿主机上完成平台和应用程序的初步开发SDK导出向导可以为用户导出一个特定的软件支持包(softwaredevelopmentkitSDK).,平台向导(PlatformWizard),平台向导帮助你一步步的创建一个基于WindowsCE的平台,使用平台向导的4步,选择一个安装的BSP为你的设备选择一个基本平台配置为你的设备选择配置变量为你的平台选择其它的属性,PlatformBuilder用户界面,TextEditor,WorkspaceWindow,SearchText,ConnectivityDeviceName,OutputWindows,Debugtoolstatusindicators,Multipleviewsoftheworkspace,BuildConfiguration,目录(Catalog),包含BSPs,驱动,OS内核配置和平台管理器等,在目录中出现的所有项目包含了你所设计的CE平台所使用到的属性,BSP:BoardSupportPackagesCoreOS:includesheadlessdevicesanddisplay-baseddevices:ApplicationsandServicesDevelopmentApplications-EndUserCommunicationServicesandNetworkingCoreOSServicesFileSystemsandDataStoreFontsInternationalInternetClientServicesMultimediaTechnologiesSecurityShellandUserInterfaceDeviceDriversPlatformManager,目录(Catalog)项,属性组(FeatureGroup)和属性(Feature),属性组定义了通用的属性而没有定义具体的实现。属性组在你选择一个实现的时候才被解析,这个实现决定了它的具体功能。一个属性是OS组件的任何一个逻辑群,Feature图标,Feature图标(2),Feature选项,显示备选feature信息.,Feature依赖关系,显示备选feature的依赖关系,挑战,了解尽可能多的features,挑战,丰富的经验和知识没有这些不能设计合理的平台WindowsCE上可以使用简体中文?WindowsCE支不支持VBScript?关于属性的功能可参照:有关WindowsCE.NET-CatalogFeatures,PlatformSetting,使你可以浏览和修改关于整个平台的每个属性的选项菜单:Platform-Settings,BuildOptions(1),EnableCETargetControlSupport选择该选项可以在启动时使能目标控制功能(targetcontrolsupport).选择这一项同时也打开了内核无关传输层(KernelIndependentTransportLayerKITL).EnableEbootSpaceinMemory选择该选项可以在Config.bib文件中预留内存空间,允许在启动过程中操作系统可以读取bootloader存储的数据.EnableEventTrackingduringBoot选择该选项可以开启事件跟踪子系统(event-trackingsubsystem).EnableFullKernelMode选择该选项可使线程运行在内核模式,选择该模式会使系统较脆弱,但是性能会有所提高.EnableImageforFlash选择该选项可以使编译好的镜像下载后被烧写的到Flash中,BuildOptions(2),EnableKernelDebugger允许调试器建立宿主机和目标机间的链接和传送调试信息EnableKITL要建立宿主机和目标机间的通讯就必须选择该选项,取消该项也会同时取消被选定的“EnableCETargetControlSupport”选项EnableProfiling选择该选项可以将WindowsCE的有关内核的信息以日志的形式装入平台镜像中EnableShipBuild这是一个有条件编译的标志,设置它表示OS会提供详细的调试信息来帮助调试.FlushEventstoReleaseDirectory选择该选项将事件放入release目录,同时开启事件跟踪,平台配置文件,PlatformBuilder使用两类配置文件:原码配置文件Build工具使用原码配置文件去build模块、属性,同时为你的OS镜像build原码镜像配置文件MakeBinaryImage工具调用相应的工具,这些工具使用镜像配置文件来产生OS镜像,原码配置文件,镜像配置文件,参数视图,配置文件:.BIB文件,表明应该被包含在镜像中的模块和组件包含4个部分的文本文件:文件部分:为静态数据文件预留的内存模块部分:指定被装载到内存中的目标模块,;NamePathMemoryType-Tahoma.ttf$(_FLATRELEASEDIR)Tahoma.ttfNKSHU,Taskman.exe$(_FLATRELEASEDIR)Taskman.exeNK,配置文件:.BIB文件,内存部分定义平台的内存信息划分物理内存的数据存储和程序存储部分配置部分不是必须的用来设置属性等,NameStartaddressSize(bytes)Type-NK8C80000000800000RAMIMAGERAM8C050000007AFFFFRAM,配置文件:.REG文件,定义默认的注册设置COMMON.REG,IE.REG,WCEAPPS.REG,WCESHELL.REG:为WindowsCE模块定义注册设置PLATFORM.REG:与平台相关的注册设置,如驱动入口等PROJECT.REG:定义与你的工程相关的注册设置,HKEY_LOCAL_MACHINEinit“Launch10”=“shell.exe”“Launch20”=“device.exe”,配置文件:.DAT文件,定义镜像的文件夹结构COMMON.DAT,IE.DAT,WCEAPPS.DAT,WCESHELL.DATPLATFORM.DATPROJECT.DAT例子:,Root:-Directory(“ProgramFiles”)Directory(“ProgramFiles”):-Directory(“MyProjects”)Root:-Directory(“MyDocuments”)Directory(“MyDocuments”):-File(“MyFile.doc”,“WindowsMyfile.doc”),配置文件:.DB文件,定义默认的镜像数据库COMMON.DB,WCEAPPS.DB,WCESHELL.DB这些.DB文件是与Common,Wceapps,andWceshell模块相关的数据库PLATFORM.DB该文件包含特定平台的默认数据库PROJECT.DB该文件特定工程的默认数据库,产生镜像,整合release文件夹中的文件来生成WindowsCE镜像过程整合配置文件:所有的.bib文件到CE.BIB所有的.reg文件到REGINIT.INI所有的.dat文件到INITOBJ.DAT所有的.db文件到INITDB.INI压缩reginit.ini到二进制注册文件(DEFAULT.FDF)由于语言的适配,替换.exeand.dll中的资源forlanguageadaptation生成WindowsCE镜像(NK.BIN),Build的几个阶段,Sysgen阶段FeatureBuild阶段ReleaseCopy阶段MakeImage阶段,当你在IDE的Biuld菜单下选择BuildPlatform命令时,系统创建平台依次经历了以下4个过程:,Sysgen阶段任务,链接相应的静态库到模块MakeSDK过滤系统头文件,产生只包含为声明被平台导出的函数的头文件.为系统模块产生输入库构建板级支持包(BSP),SystemGeneration,Completeheaderandsourcecodefiles,Completesystemlibraries,Moduledefinitions(.def),Cesysgen.bat,System-specificheaderfiles,Linkedlibraries,Specific.deffiles,SYSGEN.BAT,FeatureBuild阶段任务,所有的用户属性,包括PB工程文件(.pbp),dirs文件,源文件,makefiles(.mak)被编译和创建,ReleaseCopy阶段任务,拷贝所有用户生成OS镜像所需的文件到release目录下,在Sysgen阶段生成的模块和文件首先被拷贝,接着是FeatureBuild阶段生成的模块和文件.,MakeImage阶段任务,Rrelease目录中的文件被整合的二进制镜像文件Nk.bin中.这一阶段对应Build菜单下的MakeImage命令,Build过程,COMMONDATASYNCDCOMDIRECTXIERDPSCRIPTSERVERSWCEAPPSFEWCESHELLFE,.cesysgenddk.cesysgenoak.cesysgensdktarget,files,Step1.SystemGeneration,Step2.Build,Step3.BuildingtheReleaseDirectory,Step4.MakinganImage,NK.BIN,.platform.target,files,%_FLATRELEASEDIR%,Build结果,nk.bin:WindowsCE二进制镜像数据格式运行时必须首先装载到内存中.由数据段和代码段组成nk.nb0:二进制数据文件格式能够被转载到Flash中可以以XIP模式运行,XIP介绍,ExecuteInPlace的简称程序的执行可以直接在ROM中,而不是必须得先装载到RAM中被NORflash类型的闪存支持,如何解决Build中的错误,查看Output窗口NoenoughharddiskspaceCompile&linkerror检查WINCE420根目录下的Build.log&Build.err文件详细的输出信息,Windows编程经验和知识是你解决问题的关键,解释BuildErrors,Sysgen阶段的错误Causedbymissingfiles,missingconfigurationoftheoperatingsystemfeatures,andapplicationsbuiltduringtheSysgenphaseModulebuild阶段的错误CompilationerrorsorunresolvedlinkerrorsBuildingthereleasedirectory阶段的错误FilecopyerrorsMakinganimage阶段的错误Romimage.exefailedinCE.BIBRomimage.exefailedinreginit.iniWarning:Imageexceeds,作业,阅读在线文档“CEPCHow-toTopics”和“Tutorial:UsingPlatformBuilderwithaCEPC”,x86硬件平台上下载、运行自己的一个WindowsCE提示:制作wince的启动盘和配置IP地址用cepcBSP创建你的WinCE用你的启动盘启动系统通过TCP/IP链接、下载,目录,介绍PlatformBuilder用户界面UI目录(Catalog)and特性(Feature)配置平台平台创建流程Build系统定制目录Catalog,应用程序开发回顾,平台创建流程,得到特定软件开发板(specifiedSoftwareDevelopmentBoardSDB)的BSP用PlatformBuilder定制平台通过SDB下载、调试和运行平台为你的平台构建发布版系统,第一步:获得BSP,MicrosoftCEPC第三方OEMsMotorolaDragonballAdvantech7230生成自己的BSP后面讨论,从哪获得BSP?,安装和使用BSP,如果BSP是以MSI文件提供,象其它的软件那样安装它如果BSP是以源文件的形式提供,在PB中添加相应的.CEC文件注意:你必须首先在PB中安装了相应CPU的支持,演示:安装和使用MotorolaDragonBallMXLBSP,第二步:定制平台,在Microsoft提供的模板中选择一个,在它的基础上进行修改从头定制,HLBaseandIABase,HL意思headless,表示该OS没有图形用户界面GUI如果选择IABase,OS包含GUI,第三步:通过SDB下载、调试和运行平台,获得EbootorSboot配置网络配置串行调试接口(可选)配置PlatformBuilder链接下载OS镜像到板子,常规步骤:,获得EbootorSboot,Bootloader通常做为BSP的一部分由OEMs提供.bootloader的目的是装载OS镜像到内存中,然后跳到OS启动程序Eboot:EthernetBootloaderSboot:SerialBootloader通常在release版中被除去,各种Bootloader,FlashintoflashRomUsebootfloppydiskUseCFcard,唯一的目的:下载OS镜像,为串口配置网络,只插串口链接线缺点:太慢,为以太网配置网络,用Hub,为以太网配置网络,使用独立的网络链接,配置串行调试接口,插RS232串口适配器到ADS板和你主机上默认的COM口.选择StartMenuProgramsAccessoriesHyperterminalHyperterminal去激活一个Hyperterm窗口,超级终端,配置PB链接,从Target-ConfigureRemoteConnection,配置PB链接,Eboot会向LAN发送广播包,PB接收和显示设备ID,下载OS镜像到板子,在PB中点击TargetDownload/Initialize.,在设备的屏幕上你会看到,我们到哪了?,Gethardware&BSPfromOEMs,Needplatformcustomization?,Getplatform&SDKfromOEMs,CustomizeyourWinCEplatform,ExportyourSDK,Coding&Testing,ReleasetoManufacture,目录,介绍PlatformBuilder用户界面UI目录(Catalog)and特性(Feature)配置平台平台创建流程Build系统定制目录Catalog,PB目录结构,环境变量,%_WINCEROOT%-WindowsCE安装的根目录通常为C:WINCE500%_PUBLICROOT%-%_WINCEROOT%PUBLIC%_PLATROOT%-%_WINCEROOT%Platform其它在build窗口的命令提示符中使用set可以查看当前的环境变量,包含与特定硬件平台相关的BSP文件定位在以下目录%_WINCEROOT%Platform包含以下子目录每一个目录用于描述某一特定WindowsCE平台的应用每一目录包含一个dirs文件和至少一个特定BSP的批处理文件将你与该特定硬件平台相关的文件放入对应目录,Platform目录,Public目录,包含与平台无关的组件和配置设置定位在以下目录%_WINCEROOT%Public包含以下子目录:模块、组件子目录Common,Wceshellfe,Wceappsfe,IE,Servers相关配置子目录-CEBASE,SDK目录,定位在以下目录%_WINCEROOT%SDK包含支持PlatformBuilder的工具ProcessorcompilersDevelopmenttoolsMiscellaneousutilities,Others目录,定位在以下目录%_WINCEROOT%OTHERS包括以下子目录:ATL:包含调试用的ATL头文件,库和原码等DOTNET:包含.NET可用的各处理器的二进制文件和portable.NETCompactFramework文件MFC:包含调试用的MFC头文件,库和原码等SAMPLES:包含MFC和ATL应用例程WCETK:包含WindowsCETestKit(CETK)相关二进制文件,Private目录,定位在以下目录%_WINCEROOT%PRIVATE在安装的时候必须检查选项,与SharedSourceLicense项保持一致你可以装载你的产品的最新版私人代码Premium(“Almosteverything”)Source都是可用的包括的:KernelGWEScomponentsFilesyscomponents,回顾Build的4个步骤,BuildSystem概述,IDE作为客户端,通过命令行创建buildsystem.命令行工具使用环境变量确认Build设置,并调用编译器和连接器命令行工具存放在:%_PUBLICROOT%COMMONOAKMISC,环境变量,重要目录%_WINCEROOT%_PublicRoot%可选的OS属性SYSGEN_AYGSHELLSYSGEN_BATTERYSYSGEN_STANDARDSHELLPlatform-SettingoptionsIMGAUTOFLUSHWINCESHIPIMGRAM64,原码结构,DIRSSOURCESMakeFilemakefile.def,DIRS文件,DIRS类似工作空间“Workspace”中包含的工程“projects”列表文本文件列出了包含其它DIRSorSOURCES文件的目录列表BUILD.EXE通过读DIRS文件确定build的内容例如:,DIRS=EbootDrivers,SOURCES,SOURCES工程的源文件列表TARGETNAME输出目标名(非扩展)TARGETTYPEPROGRAM(.EXE)ApplicationDYNLINK(.DLL)DynamicLinkLibraryLIBRARY(.LIB)Staticlibrary,文件结构,文本文件被包含在makefile.def,提供给目标机关于build的相关信息,有用的命令行工具,Wince.batBlddemo.batCebuild.batBuild.exeSysgen.batBuildrel.batMakeimg.exe,Wince.bat,通过3个输入参数为宿主机准备开发环境%_TGTCPU%_TGTPROJ%_TGTPLAT%例:wincex86MYPROJCEPC,BldDemo.bat,用来build和生成OS镜像.它调用3个工具:Cebuild.bat:Build平台的模块、属性和原码Buildrel.bat:为平台拷贝文件到release目录下,它是生成二进制镜像的工具Makeimg.exe:产生OS镜像,Build.exe,用来构建、创建各种项目DIRS文件定义目录结构自动监测源文件和头文件的依赖关系WindowsCEBuild过程的核心调用NMAKE.EXE做真正的buildDIRS和SOURCES决定build的内容,如何通过设置命令行来Build环境,设置环境变量BuildOS镜像,示例,set_WINCEROOT=E:WINCE420set_PROJECTROOT=E:GOODWINCE420Emulatorset_FLA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国钢铁行业绿色转型与建筑应用趋势分析
- 2025-2030中国都市圈轨道交通网络效应评估与站点商业开发价值预测
- 2026届山东省潍坊奎文区五校联考物理八上期末经典模拟试题含解析
- 2026届江西南昌市西湖区第二十四中学物理八年级第一学期期末教学质量检测试题含解析
- 2026届湖南长沙麓山国际实验学校物理八年级第一学期期末经典试题含解析
- 消毒防疫者产品在家庭清洁卫生市场的推广策略报告
- 互联网医疗健康竞品分析2025年可行性研究报告
- 2026届贵州省黔西南州勤智学校物理八年级第一学期期末经典模拟试题含解析
- 景区导览在景区旅游教育中的推广报告
- 金融科技虚拟货币市场风险控制策略2025年研究报告
- 书法毛笔一级考试试题及答案
- 2025年广东省中考地理试题卷(标准含答案)
- 放疗皮肤反应分级及护理
- 2025至2030中国甲氧基乙酸甲酯行业发展趋势分析与未来投资战略咨询研究报告
- 临期商品处理管理制度
- 医院5s管理制度规定管理制度
- 消防避火服课件教学
- 土地法学教学课件电子教案课件
- 小学二年级上册心理健康教案(适合北京教育出版社)
- 2025年时事政治考试题及参考答案(100题)
- 代办报建合同协议书
评论
0/150
提交评论