正文

8.3 模擬器中的實現(xiàn) 驅(qū)動程序

Android系統(tǒng)級深入開發(fā):移植與調(diào)試 作者:韓超


GoldFish虛擬處理器鍵盤輸入部分的驅(qū)動程序是event驅(qū)動程序,在標準的路徑中,相關(guān)文件如下所示:

drivers/input/keyboard/goldfish_events.c

這個驅(qū)動程序是一個標準的event驅(qū)動程序,在用戶空間的設備節(jié)點為/dev/event/ event0,其核心的內(nèi)容為:

events_interrupt實現(xiàn)的是按鍵事件的中斷處理函數(shù),當中斷發(fā)生后,讀取虛擬寄存器的內(nèi)容,將信息上報。實際上,虛擬寄存器中的內(nèi)容由模擬器根據(jù)主機環(huán)境鍵盤按下的情況得到。

è 8.3.2  用戶空間的配置文件

在模擬器環(huán)境中,使用了默認的所有的KL和KCM文件,由于模擬器環(huán)境支持全鍵盤,因此基本上包含了大部分的功能。在模擬器環(huán)境中,實際上按鍵的掃描碼對應的是桌面電腦的鍵盤(效果和鼠標點擊模擬器的控制面板類似),鍵盤的某些按鍵按下后,轉(zhuǎn)化為驅(qū)動程序中的掃描碼,然后再由上層的用戶空間處理。這個過程和實際系統(tǒng)中是類似的。顯然,通過更改默認的KL文件,又可以更改實際按鍵的映射關(guān)系。

 


上一章目錄下一章

Copyright ? 讀書網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號