用了一段時間的RTM版Windows7,發現貌似Windows7在儲存控制器方面有些問題,這裡做下總結。
一、我的台式電腦dell inspiron530
我在以前的文章裡也摸索過一些問題,這裡簡要的介紹下硬體設定。主板是intel的3系列,南橋只有sata介面,接了一個硬碟和一個光碟機。 pci卡上插了一塊silicon image的i680儲存控制器,以相容我老式機器的一塊硬碟和一個光碟機。
問題1:安裝時不能正常載入silicon image儲存控制器的驅動。
這個問題以前的文章裡也提及過,安裝時驅動不能載入,或者說是在載入畫面卡住。即使過了很長時間,載入畫面過去了,此時又回到安裝時的硬碟選項,驅動任然沒有被安裝。安裝系統時不去安裝這個驅動,直接安裝系統(安裝在主板整合的那個控制器下掛載的硬碟上),等安裝好了系統,作業系統會自動載入驅動,這個驅動還和我用介質安裝時手動載入的驅動還是一樣。
問題2:自動安裝儲存控制器之後,硬碟和光碟機被電腦管理工具識別,但是我的電腦裡不能被載入使用,重啟一下電腦,所有的硬碟和光碟機才可以正常使用。
問題3:安裝儲存控制器驅動後的第一次關機不正常。
作業系統剛安裝好的時候,會自動安裝一些硬體和驅動,這時出現了問題2。經過我實踐證明,只要重啟下,以後再次使用,問題2就不存在了。但是第一次系統重啟時又會出現新的問題,就是不能順利關機。螢幕顯示正在關機,然後就卡住了。過了正常的關機時間範圍,看看硬碟燈基本也不亮了,電源就是不熄火,螢幕卡在正在關機畫面。
在7260版本時,我過了個十多分鐘就直接強制重啟了,之後的系統一切正常,什麼問題都沒有了。
這次是裝RTM版,由於已經有了前一次這樣的情況。我直接搬來本本,看著它,看它到底能發生什麼。一直等待了大約半個小時,藍屏了哈。這就意味著我可以去看看dump檔案了。
DRIVER_POWER_STATE_FAILURE (9f)
A driver is causing an inconsistent power state.
Arguments:
Arg1: 00000004, The power transition timed out waiting to synchronize with the Pnp
subsystem.
Arg2: 00000258, Timeout in seconds.
Arg3: 84d7ad48, The thread currently holding on to the Pnp lock.
Arg4: 8275db24
上面的報錯資訊是說一個驅動導致錯誤的電源狀態,電源傳輸等待隨插即用裝置同步逾時。
FOLLOWUP_IP:
cdrom!DeviceSendPowerProcessRequest+15b
8b7f4916 84c0 test al,al
SYMBOL_STACK_INDEX: 8
SYMBOL_NAME: cdrom!DeviceSendPowerProcessRequest+15b
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: cdrom
IMAGE_NAME: cdrom.sys
DEBUG_FLR_IMAGE_TIMESTAMP: 4a5bbf1c
FAILURE_BUCKET_ID: 0x9F_cdrom!DeviceSendPowerProcessRequest+15b
BUCKET_ID: 0x9F_cdrom!DeviceSendPowerProcessRequest+15b
上 面的資訊給出了錯誤指令和所在模組以及位移地址。上面橙色mark的地方就是我猜測的錯誤的地方了哈:test al,al。test指令是條測試指令,要根據結果影響FR(標誌寄存器)的。test al,al,自己和自己比較,這個結果肯定是一個一定的結果,如果後面的指令根據test al,al所影響的標誌寄存器的位來判斷轉跳什麼的,這個很可能造成死迴圈哦,死迴圈就可能導致其他進程逾時。我猜這個算是微軟coder的一個筆誤吧!
0: kd> lmvm cdrom
start end module name
8b7df000 8b7fe000 cdrom (pdb symbols) d:\symbolslocal\cdrom.pdb\45095501C39640C5BEEACE8E677232CC2\cdrom.pdb
Loaded symbol image file: cdrom.sys
Mapped memory image file: D:\symbolslocal\cdrom.sys\4A5BBF1C1f000\cdrom.sys
Image path: \SystemRoot\system32\DRIVERS\cdrom.sys
Image name: cdrom.sys
Timestamp: Tue Jul 14 07:11:24 2009 (4A5BBF1C)
CheckSum: 00029646
ImageSize: 0001F000
File version: 6.1.7600.16385
Product version: 6.1.7600.16385
File flags: 0 (Mask 3F)
File OS: 40004 NT Win32
File type: 3.7 Driver
File date: 00000000.00000000
Translations: 0000.04b0
CompanyName: Microsoft Corporation
ProductName: Microsoft® Windows® Operating System
InternalName: cdrom.sys
OriginalFilename: cdrom.sys
ProductVersion: 6.1.7600.16385
FileVersion: 6.1.7600.16385 (win7_rtm.090713-1255)
FileDescription: SCSI CD-ROM Driver
LegalCopyright: © Microsoft Corporation. All rights reserved.