问一些很简单的基础问题,但事设计的面比较广,可能是我简历上写的方面比较多吧。数据结构,操作系统,数据库,计算机网络,C++等。很遗憾第一次面试没有做好准备,很多问题没有回答上来。所以大家一定要提前准备,基础知识很重要很重要很重要。
面试官问的面试题: linux是如何管理虚拟内存的?
Linux 的虚拟内存管理有几个关键概念:
1、每个进程都有独立的虚拟地址空间,进程访问的虚拟地址并不是真正的物理地址;
2、虚拟地址可通过每个进程上的页表(在每个进程的内核虚拟地址空间)与物理地址进行映射,获得真正物理地址;
3、如果虚拟地址对应物理地址不在物理内存中,则产生缺页中断,真正分配物理地址,同时更新进程的页表;如果此时物理内存已耗尽,则根据内存替换算法淘汰部分页面至物理磁盘中