访问处理方法和装置与流程

文档序号:11544906阅读:148来源:国知局
访问处理方法和装置与流程

本发明涉及计算机技术,尤其涉及一种访问处理方法和装置。



背景技术:

常见的计算机系统的架构有x86架构、powerpc架构、arm架构、无内部互锁流水级的微处理器(microprocessorwithoutinterlockedpipedstages,简称:mips)架构等。

现有技术中,不同mips架构的计算机系统为物理存储器分配的地址空间不同。以存储器a为例,假定在mips架构的计算机系统1中,存储器a对应地址空间1,则开发人员在根据存储器a对应地址空间1开发操作系统时,会将该地址空间1写入操作系统访问该存储器a的指令中,以使得mips架构的计算机系统1在使用该操作系统时,可以通过该访问指令携带的该空间地址1访问到该存储器a。此时,若该存储器a在mips架构的计算机系统2中对应其他的地址空间时(例如对应地址空间2),则该mips架构的计算系统2在使用该操作系统时,通过该操作系统访问指令所携带的空间地址1就无法访问到该存储器a,导致访问出错。

故,现有技术中,在使用根据存储器对应的地址空间所开发的操作系统,访问不同的mips架构的计算机系统中的同一个存储器时,经常会出现访问错误的问题。



技术实现要素:

本发明提供一种访问处理方法和装置,用以解决现有技术中在使用根据存储器对应的地址空间所开发的操作系统,访问不同的mips架构的计算机系统中的同一个存储器时,会出现访问错误的问题。

本发明第一方面提供一种访问处理方法,包括:

接收外设发送的访问请求;所述访问请求包括待访问存储器的地址空间;

根据所述待访问存储器的地址空间和预设的地址空间映射关系,确定所述待访问存储器的访问类型;所述预设的地址空间映射关系包括不同的存储器与不同的地址空间之间的对应关系,所述预设的地址空间映射关系适配不同的无内部互锁流水级的微处理器mips架构的计算机系统;

根据所述待访问存储器的访问类型和所述待访问存储器的地址空间,访问所述待访问存储器。

如上所述,所述存储器包括:系统低端内存、系统高端内存、输入/输出寄存器、芯片配置寄存器、窗口配置寄存器、核间中断寄存器、外设组件互连标准设备存储器中的至少一个。

如上所述,所述预设的地址空间映射关系包括:

地址空间0x0000_0000至0x0fff_ffff对应于所述系统低端内存;

地址空间0x1000_0000至0x1fff_ffff对应于所述输入/输出寄存器和所述芯片配置寄存器;

地址空间0x3000_0000至0x3fff_ffff对应于所述窗口配置寄存器和所述核间中断寄存器;

地址空间0x4000_0000至高端内存基址-0x1000_0001对应于所述外设组件互连标准设备存储器;

地址空间所述高端内存基址至高端内存结束地址对应于所述系统高端内存。

如上所述,所述高端内存基址为0x9000_0000。

如上所述,所述地址空间0x0000_0000至0x0fff_ffff对应于所述系统低端内存,具体包括:

地址空间0x0020_0000至0x0eff_ffff用于加载操作系统内核和存储器磁盘;

地址空间0x0f00_0000至0x0f3f_0000用于加载基本输入输出系统的代码段和数据段;

地址空间0x0f40_0000至0x0f7f_0000用于加载所述基本输入输出系统的堆栈;

地址空间0x0f80_0000至0x0ffe_ffff用于加载所述基本输入输出系统与所述操作系统内核的接口参数地址;

地址空间0x0fff_0000至0x0fff_0110用于加载内存条信息;

地址空间0x0fff_e000至0x0fff_ffff用于加载系统监测基本输入输出系统。

本发明第二方面提供一种访问处理装置,包括:

接收模块,用于接收外设发送的访问请求;所述访问请求包括待访问存储器的地址空间;

确定模块,用于根据所述接收模块接收的待访问存储器的地址空间和预设的地址空间映射关系,确定所述待访问存储器的访问类型;所述预设的地址空间映射关系包括不同的存储器与不同的地址空间之间的对应关系,所述预设的地址空间映射关系适配不同的无内部互锁流水级的微处理器mips架构的计算机系统;

