1、硬盤引導
從硬盤的0磁道開始的先進個扇區處讀取信息,以載入操作系統引導程序,在這一步上,由于系統能讀取的只是一個扇區的數據資料,只有512Kb,因此不能直接將操作系統的引導程序放入其中,而只能讀入一個很小巧的程序,再由那個程序來引導操作系統,以Windows為例,在這一步被讀入的是IO.SYS和MSDOS.SYS(安裝了Win98后有這個)。由于一般來說這個程序都是由各個基礎操作系統所默認的,因此一般沒有辦法進行自定義優化。不過值得一提的是如果使用的是Windows98系統,那么通過定制MSDOS.SYS文件,可以在速度上達到一定的提高,讓我們打開瞧瞧:
[Paths]
WinDir=C:Windows ;Windows所在的目錄
WinBootDir=C:Windows ; 引導目錄
HostWinBootDrv=C ;引導盤(建議這三個別改動)
[Options]
BootMulti=1 ;是否按f8出菜單,以及是否f4/f2快捷功能菜單有效,值得注意,美萍等管理軟件之所以能屏蔽啟機時候按f8/f4/f2無效果就是在這里動的手腳
BootGUI=1 ;是否圖形引導
DoubleBuffer=1 ;雙倍緩沖,建議設置為1
AutoScan=1 ;是否每次啟機檢查硬盤,這對非法關機后修復磁盤很有幫助,不過如果對自己的Win98很有信心,不妨設置成0
WinVer=4.10.2222 ;Windows的版本號
BootWin=1 ;以Windows方式引導
DrvSpace=1 ;(這個選項功能不明)
DblSpace=1;這個選項功能不明)
LOGO=1 ; 是否顯示開機畫面,事實上Windows的啟機畫面載入大概會花費1秒左右的時間,既然我們想優化,那么就設置成0吧
BootDelay=0;引導延遲,設置成0快
DisableLog=0;不記錄引導時候的log,如果追求速度,可以設置成1
2、操作系統引導
Windows2000/XP的Boot、Linux和Freebsd的LILO、Grub都是非常出色的操作系統引導程序。如果想優化,就把自己常使用的操作系統設置為默認項目,并將默認的啟動時間修改為1秒。以Windows2k/xp 為例,可以用記事本等文字編輯工具打開系統盤根目錄下的boot.ini文件(注意,這個文件本身是系統+隱藏屬性),其中有一行為timeout=xx,其中這里的xx,就是系統在引導系統時候的等待時間。為了達到減少時間的目的,我們可以寫成timeout=1,注意別寫timeout=0,這表示無限等待,直到用戶手工選定了為止。同樣的,在grub中有一個menu.lst文件,其中的timeout參數的值與上面提到的Windows系統中boot.ini的timeout參數作用、設置方法上完全一樣(這也是天緣提倡地學好一個操作系統貴在了解其原理和工作流程,自然就會一通百通的道理。)
3、載入基本操作系統
這一部分中,操作系統將自身的程序、連接文件載入,由于載入的是基本文件,在Windows中就是Windows的內核,而在UNIX中,則可以把這步理解為內核的載入。由于Windows的內核是保密的,因此沒有辦法擅自修改,而在UNIX中,則可以利用重新生成內核的命令,嘗試去掉自己不需要的驅動、設備支持和功能來縮減內核的功能并減少啟動時間。這也就是為什么人們很看好Linux在嵌入式行業發展的原因——由于內核完全可以定制,所以可以只保留需要的功能,整個內核可以做得非常小巧。Ok,回過來,因為內核程序速度非???,所需要的時間本身就很少,而關于定制Linux的內核,可以參考天極網的相關文章。各位朋友切記一點:“由于操作系統所在的分區本身就時常進行讀寫操作,因此好為操作系統單獨劃分一個分區,而把臨時目錄、暫存盤、文件、游戲、備份等放到其他分區去。”這一點是我們進行下面的優化步驟的大前提,以下我們的幾步操作,都是以此為大前提來進行的。
4、定義臨時目錄
由于操作系統在執行一些煩瑣的運算、解壓縮文件的時候,都是先將文件臨時放在某個目錄下,在任務執行完后再刪除。Windows下默認是放在操作系統下的temp目錄中,UNIX下默認是放在/tmp中。如果我們能想辦法提高其讀寫速度,則就能在這步中達到優化的效果。由于硬盤的物理形態因素,導致硬盤在內區讀寫速度會比外區更快一些,因此考慮將臨時目錄放在靠近磁盤內區物理位置的地方。在Windows、UNIX等大多數操作系統情況下,都是越分在前面的分區越靠近內區,越分在后面的分區越靠近外區。UNIX下可在劃分了/boot后,馬上劃分/tmp分區;在Windows下由于根據第3條中提到的盡量減少操作系統所在分區的讀寫操作,因此我們將臨時目錄建在D盤, 針對Win9x和2000的方法略有出入:
Win9x:
1.在D盤下新建立一個目錄temp;
2.用記事本打開c:autoexec.bat(如沒有,可自行建立一個),輸入以下兩行;
@set temp=d:temp
@ set tmp=d:temp
Win2000/XP:
1.在D盤下新建立一個目錄temp;
2.打開“控制面板”——“屬性”——“高級”;
3.在“系統變量”這里,將temp和tmp的值,都改為d:temp;
好了,重新啟機之后,就生效了。不過由于Windows仍然有某些程序的默認臨時目錄不是我們所指定的temp目錄,所以還需要手工指定一下。以IE為例:“工具”——“Internet選項”——“Internet臨時文件”這里的“設置”——“移動文件夾”,將臨時目錄指定成我們的d:temp就行了。
值得一提的是,不管是Windows也好,UNIX也好,相當一部分用了臨時文件后沒有清除它,因此可以定期每周把d:temp清空。在UNIX下對于這樣的定期命令可以通過cron來完成。
5、定義虛擬內存盤
我們的操作系統在調用程序,相關的資源文件的時候,都需要將程序由速度較慢的外存,調用到速度較快的內存中之后再進行操作。由于外存的價格相對內存為低,因此大多數用戶在內存不夠充裕的條件下,一般會選擇用外存硬盤來虛擬內存使用。需要說明的是,這只是在技術上的虛擬內存,并不能真正使這部分硬盤的讀寫速度有任何提升。因此在資金允許的情況下,建議用戶能夠升級到512M內存為比較適合。天緣常常見到很多用戶盲目追求高速cpu,而忽略了對內存的需求。事實上只有類似Photoshop、3D MAX、WinAMP等需要即時演算、解碼操作(圖形類的渲染大多可以通過顯卡來完成來減輕cpu負擔),大多數常用的辦公軟件、第三方工具其實對CPU并沒有很大的消耗,而是需要大量高速內存的支持。按照我們上一步中的知識,自然虛擬內存盤的讀寫速度也應該是越快越好了?所以很多書上在介紹unux安裝的時候,會建議swap分區靠前;而Windows下,我們則可以指定把虛擬目錄放到d盤下去。同樣,針對Win9x和Win2k/xp有兩種方式來完成。
Win 9x:
1. 打開“控制面板”——“屬性”——“性能”——“虛擬內存”;
2.將虛擬內存指定為自定義,選擇d盤;
3. 重新啟動計算機;
Win 2k:
1. 打開“控制面板”——“屬性”——“高級”——“性能選項”;
2. 在這里,如果您的機器是自己用,就選“應用程序”,如果是提供Ftp或者Web服務,就選擇“后臺服務”。(由此可見,微軟是為了節約開發成本,將Win2k的pro/server/advance server三種版本用同樣的構架搭建出來的)
3. 選中“虛擬內存”這里的“更改”
4. 將c盤的虛擬內存去掉,將d盤的虛擬內存根據需要進行適當設置;
5. 重新啟動計算機;
恩,經過這么一來。當計算機發現內存不夠的時候,就會在d盤下建立虛擬磁盤來模擬內存使用了。虛擬出來的內存是一個在Win9x下名為Win386.swp,Win2k下名為pagefile.sys的文件。別忘記將原來的c盤下的同名文件刪除,以增加c盤的可用空間喲。當然,硬盤的讀寫速度是遠遠不及內存的,因此這只是權宜之計,添置更多的物理內存才是正解。
6、載入系統服務
在這一步中,系統將會載入基本的服務。例如Win2k下的“控制面版”——“控制工具”——“服務”中的項目;UNIX下也類似。在這里,一般來說我們不能對服務的內部進行改造以增加效率,但是我們只選擇需要的服務,而關閉不必要的服務。在這里,個人用戶和服務器管理員都要記住的一條定律會起作用“可開可不開的一定不開,可用可不用的一定不用”,這樣不但會減少系統的啟動時間、增加系統的可用內存、并且也盡量地避免了安全漏洞。記得前輩曾經指點過我:“服務器提供的服務越多,則可能存在的漏洞也越多,越容易被攻擊”。但是不管在w2k還是在UNIX中,默認打開的一些服務是我們所不需要的,甚至是危險的。以Win2k為例,“遠程控制注冊表”、“dhcp服務器”等等這些功能居然都是默認開著的,而UNIX下的不少操作系統默認時候“sendmail”、“smaba”也是開著的。
所以,根據自己的選擇,恰當的選擇必要的服務。這一步會相當消耗時間,而且也會遇到對某些服務的疑問,但性能的提升也具有大潛力。值得一提的是,一些后臺運行的程序也將自己添加到其中,常見的例如殺毒軟件,以及令人討厭的沖擊波病毒。關于詳細的介紹,天極網上介紹操作系統的一些文章中都有詳細描述,我在這里一一寫出,就有騙稿費的嫌疑了。
7、載入自定義服務
之所以要把這一步與上面的一步分開,一來是因為他們存放的啟動文件位置有差異,二來有的系統服務是必須啟動的,如果不啟動則連操作系統也無法按照常規方式運行起來。例如Win2k服務中的“Logical Disk Manager(邏輯磁盤管理器監視狗服務)”就是專門對硬盤進行管理的。自定義的服務項目,在Windows中,存在注冊表的run系列鍵中(SoftwareMicrosoftWindowsCurrentVersionRun、SoftwareMicrosoftWindowsCurrentVersionRunonce、SOFTWAREMicrosoftWindowsCurrentVersionRun、SOFTWAREMicrosoftWindowsCurrentVersionRunOnce、SOFTWAREMicrosoftWindowsCurrentVersionRunOnceEx、SOFTWAREMicrosoftWindowsCurrentVersionRunServices);而在UNIX則是用特定位置的文本文件來保存,例如redhat下是/etc/rc.local文件,一行一條shell命令,非常簡單明了。一般來說,這一部分的服務即使全部去掉,也不會影響系統的啟動,但有的操作系統“原裝”服務可以令我們使用的時候更得心應手。同時在這里,也是很多Windows木馬藏身的地方。
在自定義服務中,可以將自己不需要,或者很少用到的一些服務去掉(例如天緣就把音量調節的服務去掉了,因為我從來都喜歡直接擺弄音響);也可以把自己每次啟動系統都要運行的一些程序加入進去(例如天緣在Linux下的fvwm啟動就加在/etc/rc.local中)。合理的使用它,選擇恰當的程序去掉無用的程序,也可以達到相當好的性能優化目的。順便為Windows的朋友們推薦一個我很喜歡的注冊表編輯工具,名字是RegHance,非常簡單方便。
8、定義GUI
在這里,為什么特別提到GUI呢?Windows的用戶可能比較有疑惑,因為Windows的圖形界面是嵌入內核的,不過在UNIX下則是獨立的。在這一部分上,由于操作系統的獨立性,因此要詳細地講解不大可能。我只給出一個思路:“盡量縮減無用的資源消耗”。例如:控制GUI的加載字體數量。事實的確如此,任何載入的資源都會消耗掉系統的內存,由于中文的特殊性(文字眾多,非字母組合),導致一個中文字庫比一個英文字庫大上很多,自然消耗的內存也大了很多(現在明白了為什么傳呼機、手機、嵌入系統等等rom/ram受限的場合一般采用英語了吧?因為它總共就26個字母,在這點上,的確比漢字具有優越性。同樣的道理從我們所用的鍵盤也能體現出來)。
網站名稱:從八個方面來探討計算機操作系統的優化
分享地址:http://m.newbst.com/news45/260445.html
成都網站建設公司_創新互聯,為您提供網頁設計公司、App開發、品牌網站設計、微信公眾號、網站營銷、網站策劃
廣告
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源:
創新互聯