數碼資源網

文章頻道 軟件下載 安卓下載 蘋果下載

當前位置:首頁文章中心綜合應用電腦百科 → 淺談CMOS

淺談CMOS

時間:2005-04-18 15:36:41人氣:174作者:網友整理
淺談兔子安卓版(趣味娛樂) v2.10 最新版
淺談兔子安卓版(趣味娛樂) v2.10 最新版 for Android
  • 類型:安卓趣味娛樂大小:44.94M語言:簡體中文 評分:3.0
  • 如果實在是無聊,那就不妨來看看這款十分好用的軟件。淺談兔子安卓版是一款能陪你聊天...
立即下載
淺談小馬安卓版(休閑養成類遊戲) v1.90 手機版
淺談小馬安卓版(休閑養成類遊戲) v1.90 手機版 for Android
  • 類型:角色扮演大小:29.40M語言:簡體中文 評分:3.0
  • 小馬在這款淺談小馬安卓版是非常萌的角色。在這款遊戲中您可以和小馬對話,讓後小馬重...
立即下載
深情隻好淺談v1.3.4
深情隻好淺談v1.3.4 for Android
  • 類型:角色扮演大小:36.58M語言: 評分:4.2
  • 深情隻好淺談是一款場景環境唯美的玄幻仙俠世界,在這個世界當中玩家可以看到很多不一...
立即下載

淺談CMOS

大家都知道,在286以上的計算機中,一般都有一個CMOS RAM電路,它用於關機以後繼續存放日期、時間內存設置、軟硬盤類型及其他許多有用的設置信息CMOS即互補金屬氧化物半導體,它的設置、應用和管理是保證係統正常工作的關鍵,下麵就介紹一些有關CMOS的基本概念和應用。

ROM BIOSCMOS RAM芯片
ROM BIOS
是固化在ROM中的BIOSBasic Input/Output System,簡稱基本輸入/輸出係統),他控製著係統全部硬件的運行,又為高層軟件提供基層調用,BIOS芯片是插在主板上的一個長方形芯片。其比較著名的生產廠家有:American Megatrends INC.AMI BIOSAward Software INC.AWARD BIOS。存放在ROM BIOS中的內容是不能被用戶修改的,它主要用於存放:自診斷測試程序、係統自舉裝入程序、係統設置程序和主要I/O設備的I/O驅動程序及中斷服務程序。自診斷測試程序:它通過讀取係統主板上CMOS RAM中的內容來識別係統硬件的配置,並根據這些配置信息對係統中的各個部件進行自檢和初始化。在POSTPower―On Self加電自檢)過程中,如果CMOS RAM中的設置參數與係統實際配置的硬件不符,就會導致係統不能啟動或不能正常工作。係統自舉裝入程序:該程序在係統自檢正確後將操作係統盤的引導記錄讀入內存,然後由引導程序安裝操作係統的核心程序。係統設置程序:在係統引導後,適時用熱鍵(如Del)啟動設置程序(SETUP),在這個設置程序中可對軟硬件參數進行設置,然後由其存入CMOS RAM中。一般地,當係統第一次加電;係統增加、減少或更換硬件;CMOS RAM因掉電、病毒、放電等原因造成內容丟失;係統因需要而調整某些設置參數等原因時需要運行SETUP程序。常見的SETUP程序有AMI BIOS SETUPAWARD BIOS SETUPAMI WINBIOS SETUPQUADTEL BIOS SETUP等。主要I/O設備的I/O驅動程序及中斷服務程序:主要為計算機的低端輸入/輸出和各種中斷提供服務。
CMOS RAM
是一種互補金屬氧化物半導體隨即存儲器,它主要具有功耗低(每位約10毫微瓦)、可隨機讀取或寫入數據、斷電後用外加電池來保持存儲器的內容不丟失、工作速度比動態隨機存儲器(DRAM)高等特點。ROM BIOS對係統自檢初始化後,將係統自檢到的配置與CMOS RAM中的參數進行比較,在早期的PC中,用主板上的一組DIP開關(以不同組合來代表係統硬件資源的配置情況)來完成現在的CMOS RAM功能,在286以後則基本全都采用了CMOS RAM來保存係統設置的參數。CMOS RAM一般為64字節或128字節,用可充電的電池或外接電池(286機器用幹電池較多,386以上的機器基本上都用充電電池了)對CMOS RAM芯片供電。
CMOS
基本應用
CMOS
數據的備份:由於CMOS的數據是否正確關係到係統是否能正常啟動,所以對CMOS數據進行定期備份是非常重要的。備份的最簡單方法是在SETUP程序中,用筆把各個參數記下來或者用屏幕硬拷貝(按Print Screen鍵)的方法把各個設置界麵打印出來。這裏介紹一種用程序把數據備份下來的方法(以AMI BIOS為例,這些方法對其他的CMOS也適用;用Turbo C 2.0,下同):
/*
CMOS中的數據讀到A盤的CMOS.DAT文件中*/

