1. 程式人生 > >linux內核,驅動,應用程三者的概念和之間的關系 - Avatarx

linux內核,驅動,應用程三者的概念和之間的關系 - Avatarx

best 基礎 網絡接口 包含 進程間通信 程序實現 驅動通信 操作 環境

驅動程序屬於內核的一個部分。準確的說是內核的一個組件。不包含驅動的內核也叫做內核,並且這也是我們常說的內核。內核要幹的事情無非5件。
1,內存管理
2,虛擬文件系統
3,進程調度
4,網絡接口
5,進程間通信

驅動更像是內核的擴展組件來幫助內核實現硬件的連接和操控。內核通過提供統一的驅動操作接口供用戶層使用,驅動就是在這層統一的接口下實現硬件的操控的中間層。

首先,要理解操作系統的概念,操作系統是用戶和硬件之間的一層媒介程序。不管是Linux還是Windows或者安卓、iOS,它的主要功能有兩點:
1、有效管理硬件。
2、方便用戶操作。

其次,Linux內核是Linux系統的核心程序,主要完成任務調度、內存管理、IO設備管理等等功能,主要目的是為了應用程序提供一個穩定良好的運行環境,這是一個基礎。


再次,驅動程序是操作系統有效管理硬件的一個途徑。應用程序是方便用戶操作提供的程序,比如Shell,Linux中的bash shell以及KDE、gnome等圖形Shell都是應用程序。 你可以簡單的理解為驅動程序實現了操作系統對硬件的有效管理,應用程序實現了操作系統方便用戶操作的目的。

最後,從編程角度來看,Linux內核就是一個調用庫,應用程序通過調用Linux提供的API函數來實現操作,Linux內核通過與驅動通信實現對硬件的有效管理。具體的編程細節,需要自己在實踐編程中體會。這是一個整體的描述。

linux內核,驅動,應用程三者的概念和之間的關系 - Avatarx