問一些很簡單的基礎(chǔ)問題,但事設(shè)計(jì)的面比較廣,可能是我簡歷上寫的方面比較多吧。數(shù)據(jù)結(jié)構(gòu),操作系統(tǒng),數(shù)據(jù)庫,計(jì)算機(jī)網(wǎng)絡(luò),C++等。很遺憾第一次面試沒有做好準(zhǔn)備,很多問題沒有回答上來。所以大家一定要提前準(zhǔn)備,基礎(chǔ)知識很重要很重要很重要。
面試官問的面試題: linux是如何管理虛擬內(nèi)存的?
Linux 的虛擬內(nèi)存管理有幾個關(guān)鍵概念:
1、每個進(jìn)程都有獨(dú)立的虛擬地址空間,進(jìn)程訪問的虛擬地址并不是真正的物理地址;
2、虛擬地址可通過每個進(jìn)程上的頁表(在每個進(jìn)程的內(nèi)核虛擬地址空間)與物理地址進(jìn)行映射,獲得真正物理地址;
3、如果虛擬地址對應(yīng)物理地址不在物理內(nèi)存中,則產(chǎn)生缺頁中斷,真正分配物理地址,同時更新進(jìn)程的頁表;如果此時物理內(nèi)存已耗盡,則根據(jù)內(nèi)存替換算法淘汰部分頁面至物理磁盤中