論壇風格切換
  • 2214閱讀
  • 1回復

磁碟快取RAM Disk vs. Pagefile [復制鏈接]

上一主題 下一主題
離線小豬
 

發帖
808
只看樓主 倒序閱讀 使用道具 0車 發表于: 2005-09-04
緣由:網友的探詢,引起的問題之探討!(以下是一個問題的開始應對) V2.K*CpZ7  
;`+,gVrp  
Q1.>一台電腦的RAM是多少? )94R\f  
?cvv!2B]T  
A1. ^:0?R/A  
  機台的RAM是實體,以目前看一部P-4的機器要能真正的有效發揮效能,我個人的評估是640MByte以上。 f19 i !  
s$en5)  
Q2.>Pagefile檔設定多少? }?JO[Q +  
qfu;X-$4  
A2. ?`r/_EKNv  
  Pagefile是虛擬的記憶體,如可以選用機器作業系統自動管理者(如WINDOWS XP、2003都具有),那就用這一項;它可以自己來分配一個很恰當的值。但是它也會有智能不足的時候!通常上,我個人作的實驗是「初值」為您所安裝的實體記憶體再加顯示卡的記憶體,而「最大值」是「初值」乘以1.5倍。若您在系統內沒有很多的背景程式在跑時,則可以降低一下。通常我的測試方式是──先設好後,再使用硬碟機的「讀取與寫入」測試程式,先來測一測看一看,後再來調整。使其讀取與寫入的效能值,發揮到最大,且要大約使這一效能值,在讀與寫都固定差不多時是最好的。 )fa  
ei5S<n  
Q3. *<hpq)  
  我的主機是P3, RAM最大是1G, 用RAM DISK割一個512M的RAM DISK, 主機的RAM 512M一般應該夠用, Pagefile檔設到RAM DISK上, 把CPU轉檔都在RAM裡面做, 不在硬碟裡來回存取, 還可以加快許多速度.
ReRRFkO"2  
x6,RW],FGR  
Ans. ]oY~8HW  
  關於話題先保留,若您有玩影音的話,就用您的方式試試看,但我的條件是──假設您有一個方案是由正規的DV檔轉成MPEG2檔的過程,且要用長時間來測。也就是不是三、五分鐘的片長,而是要用個一小時以上的片長,看看它要轉多久,結果出來了再來吧•••,RAM DISK,嘿回憶一下我有些歷史的故事可以談的,等您來哦! ;)kBJ @  
A@#dv2JzP  
  在以下,首先我以一篇「RAM DISK相關的應用故事」先回應問題,這同時說明了一些我們台灣之應用個人電腦,與發展「漢文系統」我看到的一個過程,最後以講到RAM Disk的使用而告一個段落。接下就是他們間的實務問題了,這我要述說如何來調校您的電腦,看看是否可以讓您的電腦發揮到另一個境界!
評價一下你瀏覽此帖子的感受

精彩

感動

搞笑

開心

憤怒

無聊

灌水
離線小豬

