2023.4.5日 清明节 晚上7:30 -> 8:21 一共51分钟
和一面间隔了20天左右,听说是面试官业务太忙了,现在估计都没hc了
1.自我介绍
2.内核的进程管理说一下(25分钟)
3.进程上下文切换的时候,用户态CPU上下文保存到哪里 ? 页表寄存器是哪一个?
4.进程上下文切换的时候cpu上下文中像sip这一类的寄存器 是软件切换还是硬件切换的?(硬件),硬件切换的时候,如果确定cpu寄存器保存和恢复的位置?
5.线程的内核栈是共享还是独栈,程序确定它的位置?
6.进程虚拟地址空间的分布情况具体说一下,kmalloc分配是从哪里分配的? vmalloc呢? 发生缺页异常的时候,怎么判断访问的地址是合法的还是非法的?
7.软中断了解吗,说一下具体的执行流程? 中断处理函数执行的过程中,能够通过哪一些来分配内存(这里没听太懂,他的意思应该是想问中断处理函数执行的时候如果需要申请内存需要注意一下什么)
8.内核有哪一些锁,能分别说一下他们的底层实现吗? 然后又问了一下自旋锁内核api的区别
9.这几种锁各自的使用场景是什么 ?
10.page cache 说一下
11.如何确定每一个页 (struct page) 如何确定它哪一个文件的缓存页还是匿名页
12.伙伴系统和slab分配器说一下
13.线程死了会影响到所在的进程吗?为什么
14.虚拟化了解吗?
15.手写快排
16.反问环节
作息时间(csig是真卷,一周三天9点下班)
有转正hc吗?