访问模块,用于根据所述确定模块确定的待访问存储器的访问类型和所述待访问存储器的地址空间,访问所述待访问存储器。

如上所述,所述存储器包括:系统低端内存、系统高端内存、输入/输出寄存器、芯片配置寄存器、窗口配置寄存器、核间中断寄存器、外设组件互连标准设备存储器中的至少一个。

如上所述,所述预设的地址空间映射关系包括:

地址空间0x0000_0000至0x0fff_ffff对应于所述系统低端内存;

地址空间0x1000_0000至0x1fff_ffff对应于所述输入/输出寄存器和所述芯片配置寄存器;

地址空间0x3000_0000至0x3fff_ffff对应于所述窗口配置寄存器和所述核间中断寄存器;

地址空间0x4000_0000至高端内存基址-0x1000_0001对应于所述外设组件互连标准设备存储器;

地址空间所述高端内存基址至高端内存结束地址对应于所述系统高端内存。

如上所述,所述高端内存基址为0x9000_0000。

如上所述,所述地址空间0x0000_0000至0x0fff_ffff对应于所述系统低端内存,具体包括:

地址空间0x0020_0000至0x0eff_ffff用于加载操作系统内核和存储器 磁盘;

地址空间0x0f00_0000至0x0f3f_0000用于加载基本输入输出系统的代码段和数据段;

地址空间0x0f40_0000至0x0f7f_0000用于加载所述基本输入输出系统的堆栈;

地址空间0x0f80_0000至0x0ffe_ffff用于加载所述基本输入输出系统与所述操作系统内核的接口参数地址;

地址空间0x0fff_0000至0x0fff_0110用于加载内存条信息;

地址空间0x0fff_e000至0x0fff_ffff用于加载系统监测基本输入输出系统。

本发明提供的访问处理方法和装置,通过预设的地地址空间映射关系,使得任一mips架构的计算机系统都可以采用该预设的地址空间映射关系为存储器分配地址空间,从而使得该任一mips架构的计算机系统均可以使用根据该预设的地址空间映射关系开发的操作系统访问到正确的存储器,提高了使用该操作系统中访问存储器的成功率,进而提高了操作系统的兼容性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的访问处理方法实施例一的流程示意图;

图2为本发明提供的访问处理装置实施例一的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供的访问处理方法和装置,旨在解决现有技术中在使用根据存 储器对应的地址空间所开发的操作系统,访问不同的mips架构的计算机系统中的同一个存储器时,会出现访问错误的问题。

下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。

图1为本发明提供的访问处理方法实施例一的流程示意图,本实施例的执行主体可以为mips架构的计算机系统,本实施例涉及的是mips架构的计算机系统根据待访问存储器的地址空间和预设的地址空间映射关系,访问待访问存储器的具体过程。本实施例的方法适用于任一待处理外设访问请求的mips架构的计算机系统,可以提高访问的成功率。如图1所示,该方法可以包括:

s101、接收外设发送的访问请求;访问请求包括待访问存储器的地址空间。

具体的,上述访问请求可以为向待访问存储器读取数据的请求,也还可以为向待访问存储器写入数据的请求。

s102、根据待访问存储器的地址空间和预设的地址空间映射关系,确定待访问存储器的访问类型;预设的地址空间映射关系包括不同的存储器与不同的地址空间之间的对应关系,预设的地址空间映射关系适配不同的mips架构的计算机系统。

具体的,上述预设的地址空间映射关系涵盖了mips架构的计算机系统的所有存储器与地址空间的对应关系,该预设的地址空间映射关系可以固化在mips架构的计算机系统的中央处理器中,也可以存储在操作系统中等。本实施例所涉及的任一待处理外设访问请求的mips架构的计算机系统均为采用上述预设的地址空间映射关系为存储器分配地址空间的mips架构的计算机系统,也就是说,上述任一待处理外设访问请求的mips架构的计算机系统中的每个存储器对应的地址空间与预设的地址空间映射关系中该存储器对应的地址空间相同,这样,当该mips架构的计算机系统接收到外设发送的访问请求之后,就可以根据该访问请求中携带的待访问存储器的地址空间,在该预设的地址空间映射关系中所查找到的与该地址空间对应的存储器即为待访问存储器,进而使得mips架构的计算机系统根据所查找到的与该地址 空间对应的存储器所确定访问类型,即为待访问存储器对应的访问类型。

