一种分页式地址空间管理方法以及控制器的制造方法

文档序号:9235383阅读:243来源:国知局
一种分页式地址空间管理方法以及控制器的制造方法
【技术领域】
[0001]本发明涉及计算机系统,尤其涉及的是一种分页式地址空间管理方法以及控制器。
【背景技术】
[0002]参见图1所示对现有技术所提供的计算机系统的结构进行说明,如图1所示,计算机系统包括但不限于设置有处理器100、控制器101以及存储器102,所述存储器102是计算机系统的基本单元,计算机系统需要从所述存储器102移动资料或将资料写入所述存储器102,外部设备103用于计算机系统与外部进行通信或者补充计算机系统的额外功能,所述控制器101则是用于连接处理器100和所述外部设备103,且所述控制器101还提供了所述存储器102的存储方法,以使所述控制器101能够帮助所述处理器100以及所述外部设备103去存取所述存储器102 ;
[0003]参见图2所示,现有技术中,所述控制器101的地址空间会分成多个独立存储的存储单元,所述控制器101预先确定各所述存储单元与各外部设备103的存储器地址映射关系,即控制器101预先确定了存储器地址映射关系,该存储器地址映射关系包括各存储单元与各外部设备的一一对应的关系,如图2所示为例,即所述地址映射关系包括了存储单元I与外部设备I的映射关系,存储单元2与外部设备2的映射关系等,各个所述存储单元有固定的起始地址和结束地址,所述控制器101可根据各存储单元的地址范围选择合适的外部设备用于建立所述存储器地址映射关系,因控制器101已确定所述存储器地址映射关系,则使得所述控制器101能够直接读写外部设备103的存储器,以使读取过程中不会产生额外的软件开销;
[0004]现有技术的弊端在于,各所述存储单元的地址范围大小是固定的,且一旦某个存储单元分配一个外部设备103时,即便该外部设备103不能用完存储单元的地址资源,但是该存储单元的剩余的地址无法被使用,从而造成了控制器101地址资源的浪费;而且若某个外部设备103的地址空间大于与该外部设备103对应的存储单元的地址空间时,则控制器101无法成功挂接该外部设备103。

【发明内容】

