【技术实现步骤摘要】
【国外来华专利技术】最小化延迟同时迁移直接存储器访问(DMA)映射页面
[0001]本专利技术一般涉及用于计算机系统存储器管理的方法、系统和计算机程序产品。更具体地说,本专利技术涉及一种用于在迁移直接存储器访问(DMA)映射页面的同时最小化延迟的方法、系统和计算机程序产品。
技术介绍
[0002]页是物理或虚拟存储器的单位。硬件和操作系统的一些组合仅支持一个页大小,而其它组合支持多个页大小,例如16千字节、64千字节、16兆字节、64兆字节以及16千兆字节中的一个或多个。段是包括一个或多个页的物理或虚拟存储器的单元。
[0003]DMA允许某些硬件设备直接访问物理系统存储器。通常,处理器发起数据传输,然后在传输进行的同时执行其他操作。映射用于DMA访问的设备意味着分配系统存储器的缓冲器,并且将缓冲器内的系统存储器地址范围与设备的存储器中的对应地址相关联。因此,对所分配的系统存储器地址范围内的地址的读或写实际上反而访问DMA映射设备。
[0004]中断通常用于发信号通知处理器DMA操作已经完成。然而,当产生中断时,操作可能尚未实际完成,并且一些数据可能尚未到达其目的地。因此,当重新分配系统存储器时,一些计算机系统在释放DMA映射存储器页以供另一使用之前实施具有预定长度的重新分配延迟。
[0005]示例性实施例认识到,实现预定的重新分配延迟的计算机系统在重新分配每个DMA映射存储器页时如当前实现的那样做。因此,如果被重新分配的存储器包括多个DMA映射页,则对每个DMA映射页执行单独的延迟,导致作为每个单独延迟的总和的 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种计算机实现的方法,包括:在存储器重新分配过程期间,确定被重新分配的一组存储器页各自被启用以用于直接存储器访问(DMA)操作(604);以及在完成所述存储器重新分配过程之后,在将初始数据写入到所述一组存储器页之前,执行预访问延迟(606),所述预访问延迟是针对所述一组存储器页中的每个存储器页同时执行的。2.根据权利要求1所述的计算机实现的方法,还包括:针对被启用以用于DMA操作的存储器页,设置DMA延迟标志。3.根据权利要求2所述的计算机实现的方法,其中,响应于确定针对所述一组存储器页中的存储器页设置所述DMA延迟标志而执行所述预访问延迟。4.根据权利要求1所述的计算机实现的方法,还包括:针对被启用以用于DMA操作的所述一组存储器页设置DMA延迟标志。5.根据权利要求4所述的计算机实现的方法,其中,响应于确定针对所述一组存储器页设置所述DMA延迟标志而执行所述预访问延迟。6.根据权利要求1所述的计算机实现的方法,其中,通过将程序指令执行延迟预定时间量来执行所述预访问延迟。7.根据权利要求1所述的计算机实现的方法,还包括:在第二存储器重新分配过程期间,确定被重新分配的第二组存储器页各自被启用以用于直接存储器访问(DMA)操作(608);以及响应于确定自从在所述一组存储器页中被启用以用于DMA操作的存储器页的重新分配以来未经过大于阈值时间段的时间段,在所述存储器重新分配过程完成之后,在将第二初始数据写入到所述第二组存储器页之前,执行所述预访问延迟(606),所述预访问延迟是针对所述第二组存储器页中的每个存储器页同时执行的。8.一种计算机程序产品,用于在迁移DMA映射页面时最小化延迟,所述计算机程序产品包括:一个或多个计算机可读存储介质,以及共同存储在所述一个或多个计算机可读存储介质上的程序指令,所述程序指令包括:用于在存储器重新分配过程期间确定被重新分配的一组存储器页各自被启用以用于直接存储器访问(DMA)操作(604)的程序指令;以及用于在完成所述存储器重新分配过程之后在将初始数据写入到所述一组存储器页之前执行预访问延迟(606)的程序指令,所述预访问延迟是针对所述一组存储器页中的每个存储器页同时执行的。9.根据权利要求8所述的计算机程序产品,还包括:用于针对被启用以用于DMA操作的存储器页设置DMA延迟标志的程序指令。10.根据权利要求9所述的计算机程序产品,其中,响应于确定针对所述一组存储器页中的存储器页设置DMA延迟标志而执行所述预访问延迟。11.根据权利要求8所述的计算机程序产品,还包括:用于针对被启用以用于DMA操作的所述一组存储器页设置DMA延迟标志的程序指令。12.根据权利要求11所述的计算机程序产品,其中,响应于确定针对所述一组存储器页
设置所述DMA延迟标志而执行所述预访问延迟。13.根据权利要求8所述的计算机程序产品,其中,通过将程序指令执行延迟预定时间量来执行所述预访问延迟。14.根据权利要求8所述的计算机程序产品,还包括:在第二存储器重新分配过程期间,确定被重新分配的第二组存储器页各自被启用以用于直接存储器访问(DMA)操作(608);以及响应于确定自从在所述一组存储器页中被启用以用于DMA操作的存储器页的重新分配以来未经过大于阈值时间段的时间段,在所述存储器重新分配过程完成之后,在将第二初始数据写入到所述第二组存储器页之前,执行所述预访问延迟(606),所述预访问延迟是针对所述第二组存储器页中的每个存储器页同时执行的。15.根据权利要求8所述的计算机程序产品,其中,所存储的程序指令被存储在本地...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。