103、根据待访问存储器的访问类型和待访问存储器的地址空间,访问待访问存储器。

具体的,本实施例所涉及的任一待处理外设访问请求的mips架构的计算机系统均可以使用同一操作系统,该操作系统为根据该预设的地址空间映射关系开发的操作系统,也就是说,使用该操作系统的访问指令中携带的同一地址空间,在上述任一mips架构的计算机系统中均可以访问到同一个存储器,不会出现访问到其他存储器上的情况,提高了使用该操作系统中访问存储器的成功率,进而提高了操作系统的兼容性。这样,当上述任一待处理外设访问请求的mips架构的计算机系统在根据上述s102确定待访问存储器的访问类型之后,就可以根据待访问存储器的地址空间,使用操作系统中携带有该地址空间的访问指令和确定的访问类型,正确的访问到该待访问存储器,提高了访问的成功率。

现有技术中,不同的mips架构的计算机系统采用不同的地址空间映射关系为存储器分配地址空间,例如:mips架构的计算机系统1采用地址空间映射关系1为存储器分配地址空间,mips架构的计算机系统2采用地址空间映射关系2为存储器分配地址空间,使得同一存储器在mips架构的计算机系统1和mips架构的计算机系统2中对应的地址空间不同,这样,mips架构的计算机系统2在使用开发人员根据mips架构的计算机系统1的地址空间映射关系1开发的操作系统时,根据该操作系统的访问指令中携带的地址空间,可能会访问到其他的存储器上,导致访问出错。

而在本实施例中,通过预设的地址空间映射关系,使得任一mips架构的计算机系统都可以采用该预设的地址空间映射关系为存储器分配地址空间,从而使得该任一mips架构的计算机系统均可以使用根据该预设的地址空间映射关系开发的操作系统,也就是说,使用该操作系统的访问指令中携带的同一地址空间,在上述任一mips架构的计算机系统中可以访问到同一个存储器,不会出现访问到其他存储器上的情况,提高了使用该操作系统中访问存储器的成功率,进而提高了操作系统的兼容性。

本发明提供的访问处理方法,通过预设的地地址空间映射关系,使得任一mips架构的计算机系统都可以采用该预设的地址空间映射关系为存储器 分配地址空间,从而使得该任一mips架构的计算机系统均可以使用根据该预设的地址空间映射关系开发的操作系统访问到正确的存储器,提高了使用该操作系统中访问存储器的成功率,进而提高了操作系统的兼容性。

进一步地,在上述实施例的基础上,上述mips架构的计算机系统中的存储器例如可以包括:系统低端内存、系统高端内存、输入/输出寄存器、芯片配置寄存器、窗口配置寄存器、核间中断寄存器、外设组件互连标准设备存储器中的至少一个,具体可以根据每个mips架构的计算机系统的配置确定。则对应于这些存储器,在本发明的一种实现方式中,上述预设的地址空间映射关系可以包括:

地址空间0x0000_0000至0x0fff_ffff对应于系统低端内存;

地址空间0x1000_0000至0x1fff_ffff对应于输入/输出寄存器和芯片配置寄存器;

地址空间0x3000_0000至0x3fff_ffff对应于窗口配置寄存器和核间中断寄存器;

地址空间0x4000_0000至高端内存基址-0x1000_0001对应于外设组件互连标准设备存储器;其中,该高端内存基址具体可以根据用户的需求确定,例如,该高端内存基址可以为0x9000_0000,还可以为0x8000_0000,以高端内存基址为0x9000_0000为例,则对应于该高端内存基址,外设组件互连标准设备存储器对应的地址空间可以为0x4000_0000至0x7fff_ffff。

