<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 內(nèi)存網(wǎng)格關(guān)鍵技術(shù)探析

          內(nèi)存網(wǎng)格關(guān)鍵技術(shù)探析

          作者: 時(shí)間:2012-07-20 來(lái)源:網(wǎng)絡(luò) 收藏

          (二)Cache一致性問(wèn)題

          在單處理器(uniprocessor)系統(tǒng)中,由于處理器與10子系統(tǒng)看到的視圖不同而產(chǎn)生了Cache一致性問(wèn)題。這是因?yàn)?0子系統(tǒng)直接讀寫(xiě)的是區(qū)域:處理器在寫(xiě)回(write-back)策略下,首先讀寫(xiě)的是Cache,只有當(dāng)讀寫(xiě)的塊要被替換時(shí),才將該Cache中的塊內(nèi)容寫(xiě)回到。這就產(chǎn)生了處理器看到的內(nèi)存視圖與10子系統(tǒng)看到的不一樣的情況。在多處理器(multiprocessors)系統(tǒng)中,Cache一致性問(wèn)題是由對(duì)共享數(shù)據(jù)的緩存引發(fā)。在RAM Grid系統(tǒng)中。由于RAM Grid所擴(kuò)展的緩存層次位于主存和磁盤(pán)之間,處理器并不會(huì)直接進(jìn)行讀寫(xiě)。所以RAM Grid系統(tǒng)并不存在Cache一致性問(wèn)題。

          四 異步緩存寫(xiě)入

          為了不影響系統(tǒng)效率,內(nèi)存系統(tǒng)采用了異步緩存寫(xiě)入的方法來(lái)完成內(nèi)存客戶節(jié)點(diǎn)對(duì)內(nèi)存服務(wù)節(jié)點(diǎn)的數(shù)據(jù)更新。內(nèi)存系統(tǒng)使用函數(shù)截獲方法來(lái)修改磁盤(pán)10的執(zhí)行流程,異步寫(xiě)操作發(fā)生在函數(shù)截獲過(guò)程中,而函數(shù)截獲過(guò)程發(fā)生在核心態(tài),所以異步緩存寫(xiě)入不得不選擇在核心態(tài)實(shí)現(xiàn)。為了使寫(xiě)入過(guò)程不對(duì)原來(lái)的。系統(tǒng)執(zhí)行流程造成較大的性能損失,采用了內(nèi)核線程的方法來(lái)完成寫(xiě)入過(guò)程。在內(nèi)核模塊中,我們?cè)O(shè)立了一個(gè)全局緩存區(qū)用以記錄內(nèi)存客戶節(jié)點(diǎn)磁盤(pán)讀寫(xiě)函數(shù)中產(chǎn)生的“新”緩存數(shù)據(jù),而使用一個(gè)內(nèi)核線程來(lái)將內(nèi)存客戶節(jié)點(diǎn)中的新緩存數(shù)據(jù)周期性的寫(xiě)入到內(nèi)存服務(wù)節(jié)點(diǎn)的虛擬塊設(shè)各中。這樣,整個(gè)問(wèn)題演變成了傳統(tǒng)操作系統(tǒng)中的讀者/寫(xiě)者問(wèn)題。緩存數(shù)據(jù)區(qū)的每一個(gè)塊中存放著一個(gè)緩存數(shù)據(jù)結(jié)構(gòu)信息。這個(gè)數(shù)據(jù)結(jié)構(gòu)中包含有設(shè)備號(hào)、塊號(hào)、塊大小、緩存數(shù)據(jù)內(nèi)容和使用標(biāo)志位等元信息,這些信息主要用于緩存數(shù)據(jù)本身的管理和緩存數(shù)據(jù)在內(nèi)存服務(wù)節(jié)點(diǎn)上數(shù)據(jù)的定位。

          更多醫(yī)療電子信息請(qǐng)關(guān)注:21ic醫(yī)療電子頻道


          上一頁(yè) 1 2 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();