Q :在SAP Business One中如何才能提高系統內存分配

以下內容主要針對SAP Business One 軟件在使用過程中可能遇到的內存不足的問題,所對其進行優化和改善作用。

按照企業業務發展需求的不同作為其使用的ERP系統SAP Business One (簡稱B1)數據庫的數據量也隨之增大,在這種情況下會導致操作系統在運行某些任務的時候,例如在生成復雜報表、系統同時運行多個add-on插件等情況下,操作系統會報錯,這也說明了其內存不足,或者操作系統直接失去響應,而非正常關閉。

關于這個問題需要從操作系統上進行查找原因,實際理論上而言,不管電腦系統安裝了多少物理內存,對一個32位的應用程序來說在內存空間中能使用的內存最多只有4GB。而在32位的windows系統中,正常情況下系統限制是2GB容量,另外2GB是被操作系統內部保留使用。而我們知道,目前發行的B1還是典型的32位Windows程序,受限于Windows系統的這個限制,B1能使用的內存可能也就只有2GB。

從這個理論得出對B1而言2GB的內存容量的確不夠使用,對B1來說一個大容量的數據操作時候或啟動了多個add-on的時候,內存的容量肯定不夠使用。

關于這個問題,SAP早以意識到此問題的嚴重度,并做了一些策略來應對此問題。

Windows可執行程序有一個標志位: IMAGE_FILE_LARGE_ADDRESS_AWARE 。當設置了這個標志位的時候,Windows就會試圖為該應用程序分配更多的內存空間。具體情況是這樣的:(參見 http://msdn.microsoft.com/en-us/library/windows/desktop/aa366778(v=vs.85).aspx

  • 如果當前Windows是32位的,普通模式啟動,那么很遺憾,情況沒有改善。該32位應用程序得到的內存空間還是2GB,另外2GB為操作系統保留。
  • 如果當前Windows是32位的,且是以/3GB 啟動參數方式啟動的,那么,該應用程序將得到3GB的內存空間。而操作系統自身只保留1GB的空間地址。
  • 如果當前Windows是64位的,那么32位應用程序將直接得到4GB的內存空間。

而我們的B1應用程序現在已經是設置了 IMAGE_FILE_LARGE_ADDRESS_AWARE 的標志位的。所以,我們可以利用這一特性,配合操作系統,將B1的尋址空間由2GB擴展為3GB甚至4GB。由此,原來很多因內存不夠而失敗的操作,將會有明顯改善,可能就會通過了。

通過上面分析和描述,最佳的方案是推薦大家使用64位的操作系統。隨著windows 7流行,64位的操作系統也越來越貼近日常的工作生活,甚至也包括了即將發布的windows 8 的64位版本。在這樣的情況下,作為客戶不必需要做任何的設置,B1系統直接就可以享受4G的內存空間!

而如果你的操作系統還停留在32位,比如32位的Windows XP或者Windows Server 2003,那么根據上面的分析,還是有改進余地的,就是給操作系統加上啟動參數 /3GB。這樣可以讓B1的可用內存從2GB擴大到3GB。

參閱http://technet.microsoft.com/en-us/library/bb124810(EXCHG.65).aspx , 修改啟動參數的具體操作如下:

    鼠標右擊我的電腦,選擇屬性,出現系統屬性對話框。
    點擊高級選項頁。
    在啟動和恢復設置中,點擊設置,出現啟動和恢復對話框。
    在系統啟動中,點擊編輯。
    在[Operating Systems]這一節,將/3GB這個參數添加到啟動項的/fastdetect的后面。
    保存修改,關閉記事本。
    點擊確定兩次,關閉打開的對話框。重啟動電腦,設置生效。

A :
广东麻将怎么打 玩什么彩票可以稳赚不赔 上海快三精准预测号码 浙江体彩6十1开奖结果 黑龙快乐十分走势图表 江苏十一选五开奖数据 上海时时乐开奖走势 实时吉林快三官网 工商银行理财产品 陕西福彩快乐十分电视竖屏版 上海时时乐走势图2oo期