天天看點

嵌入式常見面試題總結(8)

66,Linux中引入子產品機制有什麼好處?

答:首先,子產品是預先注冊自己以便服務于将來的某個請求,然後他的初始化函數就立即結束。換句話說,子產品初始化函數的任務就是為以後調用函數預先作準備。

好處:

1) 應用程式在退出時,可以不管資源的釋放或者其他的清除工作,但是子產品的退出函數卻必須仔細此撤銷初始化函數所作的一切。

2) 該機制有助于縮短子產品的開發周期。即:注冊和解除安裝都很靈活友善。

67,copy_to_user()和copy_from_user()主要用于實作什麼功能?一般用于file_operations結構的哪些函數裡面?

答:由于核心空間和使用者空間是不能互相通路的,如果需要通路就必須借助核心函數進行資料讀寫。copy_to_user():完成核心空間到使用者空間的複制,copy_from_user():是完成使用者空間到核心空間的複制。一般用于file_operations結構裡的read,write,ioctl等記憶體資料交換作用的函數。當然,如果ioctl沒有用到記憶體資料複制,那麼就不會用到這兩個函數。

繼續閱讀