在 register_globals = On 時,
自動載入 $_GET 變數
例如 :
url : 127.0.0.1/index.php?menu=harry
index.php {
在 register_globals = On 時,
自動載入 $_GET 變數
例如 :
url : 127.0.0.1/index.php?menu=harry
index.php {
在 Real-mode,interrupt vector table的起始位址是從
記憶體零的位址開始算起。然而,在protected-mode,interrupt vector
table是儲存於CPU的暫存器 (IDTR,Interrupt Descriptor Table Register),
因此轉換至protected-mode之前,必須先設定idt。

Location of the SMRAM
在存儲器地址空間中,規定最低的1K空間,即00000H到003FFH為中斷向量表。全表共含256個中斷向量,每個向量的長度為4位元組,包含
中斷處理程序的起始地址。共有從0到255共256個中斷類型碼,每個中斷類型碼對應的中斷向量所在地址為該類型碼乘以4。舉例而言,如果中斷類型碼為
1,則對應中斷向量所在地址為00004H;如果中斷類型碼為33,則對應中斷向量所在地址為00084H。這樣,如果已知一個中斷類型碼,則需要通過兩
次地址轉換(中斷類型碼到中斷向量表地址;中斷向量表地址到中斷處理程序地址)才能到達中斷處理程序。另外應注意每一個中斷向量所包含的地址是以低二位元

Setup Configuration Utility (SCU)
IFR 指的是由撰寫VFR code ,然後經由Compile 之後得到的File ,
有點像是List 的東西
STRINGS 指的是一份 StringToken 的 File
他定義了很多String
1. 在 Training 的這包 Code , 如果要加自己的library 要加在 C:\EFI\FW\Platform\Common.dsc 裡
實作一個Pei Phase 的 Ppi (Protocol)
提供兩個service
1. PeiGetVariable
讀取特定Variable (指定Name, Guid )
2. PeiCreateHob
執行 fs0:\> load drivermd.efi -nc 後
會跳進 DriverBinding Protocol 執行 Supported Function 一次 > 不曉得為甚麼
在輸入 fs0:\> connect "DriverBinding Handle #" 後
Firmware 會將 ControllerHandle 一個一個傳進 Supported Function
透過Supported Function 判斷是否為有效的Controller Handle
_CR tracing
#define _CR(Record, TYPE, Field)
((TYPE *) ( (CHAR8 *)(Record) - (CHAR8 *) &(((TYPE *) 0)->Field)))
typedef struct_EFI_MEMORY_POOLS_LISI{
EFI_PHYSICAL_ADDRESSAddress;
何謂變數? 在談論與變數相關的問題時, 請記得所有程式語言到最後都要編譯或解譯成電腦看得懂的機器語言。 機器語言的層次, 沒有變數的概念, 只有 「記憶第幾個 byte 起, 到第幾個 byte 為止」 的概念。 也許 把每一個簡單變數想成是一個盒子, 下面的觀念就會比較具體了。
1. 區塊 (block)
例如: { .... }
區塊就是任何以大括號包起來的區域, 如函式區塊, if區塊, for區塊
嚴格說起來, 在任何 statement 出現之前, 一定要把 block 內使用到的變數定義好
在 block 外定義的變數就是 global variable