在兼容機的操作過程中“非法操作”是很常見的故障現(xiàn)象。經(jīng)過長時間的摸索和資料的搜集、整理,明白了它的成因及找到了不少對該故障的解決方法。不敢獨享,特奉獻給廣大讀者,讓大家擺脫“非法操作”的困擾。
8 F. g. E. c3 q" S7 V, L G
' T) m- J4 w: m( F在Windows 9x系列中,是用保護模式來管理內存的。所謂保護模式,就是由Windows 9x給每個程序分配系統(tǒng)資源和訪問權限。這樣一來,將會減少一些不必要的內存占用。但是,當某個應用程序試圖侵占其他應用程序的系統(tǒng)資源,或是越權使用的時候,就會出現(xiàn)“非法操作”。“非法操作”造成的原因很復雜,不僅可以由軟件問題引起,也可由硬件引起,還有病毒也來作怪。下面,我將分軟件及硬件兩方面的原因給予介紹。為了使本文具有實用性及可操作性,每個原因都給出了典型例子和它的解決辦法。
8 @0 \7 b) O2 g1 V
' _- l0 v$ {( C* R軟件方面
1 W( z4 F; \5 X$ J1 {1.由軟件自身的不完善(BUG)引起
9 M. n! _6 \& W/ }0 l" J! X典型例子:Photoshop圖形軟件在運行時產(chǎn)生的“非法操作”。
( t% l( W c. l) f$ A6 V
& g) v, ]: H) K; w& G" z解決:將軟件升級為高版本或升級補丁程序。如安裝Windows 98的sp1就非常必要了。運行期間,應減少其他程序對內存的占用,可關閉病毒防火墻、減少剪貼板中的不必要內容。也可根據(jù)自己的情況,升級一下顯卡、聲卡、或是顯示器的驅動程序或將它們更換成新件。5 {7 ^" v6 {* x. T$ y1 {
2 \$ E; @4 w) \2.由病毒感染、病毒的殘留“僵尸”、冰河木馬引起
: G- L( H' |" W4 w p典型例子:.DLL文件失效。* f4 ^; z5 {* ~$ \2 k
3 }; q3 F3 B: g+ D* ?解決:(1)在有些病毒的發(fā)作過程中,往往會伴隨著一些文件的改動。一旦某些重要文件(如.sys .dll .vdx...)被改動過以后,機器會很難正常工作。方法如下:先用干凈的引導盤啟動微機,后用最新的殺毒軟件清除病毒,再用“系統(tǒng)文件檢查器”或者“Ext.exe”進行文件的恢復。
2 |* O# z. T; f) _2 s) \6 W, F1 ~3 v, G3 ?$ L# q- f
(2)終止內存中正在運行的冰河木馬,然后進入注冊表,刪除“KEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current-Version\Run”和“RunServices”的鍵值;將“HKEY_CLASSES_ROOT\xtfileshellopenco-mmand”的鍵值改成“C:\Windwos\NOTE-PAD.EXE %1”;重啟到DOS,再到硬盤C:\Windows\System中,將Kernel32.exe和Sysexplr.exe刪除。' Q( }' j; [# Q3 U' i" a0 L
' X! o9 ]4 x6 F# V' o7 K
3.由系統(tǒng)文件的損壞或丟失引起
2 j6 N( b# L* p7 Q5 X典型例子:Rundll32程序執(zhí)行無效,即將關閉。 O I+ H: C5 Y
: q5 f2 C' H$ b解決:方法一:當按下“詳細資料”按鈕時,若顯示:“Rundll32 caused a general protection fault in module Mmsystem.dll....”信息,原因很可能就是你的 System.ini 文件里,在[boot]這個區(qū)段中,少了:drivers =mmsystem.dll 這一行造成的。你自己補上去就可以解決了。為什么會有這個錯誤的發(fā)生呢?大部分都是由于在使用控制面板“添加新硬件”時,使用不正確而造成的。例如,需要你提供驅動程序而你又不能提供正確的驅動程序造成的。使用記事本,打開位于 C:\Windows 下的System.ini 文件。找到“[boot]”這個區(qū)段。補上一行“drivers=mmsystem.dll”。補上后,保存,然后重新開機。+ q9 `/ E, S% T0 V
2 o2 N/ ~- Y9 e; Y! v0 E3 {4 W5 Q如果你不能確定該故障是由什么原因造成的,可以用“系統(tǒng)文件檢查器”,在設置之中,選擇“檢查刪除的文件” 、“檢查修改過的文件”,還可以添加新的文件類型來進行檢查、恢復。
0 q; U9 v5 ^* N& G# I, @ \0 f8 w5 ]- \+ r5 O' i; P$ [" Z
4.由軟件之間的不兼容引起
* [1 d$ L# z3 i2 h# r典型例子:Windows 98下的KVW3000所引起的“非法操作”。( y( `' m$ p8 Y2 r5 I0 T
h* {. V, y. r( t
解決:在前面,我曾講過Windows 9x“內存管理”的概念,病毒軟件運行過程中將不遵循這種方式,最終造成“非法操作”的出現(xiàn)。具體方法:對掃毒軟件的升級,或者不用病毒防護。還可以不加載 Windows 9x的內存管理程序Emm386.exe。- l9 A! `5 ^6 i( j5 B0 e: j5 E
3 J' b9 a8 x& _! d5.由緩存設置不合理引起
& ^5 b7 X# m( _4 @: s$ @典型例子:極少出現(xiàn)的,沒有規(guī)律可循。4 n( [( U9 i! f1 x( a8 Y3 B1 M
- e4 I1 e+ A; x {8 N& M1 L解決:遵循緩存的設置規(guī)則:4 B* g* k" b5 r1 S8 u7 E
0 e; A! k/ [: A* x
?(1)Win386.swp是Windows的“虛擬內存交換文件”,簡單地說,就是拿一部分硬盤空間當作內存使用,先把一些內存中閑置太久的程序,放到硬盤上,等CPU要用的時候,再從硬盤的win386.swp里讀出來。它的大小按物理內存的2倍來設置。(2)在Windows 98下,使用虛擬設備磁盤緩存Vcache。在“系統(tǒng)配置實用程序”中,找到sysytem.ini,再找到“[vcache]”小節(jié),添入: MinFileCache=16384 MaxFileCache=16384 ChunkSize=512。上面的數(shù)值是以64MB為例采取的,一般原則是:物理內存×25%×512=VCache。(3)CD-ROMCache優(yōu)化,注冊表中“HKEY_LOCAL_MACHINE\Systm\CurrentControlSet\control\FileSystem\CDFS”,右邊能看到“CacheSize”和“Prefetch”。如果你現(xiàn)在是使用Windows 98推薦的4倍速設置的話,它們的值應該是“0000026b”和“000000e4”,我們需要分開來修改這兩個數(shù)值,我這里省略了計算方法,大家可以參考以下數(shù)據(jù)值,并根據(jù)自己的需要來修改吧,修改完后需要重新啟動。
8 T7 l& N4 T& E0 j6 j: i3 R! ?% d+ }; q, ~: @* N
6.由系統(tǒng)資源匱乏引起+ r1 D8 b$ ]3 Q, x4 W5 U4 ]# y
典型例子:打印或保存時引起的“非法操作”。% F" r( v. p6 J4 M# x
8 Z0 y: B) p" n# y, h解決:升級內存,加大緩存。移除一些不必要的軟件,如:桌面主題、屏幕保護、計劃任務、聲音和輸入法指示器、聲卡的DOS驅動程序、防火墻、查毒軟件、背景、Office 2000的豎式工具欄等等。最好是在啟動微機后,先運行比較大的軟件。還應加上一個良好的內存管理專家軟件。/ I9 ]; U% ^7 O# O' g% s# K
1 l0 ?6 y2 @4 a, r( u
硬件方面
) B* O: v5 G7 y9 o" R a1.由系統(tǒng)及其系統(tǒng)部件過熱引起+ \9 Z) p p# r. K% S: r5 z# E J
典型例子:SDRAM的過熱故障。( e. H9 x$ {4 ?3 T
0 E$ V8 C) Q6 h H. y ?! Q
解決:選擇好一點的散熱片和散熱風扇,風扇轉速要高,散熱片的散熱面積要大,散熱片材質要利于散熱,與被散熱部件的接觸面積要大。內存的散熱:現(xiàn)在市場上已經(jīng)出現(xiàn)了內存的散熱片,是一種長方形帶圓孔的東西,但是散熱體的體積過大,會影響到第二條SDRAM的插位,再就是應當注意機箱通風和不要超頻。7 A% k# D" C5 h( Z" X- x
9 n3 N4 N$ |. j" U5 a" k9 O( p2 {
2.由硬件質量不好引起
& a9 F/ Z) h7 w5 \8 L: e; l5 L典型例子:SDRAM的質量不穩(wěn)定產(chǎn)生的“非法操作”。
* A, t5 @5 G& d; J2 k# c0 E: }; j o7 k7 w9 C+ q! f
解決:首先將BIOS中的內存參數(shù)設置得保守一些,如:SDRAM CAS LATENCY的值,設為CL=3。再就是不要超頻,實在不行,只有更換內存了。 }5 r1 C3 y) G8 E* H% P
) E: x9 ~, A! P# g: D4 b) H3.由硬件I/O沖突?兼容性差引起
% A" p4 f( {& @典型例子:網(wǎng)卡的沖突。
, s9 k) f' s1 {2 B* Z5 M) X
1 c2 ?% W6 x. D解決:從設備管理中,刪除帶“?”或帶“!”的設備,讓系統(tǒng)重新識別一下硬件后,再安裝驅動程序。I/O沖突的解決:查看“設備管理器/屬性”中的“ 中斷請求”,若有沖突,將它進行調整即可。再就是升級一下BIOS程序,也可以解決一些問題。2 W) h, U' q# L; M
' i8 W2 n, P! g0 S7 n+ s. g4.由硬件超頻引起的“非法操作”
8 Z5 ?# w$ S( F$ n典型例子:CPU和SDRAM超頻故障。
0 X* E9 M2 L1 e& J# T' A: c& |/ K1 f
解決:首先要保證自己的硬件有良好的可超性能,再就是要將散熱的危害性降到最小程度,CPU表面溫度控制在50℃以內,SDRAM最好在25℃左右。4 m. P0 Q. ^+ }' V& @
' Z ~' j6 n) s3 @. D, l5.由硬件損壞引起$ C& J- `8 {) }3 {
典型例子:包括一些接口的損壞,或者是小的電子元件被擊穿。# Y, S* i0 ~: y# ]2 `
7 e8 b' j, M2 Y$ k; [解決:要有專門的儀器和方法來測試,一般很少出現(xiàn)。這里就不多講了。
) `1 ?7 `; B- W( l* o
6 A* P4 r0 A; G" G7 H k9 S( ^" r結論:上面講到的,只不過是產(chǎn)生非法操作及解決的一些知識,它只是許多微機故障中的一個方面。下面,談一談為減少非法操作所應當知道的一些維護知識:
! N' Y: o8 @2 T* q
- ~+ G* K5 A9 T% s. N3 Z5 q6 e?(1)對機房環(huán)境的維護:防塵避免高溫、高濕度。
: c6 @7 E9 E+ I f# Y1 e1 p1 Y/ l* E! ^
?(2)看清故障,不要盲目處理,避免引發(fā)其他故障。4 j9 {! r+ N) T) y
+ d0 m4 ]& [' ?. X5 @
?(3)做好接地,避免靜電的危害。
) S2 x1 _: C v% q; a" S/ n1 s( ~$ d; \1 \9 Z* n1 w- ^6 n5 u8 |+ T: C
?(4)積極地吸取別人的好的建議,以增加對微機的掌握程度。4 D8 ^: W' g; y0 m/ s+ l2 t
: |7 @# A1 I" m! {" W: t5 O?(5)定期地進行除塵、除濕的維護。6 D! n! u/ u: F
4 p/ |8 ^3 Q- o" {, m' w7 I?(6)注意軟件版本的不斷升級,以減少BUG的危害,增強功能。5 ?- D0 E P: `: |$ e
! ?: r3 K2 w* a) T, g4 i. T0 t" Y?(7)意木馬冰河的防范、殺毒軟件的更新。
; p: Z+ N4 A2 l
. k7 d5 o9 B$ N" k; E?(8)保持機箱的穩(wěn)定性、避免不必要的振動、硬物的沖擊。
3 h8 ^/ `7 m; w: |8 H
0 l; B2 i: q+ u?(9)保持硬盤的數(shù)據(jù)整潔,定期運行管理軟件,如:磁盤掃描、系統(tǒng)文件檢查器、磁盤碎片整理、備份程序……
+ g) ^6 j- j! D" ^% M3 V |