本发明涉及计算机,更具体地,涉及一种数据请求处理方法、装置和电子设备。
背景技术:
1、在计算机数据操作中,若不对数据请求进行处理,则新的数据请求需要等待之前未命中数据请求完全解决后才能被接受,这使得新的未命中数据请求不得不等待,可能导致处理器停顿或阻塞,影响系统整体性能。
技术实现思路
1、有鉴于此,本发明实施例提供了一种数据请求处理方法、装置和电子设备,以通过请求缓存区域实现未命中数据请求的缓存和管理,避免处理器停顿或阻塞,并且,本实施例的请求缓存区域还可以实现读请求的乱序写入和写请求的顺序写入,提高了请求缓存区域的空间利用率,并同时解决了写请求冲突问题,提高了系统整体性能。
2、第一方面,本发明实施例提供一种数据请求处理方法,所述方法包括:
3、获取待缓存数据请求;
4、响应于所述待缓存数据请求为待缓存读请求,以请求缓存区域的对应指针为起始点,搜索所述请求缓存区域中的可写位置;
5、将所述待缓存读请求写入至搜索到的可写位置中;
6、响应于所述待缓存数据请求为待缓存写请求,且所述请求缓存区域的头指针指向的位置为可写位置,将所述待缓存写请求写入至所述头指针指向的位置。
7、进一步地,所述将所述待缓存读请求写入至搜索到的可写位置中包括:
8、将所述待缓存读请求写入至搜索到的第一个可写位置中。
9、进一步地,所述将所述待缓存读请求写入至搜索到的可写位置中包括:
10、获取所述待缓存读请求的操作地址;
11、获取所述请求缓存区域中的已缓存写请求的操作地址;
12、响应于所述待缓存读请求的操作地址与各所述已缓存写请求的操作地址不同,将所述待缓存读请求写入至所述搜索到的可写位置。
13、进一步地,所述将所述待缓存写请求写入至所述头指针指向的位置包括:
14、获取所述待缓存写请求的操作地址;
15、获取所述请求缓存区域中的已缓存读请求的操作地址;
16、响应于所述待缓存写请求的操作地址与各所述已缓存读请求的操作地址不同,将所述待缓存写请求写入至所述头指针指向的可写位置。
17、进一步地,所述方法还包括:
18、以所述请求缓存区域的对应指针为起始点,在所述请求缓存区域中搜索至少一个读请求;
19、输出搜索到的所述读请求。
20、进一步地,所述输出搜索到的所述读请求包括:
21、输出搜索到的第一个读请求;或者
22、同步输出搜索到的多个读请求。
23、进一步地,所述方法还包括:
24、以所述请求缓存区域的尾指针为起始点,在所述请求缓存区域中搜索写请求;
25、输出搜索到的第一个写请求。
26、进一步地,所述方法包括:
27、响应于所述头指针指向不可写位置,更新所述头指针直至更新后的头指针指向可写位置。
28、进一步地,所述方法还包括:
29、响应于所述请求缓存区域的尾指针指向可写位置,更新所述尾指针直至更新后的尾指针指向不可写位置。
30、进一步地,所述请求缓存区域的尾指针和头指针在所述请求缓存区域为空或为满时指向相同位置。
31、第二方面,本发明实施例提供一种数据请求处理装置,所述装置包括:
32、请求获取单元,被配置为获取待缓存数据请求;
33、位置搜索单元,被配置为响应于所述待缓存数据请求为待缓存读请求,以请求缓存区域的对应指针为起始点,搜索所述请求缓存区域中的可写位置;
34、第一写入单元,被配置为将所述待缓存读请求写入至搜索到的可写位置中;
35、第二写入单元,被配置为响应于所述待缓存数据请求为待缓存写请求,且所述请求缓存区域的头指针指向的位置为可写位置,将所述待缓存写请求写入至所述头指针指向的位置。
36、第三方面,本发明实施例提供一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如上所述的方法。
37、第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法。
38、第五方面,本发明实施例提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如上所述的方法。
39、本发明实施例公开了一种数据请求处理方法、装置和电子设备。本发明实施例通过获取待缓存数据请求,响应于待缓存数据请求为待缓存读请求,以请求缓存区域的对应指针为起始点,搜索请求缓存区域中的可写位置,将待缓存读请求写入至搜索到的可写位置中,响应于待缓存数据请求为待缓存写请求,且请求缓存区域的头指针指向的位置为可写位置,将待缓存写请求写入至头指针指向的位置。由此,本发明实施例的可以通过请求缓存区域实现未命中数据请求的缓存和管理,避免了处理器停顿或阻塞,并且,本实施例的请求缓存区域还可以实现读请求的乱序写入和写请求的顺序写入,提高了请求缓存区域的空间利用率,并同时解决了数据请求冲突问题,提高了系统整体性能。
1.一种数据请求处理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述待缓存读请求写入至搜索到的可写位置中包括:
3.根据权利要求1所述的方法,其特征在于,所述将所述待缓存读请求写入至搜索到的可写位置中包括:
4.根据权利要求1所述的方法,其特征在于,所述将所述待缓存写请求写入至所述头指针指向的位置包括:
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,所述输出搜索到的所述读请求包括:
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
8.根据权利要求1所述的方法,其特征在于,所述方法包括:
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
10.根据权利要求1所述的方法,其特征在于,所述请求缓存区域的尾指针和头指针在所述请求缓存区域为空或为满时指向相同位置。
11.一种数据请求处理装置,其特征在于,所述装置包括:
12.一种电子设备,包括存储器和处理器,其特征在于,所述存储器用于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如权利要求1-10中任一项所述的方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-10中任一项所述的方法。
14.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1-10中任一项所述的方法。