在學習的過程中肯定會要用不尐的工具,作為底層的engineer那麼用的工具大多是DOS下在DOS下所用的工具對於一般的人來說(相對於當今流行的圖形介面的操作系統)總是感覺比較陌生,也批著一層神奇的面紗那麼今天我就以我最经常使用的ADU.EXE開刀給大家介紹一下它裏面所涉及的東東。主要是我全然模仿ADU也寫了一個工具所以在此也介紹一下,好做個總結
Utility簡稱ADU,是一個.exe的可執行文件該工具的help內容就顯示在第一頁,如圖一:
圖一 help介面(也是第一個介面)
Help中都是介紹關於高速鍵是哪些的我就不一項一項去解釋了,相信假设對這個工具有興趣的愛好者這點英語應該能ok的
這個介面仳较清楚地描写叙述了機器上的全部PCI device的關鍵信息。
正如圖所看到的中間的數據是256個byte的配置空間,右邊的信息是對配置空間的相應bit的解析這樣方便engineer查看。
mode兩種關於他們的介紹我會在後續的文章中介紹。介面如圖四:
至於FILE就是指打開指定文件而已不過是以二進位的形式顯示出來。
IO裏面主要功能如圖五
CMOS是CMOS的數據顯示如圖六
ISA是對一些特殊port的數據讀取他們的操作方式是index和data的操作方式,所以仅仅要是用這種方式访問的都能够從這裡輸入,輸出
後面的幾個菜單都是大同小異。
圖七是SMBUS讀取的介面關於SMBUS的詳細介紹我會在後續的文章中給出。這裡仅仅是講講ADU這個工具的用途而已
圖七 SMBUS讀取的介面
information,并作出相應的信息解析圖八是它的IDE介面之中的一个。關於IDE的詳細介紹後續文章會繼續
圖八 IDE信息介面之中的一个
至此關於ADU.EXE的介紹就算是OK了。
我當時在寫這個工具的時候還增加了讀取CPU ID和CPU MSR的功能截圖見圖九
在CPUID的讀取介面Φ,下麵有列出幾行信息這個首先就有掃描CPU ID的輸入的最大值。並且都列了出來方便engineer在用的時候做對照。而方框中的則是當EAX輸入相應徝回車后EAX~EDX返回值。
每個介面的最後一行都是對其的說明要查詢的時候直接輸入就可以。
以上就是我對ADU這個工具的理解文章分成兩個部份,第一部份講award提供的工具所包括的功能簡述第二部份是自己增加的元素。不過整個工具的實現部份全然是照ADU的功能仿照設計的。由於之前沒有assembly的基礎寫的程序效率不高,結構也不太好所以有非常多值得提高的地方,待有空的時候我回頭從新寫一次