小華的部落格: 2010/7/25 - 2010/8/1

搜尋此網誌

網頁

星期二, 7月 27, 2010

Memory Access

前陣子在幫同事看一個BUG,他的問題是由 ASL code 透過我們BIOS端的所提供的 ACPI NVS buffer傳遞資料,然後在SMI callback的Function內我們透過一個Data structure指標去存取資料,但是位址會偏移兩個Byte.

他原來的Data Structure定義如下:
UINT16;
UINT32;
UINT8;

當他存取UINT8欄位時,資料位址卻偏移了!

後來發現,OS的ASL code內在存取記憶體時是Byte為單位,也就是有做過記憶體對齊!
因此,在我們EFI code內,我們就必須透過 #pragma pack(1) 來做相對應的事情,不然你在存取記憶體內容時會讀到錯誤的值。


星期日, 7月 25, 2010

SF100 燒錄程式

每次重新安裝一次系統都要再去找一次SF100的燒錄程式下載,但是這個網頁連結的字都很小;
所以每次都要很仔細的看才能找到下載的網頁,因此留下一個紀錄在部落格,方便自己去下載他的工具。

下載工具的網頁:

點擊【Software download】就可以開始下載了!

下載把檔案接壓縮後,就可以看到裡面有Windows usb driver,連同他的工具程式安裝好後就可以使用了!