發帖
808
只看該作者 1車 發表于: 2005-09-04
RAM DISK相關的應用故事 `)M\(_  
#r)1<}_e#  
  在N年前還是8088、80286、80386甚或到80486時代裡(註1),擁有電腦的人大都會有一套掛在DOS底下的「漢文系統」,它不外就是「國僑」、「零壹」、「倚天」與「震漢」等,其中「國僑」和「零壹」算是最原老的,但它們一開始一套漢文作業系統都要賣得貴貴的而且保護的很絶,唯在企業裡外實鮮有人可以接觸,所以當在286、386開始普級後也要日薄西下,因為忽然出現了一套玩具漢文,出品人是「倚天」,它以類似積木式的方法在平價販賣,也就是讓大家可以以一、二百塊錢就可擁有漢文作業系統,於是在半似玩具的優勢下,一夕之間成為最大的佔有廠牌。而「倚天」也是被養肥後,非常的不自愛的始終在向大家騙錢,終於在「震漢」黑馬出現後與「微軟」WINDOWS 3.X版的相繼全面漢文化,全部都死於自己對自己的太過於「保護」! Q;ZHx.ye{  
kJi&9  
  其中就是這一個「保護」是關係到RAM的問題,而RAM DISK的出現後也叫它的保護現出了原形!因為在這一時代裡的電腦,基本上一直都是受限於由原始的80186微處理器,最大只有1MByte的「記憶圖覽」(註2)定義下而生的問題。在這一個1MByte的記憶圖覽下,它被劃分成二個主要記憶區域,一是由0位址開始的640KB稱為「程式記憶體區」,另一留下的有後段的384KB專供I/O(輸入/輸出)介面用的「I/O程式區」。在這種情況下,基本上開機只要載入英文DOS時就要佔掉了一大半,當在掛上漢文作業系統後可說就快要客滿,再來就是要起用應用軟體了可說幾乎要動彈不得了。 Po11EZa$a  
e$+f~~K  
  而這時的漢文作法與定義的字體,是以一個Word為基準(今天還是一樣;含符號、一個漢字用二個位元組,稱「全形」。若為英、數與符號就可區分「半形」與「全形」來用,那半形就是原有的ASCII只佔用1Byte),也就是說一個Word是2個Byte,即是用2的16次方等於有65536個字可作編碼的空間。在這種有限寶貴的640KB的程式記憶區內,要跑漢文實也是難能可貴,於是應用作法上就把漢字又區分成「常用、次常用與非常用」等來分配字型載入以減少對記憶的佔用,在這種困境下可想而知的要跑大形一點的、較高門檻的應用程式時是很難的。 gq_7_Y/  
Rk jKIa  
  在這一個時期裡記憶體是很貴的,無論是電子式的RAM或是電磁機械式的FPD(軟碟)、HDD(硬碟)等;當在初始階段,在一部電腦上若能夠配有1MByte的RAM算是「足壞仔」(台語;很不得了的意思)。若是未有較多認識的人,通常一部電腦買回來頂多RAM的容量則是配640KB(在8088、80286時),買386的大多是1MB,買486則會較大的配上到2∼4MB間,另大都會再加上一大(5又1/4吋)或是一大一小(3又1/2吋)的FPD,至於HDD大多都是不配用的。 T ~~[a|bLa  
Z++Z@J"  
  因為這時的記憶裝置,RAM費用1MB平均大多都在台幣1,500元左右,甚或有時缺貨時更要叫價至2,000元以上,而軟碟每部大的要在2,500元、小的要3,000元之間,硬碟10MB的則都要萬元以上,後期則就降到約40MB要在5、6千元之間。所以那時在推消時都會說:啊您還沒有必要、也用不到,不要急著買啦等降下來在考慮啦;若不加硬碟的,老實說要學電腦買電腦的大多成了電玩機台了。同時在這一時期彩色的電腦也是很貴的,在當時買回來的也都是單色的,若要換用彩色的就要更換EGA、VGA卡再配用EGA或是VGA顯示器,費用約又要用上最少一萬五千元以上了。 *- IlF]  
_E1]cbIo  
  我們生長在台灣用的就是漢字,所以在以上談的狀況條件下要在電腦上跑出漢文來,基本上有著記憶不足的問題之外,另還有速度的問題,這都非常的關係著工作順暢與完成的效率;因為「主記憶空間」的不足,所以大都的漢字字型要在RAM、FPD、HDD之間轉過來又轉過去,而您可能會看到FPD或HDD的燈號閃爍個不停且也吱吱叫個不停,感覺好像很有玩電腦的韻味喔然以今天言實在是吵死人了。在1MB的困境下、又有些機器只配備有640KB(註3)的情境下,說要叫人學習得很好、利用的很好,實是要非常的事倍功伴辛苦的事,雖在當時已有廉價可以得到的「倚天漢文」系統可用來扳回一成(這實也功不可沒啦),然在個人上通常僅能利用二個軟碟機──用開機的DOS片、漢文的主程式片、漢文的字型片等來玩。當由A碟開機載入DOS後它就可以取下不需再用到了,接著就是在A碟換放入漢文主程式和在B碟上放入字型資料庫等,當主程式起用後也才可以把它取下再改換上應用程式片。 r]JC~{  
xngeV_xc2  
  在這樣的環境下,通常的學子就是在DOS介面下練習英、漢「變換操作」,應用上就是再起用文書編輯器例如是EDIT、PE、PE2這等,來敲敲打打練練漢字輸入、BASIC程式文,以建立自己的功力和要交給學校的報告作業等,若要在漢文系統下起用其它切身的應用軟體時,例如是企業辦公室中用的「人事」、「薪資」甚或「進銷存」等管理與作報表,則大都會遇到「主程式記憶」不足的問題了。在之前言明的,在這一種情況若沒有較多的認識下,以及若沒有較多的成本來加碼機器的話,在以上的問題個人買到的或是中小企業買到的電腦,可能就是到此一遊後對電腦的學習與應用也就到此為止了。 o(d_uJOB  
vpeBQ=2\  
  在這一個指出的記憶問題上也是人家賺錢的好利機喔!因為要在漢文下的應用而言,基本上它必要限制(預置)載入字型的多少,因為字型的內碼是一回事,實情上字型可是要靠圖型組合產生的,大家都知道的圖型資料始終是佔掉大半以上的記憶空間的,當預先載入較多了雖可以跑得較快,相反的就是會佔掉大多的「主程式記憶」的要命,所以接下的應用就沒轍了。而這時的變通解決方式之一,就是「加裝HDD」和「加裝漢文字型卡」,HDD價位已談則不再述及,漢文卡另也還要在五、六千元甚或近萬元,因還有區分內含字型量的多少或16*15、24*24的字型,所以較有能力的中小企業或個人,既然要應用了在狀況允許下,還都是會再花錢買下來用的,這時的生意$$$就滾滾而來了,而這也是我要說的它們騙人的「保護」方式!  [ }p  
x7KcO0F{  
《在這要特別來表揚一個人「朱邦復」先生、臭罵一下「國民黨時代」的「政府」與「資策會」》 W7TXI~7  
q?;*g@t  
  在這一「漢文系統」群雄爭名奪利時代裡,發展漢文的不只以上談到的四家,這起碼在十幾家以上(在時間久後我也大都忘了)──如「IBM、王安、宏基」甚或還有「微軟」都是,但很痛心的一直都沒有一個良好的、標準的「共同操作環境」(CMEX)與「國家標準內碼」可言(遵行)。而老神在在的國民黨政府,還是一直在相關的業介裡,和有識之士的先鑑之明一再催促下,遲遲的不能出來領首作一下整合與推動的工作,在這時漢文用的五大套裝應用軟體(BIG 5)迫不及待已誕生了,同時用的漢文內碼就是共同發展這一五大套裝軟體之五大廠家所同時製定的內碼(也就叫BIG 5碼)。 95$pG/o  
?#BZ `H  
  而在當下最慚愧的一件事,就是由外人MS(微軟)較有能力與好心下,集合本土的大都發展廠商出來共同製定了它的這一「操作環境」,又因在利益放不開上「內碼」還是多家在並行,最後政府在被一再的指責後,才在不得不的情況下也是慢半拍的情況下,指定了國家的最高資訊單位「資策會」出來製定我們的國家電腦用的「漢文標準內碼」(即「國家通用碼」);在當時這一個單位真是一個飯桶吃飽沒事幹一樣,在它的製定後可說是把各家已知的內碼有問題的地方,不但沒有修正還再次把它給放大了,它把必要在漢、英下共存的問題上會產生的內碼衝突再次發揚光大了(笑),在那時實在是叫人非常的氣餒又暴笑而臭氣沖天,簡直就只作抄襲而又抄得•••唉!所以以後也就沒有人要用它,以致到今日的「國家通用碼」還是形同虛設、還是都是在使用最原始的BIG 5碼。 DOF?(:8Y  
tp1KP/2w[  
  因為那時在一般的環境下,漢文的內碼與英文的ASCII(註4)的共存下,會有在不是「偶數對」的情況下、或是不支援的高碼區上產生(秀出)怪字(即所謂的亂碼),甚或會造成是一個「隱形指令」或「命令」來,那在電腦上會時時碰到「亂動」或不明「當機」是一個當然的問題,這也就是一個搬石頭自砸自腳的飯桶之事,另當時的「資策會」還有其它的種種行為也都真是飯桶極致的表現;心態就是你們都是我的子民誰都不比我強的、飯桶創作出來的還可以要來引領國家的資訊發展嗎? vx\nr8'k  
r~Y>+ln.  
  可喜的事!於這一時期操作上要產生漢字的輸入法,最方便的就是「注音」輸入法,但是也是要用最多鍵的,是最大五個鍵來產生一個字,又注音同音字太多了也稱重字太多很影響輸入的速度(又要再加一鍵),有幸的在這時「零壹」科技的「朱邦復」先生發明了首創的、更便捷的「天龍」輸入法,也就是今天的「倉頡」輸入法;而我要表揚他的好事是──他不為「專利」會有源源的所得之利誘與可把持下,只為國家的資訊生根、發展前途著想,且要能夠快速的順利推動下的心願,公然的宣佈放棄他的這一權益專利,使得各家各業都可以製作「倉頡」輸入法出來用,這樣的情操真是太偉大了。 DL'd&;6  
!sg%6H?}  
  在這時期使用的DOS不外就是PC DOS(IMB PC專用版)和MS DOS(相容PC零售版),而它的版本已進入到3.X版了,此時有一個好笑的事是好多人會去爭論PC DOS或MS DOS,以比較性能、穩定與品質的高下,實際上PC版DOS還不是MS所製作的,只不過是有一些回應信息與版權的聲明相差而已!對於只有640KB的主程式空間問題,不止要多加漢文系統的台灣有這樣一個現像,實際越進步發達的地方更是需求,也就是還有很多英文版軟體同樣會有不夠的,於是在突破上LOTUS、IBM、INTEL與MS等四家,已協力合作研究出了一個擴大記憶的對策驅動法;這就叫EMS──擴展記憶區的驅動方式。在同一時間裡,一些有能力的個人、團體或機構等,也是極力在突破的,實情上在DOS 3.X版問世後,已可以解決這一個程式記憶不足的一些問題了。 K[Y c<Q  
-d|BO[4j  
  雖EMS的用法當初是針對特定廠商生產的應用軟體使用的,然在「這一扇門」(註5)被找到以後,已可以很輕易的使用閒著不用的I/O記憶區來間接擴大640KB的空間,那就是所謂的「高記憶體」(HIGH MEMORY),這時只要使用DOS V3.0版後的開機系統,事先使用HIMEM.SYS、EMM386.EXE這二道程式的驅動,就可以把有不被I/O介面佔用的區塊找出來使用,於是就可以在DOS的COMMAND介面上,把一些程式送進這一個高記憶區來跑(被劃分後的384KB之I/O專用的程式區)。起用方式有「非主動」的,通常是以一個業餘製作的工具程式,如叫LOADHIGH等名的或是DOS的COMMAND命令。另有「主動性」的,就是有些應用程式可以自己偵測出來跑進去用;當然的空下來的主程式區就會較大,也就可供應較多程式或較大形的程式來一起跑了。 I$aXnd6)  
<WM -@J(1  
  但是這一個找回來用的本是I/O介面程式專用區,會有一些潛在的問題者不能用、不安全等,比如上談的反正主程式區就是只有640KB大嘛──幹嘛要加到1MB來浪費384KB呢、反正就是那麼的大──幹嘛要LAYOUT出全部可定址的記憶區來呢;所以買到這種作法的主機板之電腦者就成為死會了。另有,介面卡用得比較多且佔用不能再移動變換者,或是BIOS的FIRMWARE寫的很死的,也因在這時BIOS都是使用EPROM,在個人上沒有EPROM硬體燒錄工具下,如有新FIRMWARE也無法更新了。 'is,^q:@  
W:`5nj]H9  
  說到此您應該要知道了一些漢文系統在騙人賺錢的方法了吧?通常上他們會跟您頭頭是道的解釋本題所談的局部問題,也就是「就是那麼的大嘛」,若您不改用硬卡漢文系統,不但跑不快甚至不能用的。的確在這一時期裡,HDD的容量雖已足夠的大了,若以不預先載入足夠用的字型以騰出空間來,也會因為HDD速度不怎麼樣,要來隨時存取字型的轉換上也不會是很快的,因此還是會很沒有效率可言;實情上它們也有刻意的,在內定下讓主程式區佔用很大,已造成了通盤性在資訊的不解下更不會去變通,所以我就可以來賺您這一筆錢囉。幹!他們絶對知道技巧、技術以及環境都有了,是可以改變的但就是不去改、變法,偏偏要來區分等級,所以就有一級一級玩具之別(積木式的加成套件,一步一步來賺您的錢)──以便宜的方式引誘您的習慣、慢慢的中了我家的毒隱不可。 =RQ )$ %  
,"@w>WL<9  
  好!您不變,RAM是可以通用、活用的,老子就是寧願花錢去買RAM來自己變,於是在相繼的DOS V4以後的HIMEM.SYS、EMM386.EXE等已可以同時選擇驅動成EMS或MMS(延伸記憶體)來用了,以及SMARTDRV.EXE、RAMDRIVER.EXE等這幾道程式的更加成熟後;嘿!嘿!我可以把您漢文的主程式、輸入法一起送到HIGH MEMEOY,使其完全不佔用主程式區了,再來我也把「符號、常用、次常用以及非常用」等字型完全轉送到RAM DISK上,餘的若有需求的就留在HDD上只要有SMARTDRV.EXE這一道程式的快取補助就可以了,還有我還可以在高記憶區找到雜散的小區塊空間來作字型的BUFFER(指更快取的緩衝器),這還要比你家預設的可用的BUFFER還要大,哇塞情況「大變了」、「大變了」!我起用漢文系統完完全全不用去佔用主程式記憶區,比起使用硬卡式漢文系統還要有一點程式必要留在主程式區裡還棒,更美的事是您的字型卡用的是EPROM我用的是DRAM,在速度又起碼要快上您的十倍以上。 ~@%(RMJm&  
NU|qX {-  
  後來黑馬的出現「震漢」漢文系統,為何他有能耐採用完全是主動性的模式機制──使用者您有驅動EMS我就跑EMS、使用者您有驅動MMS我就跑MMS,我看到有HIGH MEMORY也就自動的到那兒就定位。這下子有了一套有別於專騙人的系統出現後,它家的生意一落千丈,看在眼裡實在很不是滋味啊,更絶的事您家操作的方式我家通通有、而我家還有更方便的操作哦,所以「仿冒」、「抄襲」官司就此而起,但在操作上這應算是CMEX的規範沒有什麼不對的、不可的,要命的關鍵有人發現兩家的「主程式」內文含有的「垃圾」竟然完全是相同的,這下也就玩完了啦! XlRw Z/Wc  
!K!)S^^Po?  
  在這時MS也出了WINDOWS 3.X O.S.的完全漢文化版了,台灣發展的漢文系統在多年來辛苦摸索出來的架構、模式,以及漢字輸入法甚或TURE TYPE字型,一下子間輕輕鬆鬆完完全全的被它給吸收一了,完啦全都死光光了!當到了WINDOWS 95出現後,隨後的應用程式也因應而生,大家都一一的轉用到視窗模式下,台灣的漢文發展就此可說終了。這要怪的就是本土的都太過於自我保護,在作業系統上只能緊追著人家的屁股掛而不思突破,當別人家的也統統都具有了而更好用時,無論何人幹嘛還要去用那一種過時不長進的東西呢? T:c7@^=  
R'Sa?6xS4  
NK8<= n%"  
註1: 9`&?hi49nK  
  8088、8086微處理器(CPU)是有別的,而8086原稱80186是較早於8088(這是XT機種用的CPU),兩個雖都是16Bit的東西,但是它們有一個Memory與I/O位元長度之別的地方,在區別上80186每一指令的變換都是採用真正的16Bit在收送資料,後因大多的考量在I/O的傳送上、記憶一個碼的表達上,都是採用16Bit長度下,是要浪費很多位元記憶長度不用的尤其在I/O上,所以後來的記憶體與I/O的傳送、紀錄上都改用1Byte是採用8Bit的方式來應用,而CPU內部的運算才用8、16或32等位元長度來計算;而8088就是在這一個問題上因應後,直接由8086再換一個方式出來的編號,所以在編號上通常看到的為何從8088跳到80286、80386,會獨有一個88的代號,這兩個CPU實際在內部上並沒有太大改變的。 `q^(SM  
nZ~kZ |VS  
註2: |ribWCv0  
  「記憶圖覽」;即MEMORY MAP。在微處理器的「記憶圖覽」類型上,區分有A.I/O MAPPING MEMORY MAP和B.MEMORY MAPPING MEMORY MAP兩大種,A者則是程式記憶區和I/O記憶區各分屬不相連的兩個區塊、B者是程式區和I/O區都是使用相同在一起的記憶區塊,理論上處理速度B者可以較直接故會比較快的,但在80X86系列中都是A者,而MAC系統(APPLE 650X系列)上用的CPU早期都是B者,所以在作業系統或應用程式等,就完全的不能在不同系統的機台上相容了(當然的不相容;也在於機械的微指令語言不同),後來MAC機台也改選用A者架構的CPU,也就是後來也是使用80X86的CPU,故每一機器要跑MAC、LINUX、MS等之O.S.都可以相容了;但是還有例外,當「通道」的作法若不同時,雖讀取上沒有問題就是不能執行的,如採用的是MICOR CHANNEL技術的,這是IBM的專利;這時「語系」是相同的、「記憶圖覽」也相同,但在「圖覽」與「通道」上又有劃分的不同,而它的好處之一是我可以使用您的程式、您是不能使用我的程式地。 AHq M7+r9  
7vw;Egd@@-  
註3: AH|Y<\  
  640KB的問題,主要是「主程式區」就是這麼的大,而短見的人都會認為幹嘛要加到1MB來浪費384KB不用呢?是言之有理啦,可是後來的發展若在主機板的LAYOUT(布局)就到此為止的話,那真的是反而太浪費了資源了,必要上就只有換掉它重新買一次,然還要小心的挑選不再是這樣的LAYOUT法之主機板。 grc:Y  
Oc#>QZ3  
註4: Y|_O8[  
  ASCII─AMERICAN STANDARD CODE FOR INFORMATION INTERCHANGE。 "w9`cz9a~J  
P8<hvMF  
註5: Xo\S9,s{  
  「這一扇門」的發現,對PC的發展可說是至寶!就在當初定義後段的384KB的I/O程式區時,可說忘了還有64KB未定義到,而且這64KB剛好是一個「頁面」,非常有利於記憶的延伸、擴展切換的變換應用,也從此在傳統上具有的主程式區,在突破1MB的延伸或擴展之後,還是可以保留原有的架構不變,使其前後的程式都可以完全的相容。另在DOS下的可執行檔程式中,您會看到副檔名會有.COM與.EXE之別,這就在於小於一頁是64KB的程式定為.COM其速度會較快,大於64KB的定為.EXE其可以越頁、越區的跑很大的空間。 NZ+7p{&AN  
'$?du~L-  
Copyright by 小豬