《MON结构》PPT课件

《MON结构》PPT课件

ID:36663940

大小:273.10 KB

页数:25页

时间:2019-05-10

《MON结构》PPT课件_第1页
《MON结构》PPT课件_第2页
《MON结构》PPT课件_第3页
《MON结构》PPT课件_第4页
《MON结构》PPT课件_第5页
资源描述:

《《MON结构》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、PMON的解读和开发PMON的发展和编译环境PMONPMON的早期版本的功能有:shell,net,load,debug。不支持硬盘,显卡。并且扩展性不好,编译器是sde-gcc.PMON的发展和编译环境PMON2000现在龙芯1和2用的BIOS,在原来的PMON的基础上添加了硬盘支持,文件系统ext2和fat的支持,显卡的支持等等。修复了debug功能,扩展性也得到提高。比较容易移植到新的系统。编译器为mips-elf-gccPMON2000的目录结构Conf(配置目录)Target(每个系统在该目录下有一个子目录,进行新的

2、系统支持的时候,只需要修改该目录下的文件)Sys(pmon中的一些系统支持)GT64240BONITONB_GODSONPMON2000的框架Arch(处理器相关代码一些定义)Dev(设备的驱动程序,主要是IDE的ATA,北桥的网卡IC,和pci设备eepro100)Kern(主要是一些系统调用的实现,比如malloc,time,signal,socket)Net和netinet(实现网络协议)Scsi协议的实现Pmon(共有代码)Arch(处理器相关的代码,比如Flush_Cache等)PMON2000的框架Cmds(Pmo

3、n的shell中各个命令的实现)Dev(一些基本设备的驱动,比如Flash)Fs(文件系统)Loadelf文件的实现网络命令以及tftp的实现Lib(pmon的lib库,实现了memcpy,memset,printf基本函数)X86emu(x86的Emulator,主要是运行显卡的BIOS,初始化显卡Targets目录的组成每个系统一个目录,我们拿Bonito来为例子,主要有下列文件:start.S位于Targets/Bonito/Bonito目录下,是C环境建立之前的汇编代码,使整个BIOS运行的起点。tgt_machdep

4、.c位于Targets/Bonito/Bonito目录下,一些板子相关的函数。pci_machdep.c进行Targets/Bonito/pci空间分配的一些函数Targets/Bonito/dev目录下一些板子特殊的设备的驱动。Targets/Bonito/conf目录下是一些编译环境建立需要的一些文件PMON编译环境的建立将comp.tar.gz在/usr/local解开将/usr/local/comp/mips-elf/gcc-2.95.3/bin加入到PATH目录下进入pmon2000的tools目录下make,建立一

5、些conf需要的工具。进入pmon2000的Targets/Bonito/conf目录中编辑conf目录下Bonito文件,选择需要编译的模块tools/pmoncfg/pmoncfgBonito(conf类型文件)。形成目标主目录下的compiler目录进入Targets/Bonito/compiler/Bonito的目录,make形成pmon。PMON编译环境的建立Makefile是根据Targets/Bonito/conf/Makefile.Bonito文件形成的。链接脚本是为Targets/Bonito/conf/ld

6、.script。PMON2000的框架CPUResetEntryJumpoverthebeginningofromInitialSerialDeviceInitialMemoryCopycodesfromRomtoRamInitialNorthBridgeInitialSouthBridgeInitialVGACardInitialShellWaitCommandInitailtlb&cacheInitailCenvironmentAssemblyCOtherPCIDeviceSetupthetraps,BEV=0异常向量表异

7、常类型进入点SR(BEV)=0SR(BEV)=1程序地址物理地址程序地址物理地址Reset(启动)NMI(不可屏蔽中断)0xBFC000000x1FC00000TLB替换(32位)0x800000000x00xBFC002000x1FC00200XTLB替换(64位)0x800000800x800xBFC002800x1FC00280Cache错0xA00000000x1000xBFC003000x1FC00300普通中断0x800001800x1800xBFC003800x1FC00380Pmon的空间分配异常向量表Pmon

8、自身栈空间Pmon的代码段和数据段用户程序代码段和数据段用户的堆和栈0x800000000x800200000x801000000x8fffffff0x8001c000PMON的汇编部分(starto.S或sbdreset.S)的解读CPUResetEntryJumpover

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。