<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      eaglet

      本博專注于基于微軟技術(shù)的搜索相關(guān)技術(shù)
        博客園  :: 首頁  :: 新隨筆  :: 聯(lián)系 :: 訂閱 訂閱  :: 管理

      作者: eaglet

      2008 年我寫過一篇博客叫 《讓.Net 應(yīng)用程序突破2G的內(nèi)存訪問限制》這篇博客主要講述了如何在32位操作系統(tǒng)下利用AWE 擴(kuò)展訪問超過2G的內(nèi)存。AWE方式雖然可以訪問超過2G的內(nèi)存,但其本身也有一些問題,首先必須要鎖定內(nèi)存,其次需要自己寫內(nèi)存管理程序來管理這些內(nèi)存,.net framework 無法在AWE 擴(kuò)展的內(nèi)存中創(chuàng)建托管堆。其實(shí)很多應(yīng)用只是想申請(qǐng)比2G稍多一些的內(nèi)存,最簡單的方法還是采用/3GB開關(guān)來實(shí)現(xiàn)。本文將講述如何利用 /3GB開關(guān)來讓32位操作系統(tǒng)下.net 應(yīng)用程序申請(qǐng)超過2GB的內(nèi)存。

       

      首先簡單說一下這個(gè) /3GB 開關(guān) (知道的可以不看)

      默認(rèn)情況下,Windows 可以對(duì)總計(jì) 4 千兆字節(jié) (GB) 的虛擬地址空間進(jìn)行尋址。默認(rèn)情況下,此地址空間中的 2 GB 為內(nèi)核(操作系統(tǒng))保留,另外 2 GB 是為用戶模式程序保留的。當(dāng)你將 /3GB 開關(guān)放入操作系統(tǒng)的 Boot.ini 文件中時(shí),你就重新分配了虛擬地址空間,給用戶模式程序提供 3 GB 的空間,同時(shí)將內(nèi)核限制為 1 GB。

      設(shè)置辦法:C:\boot.ini 文件做如下修改:

      [boot loader]
      timeout=30
      default=multi(0)disk(0)rdisk(0)partition(2)\WINNT
      [operating systems]
      multi(0)disk(0)rdisk(0)partition(2)\WINNT="????" /3GB

      如下操作系統(tǒng)可以支持 /3GB 開關(guān)

      Windows XP Professional
      Windows Server 2003
      Windows Server 2003, Enterprise Edition
      Windows Server 2003, Datacenter Edition
      Windows 2000 Advanced Server
      Windows 2000 Datacenter Server
      Windows NT Server 4.0, Enterprise Edition

      Windows VISTA , Windows 7 和 Windows server 2008 也支持這個(gè)開關(guān)

       

      詳見

      http://www.microsoft.com/whdc/system/platform/server/PAE/PAEmem.mspx

       

      設(shè)置完后重新啟動(dòng)系統(tǒng),這時(shí)應(yīng)用程序就可以申請(qǐng)超過3G的內(nèi)存了。一切好像到這里就該結(jié)束了,然而并非如此。

      當(dāng)我運(yùn)行我在.net framework 下做的測(cè)試程序時(shí),我發(fā)現(xiàn)3GB開關(guān)打開后,這個(gè)測(cè)試程序依然無法申請(qǐng)超過2G的內(nèi)存,內(nèi)存申請(qǐng)到1.5G以上時(shí)就無法再分配內(nèi)存了。

      查找資料后我發(fā)現(xiàn),操作系統(tǒng)在支持/3GB參數(shù)后應(yīng)用程序也要做相應(yīng)的修改,告訴操作系統(tǒng)可以按照/3GB方式運(yùn)行才行,我想這很可能是出于對(duì)應(yīng)用程序兼容性方面的考慮。

      為了告知操作系統(tǒng)這個(gè)應(yīng)用程序可以支持/3GB方式,我們需要往exe 文件頭中添加一個(gè) IMAGE_FILE_LARGE_ADDRESS_AWARE 標(biāo)志。添加的方式很簡單:

      在你的系統(tǒng)的 Program Files\Microsoft Visual Studio 8\VC\bin 目錄下找到 editbin 這個(gè)可執(zhí)行文件,在命令行下執(zhí)行:

      editbin /LARGEADDRESSAWARE yourapplication.exe 這里的yourapplication.exe 需要輸入的是你的.net 應(yīng)用程序的路徑名加文件名。

      執(zhí)行了這條語句后,我再次運(yùn)行測(cè)試程序,內(nèi)存可以申請(qǐng)到 2.5G了,比2GB模式下多了1G內(nèi)存可以使用。

       

      最后多羅嗦一句,為什么.net 應(yīng)用程序在 2GB 情況下只能申請(qǐng)最多 1.4-1.6 GB 的內(nèi)存?

      這是因?yàn)?net 的垃圾回收器在工作時(shí)需要拷貝 live objects,.net framework 需要為它保留一定空間的內(nèi)存來完成這些拷貝工作。這也是為什么Microsoft 建議asp.net 應(yīng)用程序內(nèi)存分配的上限最好設(shè)置為800M的原因.

      .net 應(yīng)用程序如何優(yōu)化性能,參見下面鏈接,大家有興趣可以去看看,這里不再多說了,離主題有點(diǎn)遠(yuǎn)了。

      Improving .NET Application Performance and Scalability

      主站蜘蛛池模板: 国产小受被做到哭咬床单GV| 四虎国产精品永久在线| 91精品国产老熟女在线| 一本精品中文字幕在线| 国产一区二区在线有码| 国内外精品激情刺激在线| 久久久久无码精品国产AV| 大陆一级毛片免费播放| 四虎永久免费精品视频| 凸凹人妻人人澡人人添| 国产91精品调教在线播放| 天天做天天爱夜夜爽导航| 伊人成人在线视频免费| 国产精品自产在线观看一| 一边吃奶一边摸做爽视频| 丰满高跟丝袜老熟女久久| 免费无码成人AV在线播放不卡| 成人国产精品一区二区网站公司| 色综合久久夜色精品国产| 亚洲国产欧美在线人成| 免费天堂无码人妻成人av电影| 熟女系列丰满熟妇AV| 亚洲av无码精品蜜桃| 国产中文字幕久久黄色片| 精品国产一区二区三区av性色| 国产成人片无码视频在线观看| 99久久国产综合精品女图图等你| 国产91午夜福利精品| 亚洲综合小综合中文字幕| 免费人妻无码不卡中文字幕18禁| 欧美午夜精品久久久久久浪潮| 亚洲熟女乱综合一区二区三区| 成A人片亚洲日本久久| 377P欧洲日本亚洲大胆| 峨眉山市| 国产精品∧v在线观看| 亚洲国产成人AⅤ片在线观看| 91精品国产自产91精品| 青青草无码免费一二三区| 巨爆乳中文字幕爆乳区| 亚洲熟妇无码av另类vr影视|