首頁>技術>

DOS環境下的大部分程式都是在常規記憶體中執行,如果某個程式由於記憶體不夠而執行失敗,最常見的問題就是常規記憶體不足。下面介紹幾種常用的釋放常規記憶體的方法:

  一、當系統配置有擴充套件記憶體時,可以將DOS的大部分程式碼和Command.com的暫駐記憶體部分安裝在高記憶體區(HMA)。 這要求在config.sys中包含有下述命令:       

  device=Himem.sys

  dos=high

  雖然Himem.sys本身也要佔用少量的常規記憶體,但可以使用HMA將為我們節省出更多的常規記憶體。

  二、精簡config.sys和autoexec.bat檔案的內容,不啟動那些不必要的記憶體駐留程式,這些記憶體駐留程式往往佔用很多常規記憶體。

  如果config.sys檔案中含有安裝smartdrv.exe或ramdrive.sys的device命令,可以取消它們以節省常規記憶體。特別是smartdrv.exe要使用大量的常規記憶體。如果一定要使用ramdrive.sys,應保證RAM盤建在擴充套件記憶體中,而不是在常規記憶體中。

  如果config.sys檔案含有buffers命令,應減少buffers指定的磁碟緩衝區數目,每一個緩衝區會佔用532個位元組的常規記憶體。但是過多地減少盤緩衝區的個數會造成一些程式不能正常執行,一般buffers不宜小於15。

  如果config.sys檔案中包含lastdriver命令,取消該命令或將lastdriver設成J或K,而不要設成Z。因為DOS為每個允許訪問的邏輯驅動器在記憶體中建立一個對應的管理塊CDS,每個CDS大約佔用80多個位元組的常規記憶體。

  config.sys檔案中的device和devicehigh命令的次序是很重要的,它將影響記憶體的有效使用和config.sys啟動時的一系列程式的正確執行。在config.sys檔案中最好按以下次序安裝裝置驅動程式:

  1 Himem.sys;

  2 使用擴充套件記憶體的的裝置驅動程式;

  3 emm386.exe,如果使用emm386模擬擴充記憶體並提供對高記憶體塊(UMBs)的存取功

   能,那麼EMM386命令列應包括RAM開關而不用NOEMS。NOEMS禁止emm386.exe模擬

   擴充記憶體,但它為安裝裝置驅動程式和執行其它程式提供最大的可用高記憶體塊。

  4 使用擴充記憶體的的裝置驅動程式;

  5 使用高記憶體塊(UMBs)的裝置驅動程式。

  對於autoexec.bat,我們的建議是:去掉使用者不需要的那些記憶體駐留程式;如果只在Windows中使用滑鼠,不要安裝任何滑鼠裝置驅動程式,比如mouse.com,因為Windows有一個內建的滑鼠裝置驅動程式。

  三、儘可能地在高階記憶體區(UMB)中安裝裝置驅動程式和執行其它的記憶體駐留程式。

10
最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 2021-02-28:給定一個整型陣列arr,和一個整...