[0005]本发明实施例提供了一种分页式地址空间管理方法以及控制器,能够有效的节省控制器的地址资源,避免控制器地址资源的浪费;
[0006]本发明实施例第一方面提供了一种分页式地址空间管理方法,包括:
[0007]确定地址分页,所述地址分页由控制器的地址空间进行划分以形成;
[0008]确定目标外设地址空间,所述目标外设地址空间为外部设备请求当前与所述地址空间建立映射关系的外设地址空间,所述地址空间用于对已映射到所述地址空间上的所述目标外设地址空间进行存取;
[0009]确定满足第一预设条件的所述地址分页为第一目标地址分页,所述第一预设条件为所有所述第一目标地址分页的地址空间的和大于或等于所述目标外设地址空间;
[0010]建立各所述第一目标地址分页与所述目标外设地址空间的映射关系,所述映射关系用于将所述目标外设地址空间根据所述映射关系映射到所述第一目标地址分页的地址空间上。
[0011]结合本发明实施例第一方面,本发明实施例第一方面的第一种实现方式中,
[0012]所述确定地址分页之前,所述方法还包括:
[0013]划分所述地址空间以形成多个所述地址分页,所有所述地址分页的地址空间的和等于所述地址空间,且各所述地址分页的地址空间为2的幂次方。
[0014]结合本发明实施例第一方面或本发明实施例第一方面的第一种实现方式,本发明实施例第一方面的第二种实现方式中,
[0015]确定空闲地址分页,所述空闲地址分页为当前未与外部设备的外设地址空间建立映射关系的地址分页;
[0016]所述确定目标外设地址空间之后,所述方法还包括:
[0017]若确定所有所述空闲地址分页的地址空间的和大于所述目标外设地址空间,则所述确定满足第一预设条件的所述地址分页为第一目标地址分页包括:
[0018]在所有所述空闲地址分页中确定满足所述第一预设条件的所述第一目标地址分页。
[0019]结合本发明实施例第一方面或本发明实施例第一方面的第一种实现方式,本发明实施例第一方面的第三种实现方式中,
[0020]所述确定地址分页之后,所述方法还包括:
[0021]确定空闲地址分页和已占用地址分页,所述已占用地址分页为已与外部设备的外设地址空间建立映射关系的地址分页,所述空闲地址分页为当前未与外部设备的外设地址空间建立映射关系的地址分页;
[0022]所述确定目标外设地址空间之后,所述方法还包括:
[0023]若确定所有所述空闲地址分页的地址空间的和小于所述目标外设地址空间,则所述方法还包括:
[0024]在所有所述已占用地址分页中确定满足第二预设条件的第二目标地址分页,所述第二预设条件为所述已占用地址分页中存取频率小于预设值的地址分页;
[0025]解除所述第二目标地址分页已建立的与外设地址空间的映射关系;
[0026]所述确定满足第一预设条件的所述地址分页为第一目标地址分页包括:
[0027]在所有所述空闲地址分页中以及所述第二目标地址分页中确定满足所述第一预设条件的所述第一目标地址分页。
[0028]结合本发明实施例第一方面的实现方式,本发明实施例第一方面的第四种实现方式中,
[0029]所述建立各所述第一目标地址分页与所述目标外设地址空间的映射关系之后,所述方法还包括:
[0030]将所述目标外设地址空间根据所述映射关系映射到所述第一目标地址分页的地址空间上;
[0031]确定各所述第一目标地址分页的虚拟地址;
[0032]将各所述第一目标地址分页的虚拟地址进行重排以形成连续的虚拟地址段。
[0033]本发明实施例第二方面提供了一种控制器,包括:
[0034]第一确定单元,用于确定地址分页,所述地址分页由控制器的地址空间进行划分以形成;
[0035]第二确定单元,用于确定目标外设地址空间,所述目标外设地址空间为外部设备请求当前与所述地址空间建立映射关系的外设地址空间,所述地址空间用于对已映射到所述地址空间上的所述目标外设地址空间进行存取;
[0036]第三确定单元,用于确定满足第一预设条件的所述地址分页为第一目标地址分页,所述第一预设条件为所有所述第一目标地址分页的地址空间的和大于或等于所述目标外设地址空间;
[0037]建立单元,用于建立各所述第一目标地址分页与所述目标外设地址空间的映射关系,所述映射关系用于将所述目标外设地址空间根据所述映射关系映射到所述第一目标地址分页的地址空间上。
[0038]结合本发明实施例第二方面,本发明实施例第二方面的第一种实现方式中,
[0039]划分单元,用于划分所述地址空间以形成多个所述地址分页,所有所述地址分页的地址空间的和等于所述地址空间,且各所述地址分页的地址空间为2的幂次方。
[0040]结合本发明实施例第二方面或本发明实施例第二方面的第一种实现方式,本发明实施例第二方面的第二种实现方式中,
[0041]第四确定单元,用于确定空闲地址分页,所述空闲地址分页为当前未与外部设备的外设地址空间建立映射关系的地址分页;
[0042]所述第三确定单元还用于,若确定所有所述空闲地址分页的地址空间的和大于所述目标外设地址空间,则在所有所述空闲地址分页中确定满足所述第一预设条件的所述第一目标地址分页。
[0043]结合本发明实施例第二方面或本发明实施例第二方面的第一种实现方式,本发明实施例第二方面的第三种实现方式中,
[0044]第五确定单元,用于确定空闲地址分页和已占用地址分页,所述已占用地址分页为已与外部设备的外设地址空间建立映射关系的地址分页,所述空闲地址分页为当前未与外部设备的外设地址空间建立映射关系的地址分页;
[0045]第六确定单元,用于若确定所有所述空闲地址分页的地址空间的和小于所述目标外设地址空间,则在所有所述已占用地址分页中确定满足第二预设条件的第二目标地址分页,所述第二预设条件为所述已占用地址分页中存取频率小于预设值的地址分页;
[0046]第七确定单元,用于解除所述第二目标地址分页已建立的与外设地址空间的映射关系;
[0047]所述第三确定单元还用于,在所有所述空闲地址分页中以及所述第二目标地址分页中确定满足所述第一预设条件的所述第一目标地址分页。
[0048]结合本发明实施例第二方面的第一种实现方式,本发明实施例第二方面的第三种实现方式中,还包括:
[0049]第八确定单元,用于将所述目标外设地址空间根据所述映射关系映射到所述第一目标地址分页的地址空间上;
[0050]第九确定单元,用于确定各所述第一目标地址分页的虚拟地址;
[0051]第十确定单元,用于将各所述第一目标地址分页的虚拟地址进行重排以形成连续的虚拟地址段。
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1