欢迎来到天天文库
浏览记录
ID:55127533
大小:370.15 KB
页数:12页
时间:2020-05-10
《实验 7-1 WinCE启动与跟踪调试实验.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验7_1WinCE启动过程与跟踪调试实验一、WinCE启动过程分析第1步、启动SourceInsight程序,新建一个xsabse270工程,分别将下列目录下的所有文件添加到工程中($_PLATFORMROOT)Xsbase270src$(_PUBLICROOT)commonsrcsocpxa27x_ms_v1Inc($_PLATFORMROOT)commonsrcInc($_PLATFORMROOT)commonsrccommon第2步、打开$(_PLATFORMROOT)Xsbase270SrcCommonStartupStartup
2、.s,定位系统初始化启动函数Startup,分析Startup函数的对平台初始化处理过程,然后定位到调用函数OALStartup第3步、打开$(_PLATFORMROOT)Xsbase270SrcOalOalLibStartup.s,定位并分析OALStartup的功能,同时查找g_oalAddressTable变量的内容$(_PLATFORMROOT)xsbase270srcIncOemaddrtab_cfg.inc)1第4步、利用文本编辑器打开$(_PRIVATEROOT)WINCEOSCOREOSNKLDRARMarmstart.s文件,在Ker
3、nelStart函数中分别定位到调用ARMInit初始化和转跳到kernel.dll入口的位置。并分析KernelStart函数的基本作用。$(_PRIVATEROOT)WINCEOSCOREOSNKLDRARMarmstart.sLEAF_ENTRYKernelStart……;continueinitializationinCaddr0,sp,#KData-KStack;(r0)=ptrtoKDataStructstrr6,[r0,#pAddrMap];storeVAofOEMAddressTableinKDatablARMInit;callCfunctiontope
4、rformtherestofinitializations;uponreturn,(r0)=entrypointofkernel.dllmovr12,r0ldrr0,=KDatamovpc,r12;jumptoentryofkernel.dllVirtualStartDCDVStartENTRY_ENDKernelStart第5步、利用文本编辑器打开$(_PRIVATEROOT)WINCEOSCOREOSNKKERNELARMmdarm.c文件,根据源代码注释分析NKStartup函数作用,然后定位到OEMInitDebugSerial()、OEMInit()、Ker
5、nelStart()函数的位置。2$(_PRIVATEROOT)WINCEOSCOREOSNKKERNELARMmdarm.cvoidNKStartup(structKDataStruct*pKData){……//(1)pickupargumentsfromthenkloader……//(2)findentryofoal……//(3)setupvectors,UCmappings,modestacks,etc.ARMSetup();//(4)commonstartupcode.……OEMInitDebugSerial();//debugchkonlyworksafte
6、rwehavesomethingtoprintto.……OEMInit();//initializefirmware//flushI&DTLBOEMCacheRangeFlush(NULL,0,CACHE_SYNC_FLUSH_TLB);KernelFindMemory();DEBUGMSG(1,(TEXT("NKStartupdone,startingupkernel.r")));KernelStart();//neverreturnedDEBUGCHK(0);}第6步利用文本编辑器打开$(_PRIVATEROOT)WINCEOSCOREOSNKOEMSTUBo
7、emstub.c文件,分析OEMInitDebugSerial()、OEMInit()两个函数的调用过程。voidOEMInitDebugSerial(void){g_pOemGlobal->pfnInitDebugSerial();}voidOEMInit(void){g_pOemGlobal->pfnInitPlatform();}第6步利用文本编辑器打开$(_PRIVATEROOT)WINCEOSCOREOSNKOEMMAINoemglobal.c文件,利用PB帮
此文档下载收益归作者所有