從程序員的角度來講,操作系統的內核提供了一個與計算機硬件等價的擴展或虛擬的計算平台。它抽象了許多硬件細節,程序可以以某種統一的方式進行數據處理,而程序員則可以避開許多硬件細節。從另一個角度講,普通用戶則把操作系統看成是一個資源管理者,在它的幫助下,用戶可以以某種易於理解的方式組織自己的數據,完成自己的工作並和其他人共享資源。
Linux以統一的方式支持多任務,而這種方式對用戶進程是透明的,每一個進程運行起來就好象只有它一個進程在計算機上運行一樣,獨占內存和其它的硬件資源,而實際上,內核在並發地運行幾個進程,並且能夠讓幾個進程公平合理地使用硬件資源,也能使各進程之間互不干擾安全地運行。