[發明專利]一種計算機事務存儲方法有效
| 申請號: | 200910235722.4 | 申請日: | 2009-10-15 |
| 公開(公告)號: | CN101699412A | 公開(公告)日: | 2010-04-28 |
| 發明(設計)人: | 汪東升;郭三川;王海霞 | 申請(專利權)人: | 清華大學 |
| 主分類號: | G06F12/08 | 分類號: | G06F12/08 |
| 代理公司: | 北京清亦華知識產權代理事務所(普通合伙) 11201 | 代理人: | 羅文群 |
| 地址: | 100084*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 計算機 事務 存儲 方法 | ||
1.一種計算機事務存儲方法,其特征在于該方法包括以下步驟:
(1-1)定義:從對計算機內存地址的寫操作至對該內存地址的下一次寫操作之前的 對該地址的最后一次讀指令為數據存活區間,從對計算機內存地址的最后一次讀操作到對 該內存地址的下一次寫操作為數據消亡區間;
(1-2)計算機的一個緩存行中的數據被修改過,若在該緩存行被替換時,修改的數 據所在的內存地址處于上述數據存活區間中,則將修改的數據寫回內存中,若在緩存行被 替換時,修改的數據所在的內存地址處于上述數據消亡區間中,則修改的數據保持在緩存 中:
(1-2-1)若計算機的緩存為一級,若緩存行被替換時被修改的數據所在的內存地 址處于所述的數據存活區間中,則將被修改的數據寫回內存中,若在緩存行被替換時被修 改的數據所在的內存地址處于所述的數據消亡區間中,則被修改的數據保持在緩存中;
(1-2-2)若計算機的緩存為兩級,其中一級為寫直達方式,二級為寫回方式,且 二級緩存的緩存行中的數據被修改過,若二級緩存行被替換時緩存行中被修改的數據所在 的內存地址處于所述的數據存活區間中,則將被修改的數據寫回內存中,若二級緩存行被 替換時緩存行中被修改的數據所在的內存地址處于所述的消亡區間中,則被修改的數據保 持在緩存中;
(1-2-3)若計算機的緩存有兩級,其中一級和二級同時為寫回方式,若一級緩存 的緩存行中的數據被修改過,則當該一級緩存行被替換時,若一級緩存行被替換時緩存行 中被修改的數據所在的內存地址處于所述的數據存活區間中,則將被修改的數據寫回內存 中,若一級緩存行被替換時緩存行中被修改的數據所在的內存地址處于所述的消亡區間 中,則被修改的數據保持在緩存中;若二級緩存行被替換時緩存行中被修改的數據所在的 內存地址處于所述的數據存活區間中,則將被修改的數據寫回內存中,若二級緩存行被替 換時緩存行中被修改的數據所在的內存地址處于所述的消亡區間中,則被修改的數據保持 在緩存中;
(1-3)在數據存活區間結束和數據消亡區間開始的位置,插入一條最后一次讀操作 指令M,在數據消亡區間中讀操作指令已經進行后插入一條該數據的存活區間結束消亡區 間從此開始的標識指令N;
(1-4)當處理器執行讀指令M或標識指令N時,對計算機緩存行的狀態進行修改, 其過程包括以下步驟:
(1-4-1)若計算機的緩存為一級,計算機處理器執行最后一次讀操作指令M或數 據的存活區間結束消亡區間從此開始的標識指令N時,若與指令的內存地址相對應的緩存 行的狀態為“緩存行中的數據被修改過”,則將該緩存行狀態修改為“緩存行中的數據未 修改過”,若與指令的內存地址相對應的緩存行的狀態為“緩存行中的數據未被修改過”, 則不作修改;
(1-4-2)若計算機的緩存為兩級,其中一級為寫直達方式,二級為寫回方式,計 算機處理器執行最后一次讀操作指令M或數據的存活區間結束消亡區間從此開始的標識 指令N時,若與指令的內存地址相對應的二級緩存行的狀態為“緩存行中的數據被修改 過”,則將該緩存行狀態修改為“緩存行中的數據未修改過”,若與指令的內存地址相對應 的二級緩存行的狀態為“緩存行中的數據未被修改過”,則不作修改;
(1-4-3)若計算機的緩存為兩級,其中一級和二級同時為寫回方式,計算機處理 器執行最后一次讀操作指令M或數據的存活區間結束消亡區間從此開始的標識指令N時, 若與指令的內存地址相對應的一級緩存行的狀態為“緩存行中的數據被修改過”,則將該 緩存行狀態修改為“緩存行中的數據未修改過”,若與指令的內存地址相對應的一級緩存 行的狀態為“緩存行中的數據未被修改過”,則不作修改;若與指令的內存地址相對應的 二級緩存行的狀態為“緩存行中的數據被修改過”,則將該緩存行狀態修改為“緩存行中 的數據未修改過”,若與指令的內存地址相對應的二級緩存行的狀態為“緩存行中的數據 未被修改過”,則不作修改;
(1-5)處理器在進行事務的提交操作時,丟棄內存中該事務所有的日志,對日志所 在的所有內存地址,執行數據的存活區間結束消亡區間從此開始的標識指令N;
(1-6)處理器在進行事務的放棄操作時,通過讀取該事務的日志,恢復內存中被該 事務修改過的所有數據的原值,對日志所在的所有內存地址,執行數據的存活區間結束消 亡區間從此開始的標識指令N。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于清華大學,未經清華大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910235722.4/1.html,轉載請聲明來源鉆瓜專利網。





