【技术实现步骤摘要】
本专利技术涉及通信领域,更具体而言,涉及一种用于MIPS系统的代码段保护方法和装置。
技术介绍
MIPS(Microprocessor without Interlocked Pipe Stages,无互锁流水线级的微处理机)是高效的RISC(Reduced Instruction SetComputer,精简指令集计算机)体系结构中最优雅的一种体系结构,它很好地利用了流水线技术。在MIPS 32和MIPS 64中,程序地址空间最常用的有以下4个区域,分别具有不同的属性kuseg地址空间为0x00000000~0x7FFFFFFF(低端2GB),这些是用户模式下可用的地址。在带有MMU(Memory Manage Unit,内存管理单元)的机器里,这些地址都将由MMU加以转换;kseg0地址空间为0x80000000~0x9FFFFFFF(512MB),一般情况下都是通过cache对这段区域内的地址进行访问;kseg1地址空间为0xA0000000~0xBFFFFFFF(512MB),kseg1是不通过Cache存取的(uncached),kseg1是唯一的在 ...
【技术保护点】
【技术特征摘要】
1.一种用于MIPS系统的代码段保护方法,其特征在于,包括以下步骤步骤a,在编译生成主机软件时,使其代码段和数据段的地址都落在可通过所述MIPS系统中的内存管理单元转换的区域内;以及步骤b,在启动主机软件时,使所述代码段和数据段在主机软件中的程序地址空间落在所述区域内。2.根据权利要求1所述的代码段保护方法,其特征在于,所述步骤b包括以下步骤步骤b1,将所述代码段的程序地址空间映射到所述区域内,以建立代码段空间,并设置为不可写;以及步骤b2,将所述数据段的程序地址空间映射到所述区域内,以建立数据段空间,并设置为可写,其中,使所述代码段空间与所述数据段空间不重叠。3.根据权利要求2所述的代码段保护方法,其特征在于,所述步骤b1还包括以下步骤利用陷阱服务操作来查询改写所述代码段空间的写操作的详细信息。4.根据权利要求2所述的代码段保护方法,其特征在于,所述步骤b1和b2在所述MIPS系统的BIOS启动阶段执行。5.根据权利要求2所述的代码段保护方法,其特征在于,所述步骤b1包括以下步骤建立所述代码段的程序地址空间的翻译后援缓冲器表项,根据所述代码段的大小,将所述代码段的程序地址空间映射到所述区域内从0起始的空间内,以建立所述代码段空间;以及将所述代码段空间所对应的翻译后援缓冲器表项中EntryLo0/1寄存器的BIT2的Dirty位设置为表示所述代码段空间为不可写。6.根据权利要求2所述的代码段保护方法,其特征在于,所述步骤b2包括以下步骤建立所述数据段的程序地址空间的翻译后援缓冲器表项,根据所述数据段的大小,将所述数据段的程序地址空间映射到所述区域内从所述代码段空间结束地址起始的空间内,以建立所述数据段空间;以及将所述翻译后援缓冲器表项中EntryLo0/1寄存器的BIT2的Dirty位设置为表示所述数据段空间为可写。7.根据上述权利要求1至6中任一项所述的代码段保护方法,其特征在于,所述区域为不是kseg0的地址段,其中包括kuseg、kseg1、kseg2。8.一种用于MIPS系统的代码段保护装置,其特征在于,包括编译模块,用...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。