#include "stdio.h"

main()

{ char cmos[64];FILE *fp;int i;

for (i=0;i<64;i++)

{ outportb(0x70,i);

cmos[i]=inportb(0x71);

}

fp=fopen("A:\CMOS.DAT","wb");

fwrite(&cmos[0],1,64,fp);

fclose(fp);

}

CMOS數據的恢複:文件CMOS.DAT的內容可以在GEBUG(或PCTOOLS等工具軟件)中顯示和編輯,也可將其再寫回CMOS,這裏給出自動寫回數據的程序:
/*
ACMOS.DAT文件的數據寫回CMOS*/

#include "stdio.h"

main()

{ char cmos[64];FILE *fp;int i;

fp=fopen("A:\CMOS.DAT","rb");

fread(&cmos[0],1,64,fp);

for (i=0;i<64;i++)

{ outportb(0x70,i);

outportb(0x71,cmos[i]);

}

fclose(fp);

}

破譯或摧毀CMOS口令:由於各種原因,有時需要破譯或者摧毀CMOS的口令,此時可以根據具體情況采取各種不同的方法。如果能啟動係統,但由於忘記或不知CMOS口令而無法進入CMOS設置狀態,此時可采用程序法來破譯CMOS的口令(由於程序較長,這裏省略,如那位朋友有興趣請Mail tozuiyue@263.net)。用程序摧毀CMOS密碼的設置:
/*
摧毀CMOS密碼*/

#include <dos.h>

void far (*p)()=MK_FP(0xffff,0x0000);

main()

{ int i;

for (i=0x34;i<0x40;i++) outp(0x70,i);

out(0x71,0);

(*p)();

}

DEBUG向端口發送數據的O命令向端口70h71h發送一個數據,也可以清除CMOS的設置,具體操作如下:

C:\>DEBUG

―O 70 10

―O 71 01

―Q

另外,也可以把上述操作用DEBUG寫成一個程序放在一個文件(如DELCMOS.COM)中,具體操作如下:

C:\>DEBUG

―A 100

XXXX:0100 MOV DX,70

XXXX:0103 MOV AL,10

XXXX:0105 OUT DX,AL

XXXX:0106 MOV DX,71

XXXX:0109 MOV AL,01

XXXX:010B OUT DX,AL

XXXX:010C

―R CX

CX 0000

: 0C

―N DELCMOS.COM

―W

Writing 000C bytes

―Q

以後,隻要能用軟盤啟動係統,運行DELCMOS.COM就能取消CMOS的設置。CMOS放電。如果由於人為原因或由於機器故障使CMOS被破壞,而又不能用軟盤啟動係統,即係統引導順序為“C:,A:”,或者Floppy Drive A:設置為Not Installed(或Disabled),係統不認A驅,這是便隻有放電一途了。放電的方法有電池短接法、跳線短接法和芯片放電法。電池短接法:如果利用可拆卸電池供電,可以把電池拔下,用一根導線將電池插座兩端短路,對電路中的電容放電,使CMOS RAM中的信息被清除;如果電池被焊死在主板上,就必須用電烙鐵和吸錫器拔開電池的一個管腳來放電。需說明的是,電池短接法必須在短電的情況下進行,此法對一般用戶是不可取的,因為拆卸和焊接電池時可能造成主板的損壞、短路、斷路等問題,建議用下麵的跳線短接法給CMOS放電。跳線短接法:在電池附近有一個跳線開關,跳線旁邊注有RESET CMOSCLEAN CMOSCMOS CLOSECMOS RAM RESET等字樣,跳線開關一般為四腳,有的在12兩腳上有一個跳接器,此時將其拔下接到24腳上即可放電;有的所有腳上都沒有跳接器,此時將2腳於充電電容短接即可放電。芯片短接法:開機後運行CMOS

相關文章

感謝速聯科技、八度網絡、九九數據、億恩科技、群英網絡讚助部分帶寬!

關於本站 | 聯係方式 | 版權聲明 | 下載幫助(?) | 網站地圖

Copyright 2002-2020 95262.com 【數碼資源網】 版權所有 粵ICP備2020128507號-1

本站所有軟件來自互聯網,版權歸原著所有。如有侵權,敬請來信告知 ,我們將及時撤銷。