前面我們介紹了在內(nèi)核中如何獲取和釋放內(nèi)存,這些都是在內(nèi)核里面用到的,但除了內(nèi)核,還有一塊更重要的內(nèi)存空間要管理——用戶空間中每個(gè)進(jìn)程的內(nèi)存,進(jìn)程地址空間。Linux的內(nèi)存管理個(gè)人覺得也是理解內(nèi)核的關(guān)鍵模塊之一。
在Linux中,每個(gè)進(jìn)程都會有自己獨(dú)立的虛擬空間,大小由CPU架構(gòu)決定。但不是所有的虛擬空間都是有效的,只有被正確映射的虛擬內(nèi)存才能夠合法訪問,否則內(nèi)核會強(qiáng)制終止進(jìn)程。常見的虛擬內(nèi)存可以映射各種內(nèi)存對象:
當(dāng)在 Linux 上執(zhí)行 rz 命令之后,彈出選擇發(fā)送文件窗口時(shí),默認(rèn)選擇文件的目錄就是上面設(shè)置的上傳目錄
關(guān)于Linux,信盈達(dá)小編最喜歡的一點(diǎn)是一切都是文件。你在終端中運(yùn)行的命令和程序被抽象成文件。用來快速打開自己喜歡的應(yīng)用程序的桌面圖標(biāo)也被抽象成文件。系統(tǒng)檢查應(yīng)用程序更新的代碼庫如何處理?當(dāng)然也是寫在文件里。