GoldFish虛擬處理器鍵盤輸入部分的驅動程序是event驅動程序,在標準的路徑中,相關文件如下所示:
drivers/input/keyboard/goldfish_events.c
這個驅動程序是一個標準的event驅動程序,在用戶空間的設備節(jié)點為/dev/event/ event0,其核心的內容為:
events_interrupt實現的是按鍵事件的中斷處理函數,當中斷發(fā)生后,讀取虛擬寄存器的內容,將信息上報。實際上,虛擬寄存器中的內容由模擬器根據主機環(huán)境鍵盤按下的情況得到。
è 8.3.2 用戶空間的配置文件
在模擬器環(huán)境中,使用了默認的所有的KL和KCM文件,由于模擬器環(huán)境支持全鍵盤,因此基本上包含了大部分的功能。在模擬器環(huán)境中,實際上按鍵的掃描碼對應的是桌面電腦的鍵盤(效果和鼠標點擊模擬器的控制面板類似),鍵盤的某些按鍵按下后,轉化為驅動程序中的掃描碼,然后再由上層的用戶空間處理。這個過程和實際系統(tǒng)中是類似的。顯然,通過更改默認的KL文件,又可以更改實際按鍵的映射關系。