地址空间高端内存基址至高端内存结束地址对应于系统高端内存,其中,该高端内存结束地址与该mips架构的计算机系统的内存的大小有关,示例性的,以高端内存基址为0x9000_0000为例,当mips架构的计算机系统的内存为1gb,即,系统低端内存与系统高端内存总共1gb,其中,对应于地址空间0x0000_0000至0x0fff_ffff的系统低端内存占用了256mb,则系统高端内存对应的地址空间为0x9000_0000至0xbfff_ffff。当mips架构的计算机系统的内存为2gb,则系统高端内存对应的地址空间为0x9000_0000至0xffff_ffff。

可选的,当上述地址空间0x0000_0000至0x0fff_ffff对应于系统低端内存时,则在本发明的一种实现方式中,该地址空间与系统低端内存的具体对应关系可以如下所示:

地址空间0x0020_0000至0x0eff_ffff用于加载操作系统内核和存储器磁盘;

地址空间0x0f00_0000至0x0f3f_0000用于加载基本输入输出系统的代码段和数据段;

地址空间0x0f40_0000至0x0f7f_0000用于加载基本输入输出系统的堆栈;其中,这里所说的基本输入输出系统具体可以为programmableread-onlymemorymonitor(即pmon)固件。

地址空间0x0f80_0000至0x0ffe_ffff用于加载基本输入输出系统与操作系统内核的接口参数地址;

地址空间0x0fff_0000至0x0fff_0110用于加载内存条信息;

地址空间0x0fff_e000至0x0fff_ffff用于加载系统监测基本输入输出系统。

本发明提供的访问处理方法,通过预设的地地址空间映射关系,使得任一mips架构的计算机系统都可以采用该预设的地址空间映射关系为存储器分配地址空间,从而使得该任一mips架构的计算机系统均可以使用根据该预设的地址空间映射关系开发的操作系统访问到正确的存储器,提高了使用该操作系统中访问存储器的成功率,进而提高了操作系统的兼容性。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

图2为本发明提供的访问处理装置实施例一的结构示意图,如图2所示,该访问处理装置可以包括:接收模块11、确定模块12和访问模块13;其中,

接收模块11,可以用于接收外设发送的访问请求;该访问请求可以包括待访问存储器的地址空间;

确定模块12,可以用于根据接收模块11接收的待访问存储器的地址空间和预设的地址空间映射关系,确定待访问存储器的访问类型;该预设的地址空间映射关系包括不同的存储器与不同的地址空间之间的对应关系,该预设的地址空间映射关系可以适配不同的mips架构的计算机系统;

访问模块13,可以用于根据确定模块12确定的待访问存储器的访问类型和待访问存储器的地址空间,访问待访问存储器。

本发明提供的访问处理装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

进一步地,在上述实施例的基础上,上述存储器可以包括:系统低端内存、系统高端内存、输入/输出寄存器、芯片配置寄存器、窗口配置寄存器、核间中断寄存器、外设组件互连标准设备存储器中的至少一个。

在本发明的一种实现方式中,上述预设的地址空间映射关系可以包括:

地址空间0x0000_0000至0x0fff_ffff对应于系统低端内存;

地址空间0x1000_0000至0x1fff_ffff对应于输入/输出寄存器和芯片配置寄存器;

地址空间0x3000_0000至0x3fff_ffff对应于窗口配置寄存器和核间中断寄存器;

地址空间0x4000_0000至高端内存基址-0x1000_0001对应于外设组件互连标准设备存储器;

地址空间高端内存基址至高端内存结束地址对应于系统高端内存。

可选的,上述高端内存基址可以为0x9000_0000。

可选的,上述地址空间0x0000_0000至0x0fff_ffff对应于系统低端内存,具体可以包括:

地址空间0x0020_0000至0x0eff_ffff用于加载操作系统内核和存储器磁盘;

地址空间0x0f00_0000至0x0f3f_0000用于加载基本输入输出系统的代码段和数据段;

地址空间0x0f40_0000至0x0f7f_0000用于加载基本输入输出系统的堆栈;

地址空间0x0f80_0000至0x0ffe_ffff用于加载基本输入输出系统与操作系统内核的接口参数地址;

地址空间0x0fff_0000至0x0fff_0110用于加载内存条信息;

地址空间0x0fff_e000至0x0fff_ffff用于加载系统监测基本输入输出系统。

本发明提供的访问处理装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1