2011-11-12 37 views
1

我會問有關使用直接讀取扇區信息來確定在硬盤驅動器中安裝哪個操作系統的可能性?如果我應該閱讀哪個部門以及如何指定一個部門,然後以編程方式從其中讀取數據(有用的API)?我可以使用扇區級別的數據確定安裝在硬盤上的操作系統嗎?

另外,即使其主機系統在虛擬機中工作,我也可以編寫代碼嗎?

+0

你爲什麼想這樣做?你在寫一個引導程序嗎?如果您的操作系統(Windows)在虛擬機內執行,會怎麼樣? –

+0

我只是想爲了學習目的而編碼。關於虛擬機問題其實我不知道,但對我來說這是一個很好的問題!我將編輯添加這一點! – Aan

回答

2

通過閱讀master boot record並查看partition type,您可以得到一個相當不錯的猜測。

請參閱問題Direct access to harddrive?以獲取有關直接讀取原始扇區信息的指針。

+0

查看分區信息可以確定分區的佈局方式,然後您可以讀取每個分區的第一個扇區,以便確定每個分區中安裝了哪個文件系統。雖然這個信息不會告訴你哪個操作系統安裝在文件系統中。例如,如果您檢測到NTFS,則不能自動承擔Windows,因爲Linux也支持NTFS。您需要分析啓動分區中的啓動文件,或者分析存儲在MBR內的啓動代碼以及分區信息。 –

相關問題