根据简历一行一行地挖第一部分是哈工大OSLAB的linux0.1,因为这部分的内容实在是太复杂,我只记得一些大概。(1) 进程调度函数的实现细节(栈切换,时间片轮转,就绪队列,阻塞列表,优先级调度)(2) 时间片轮转调度是怎么实现的(定时器中断)(3) 优先级怎么实现(count = count / 2 + priority, priority越大,分配的时间片越多,每次调度挑出count最大的运行)(4) 共享内存的实现细节(申请一页内核空间内存然后映射到用户态,然后内核中用一个共享内存结构体来控制,用户态通过shmid来找到对应的内存区域然后映射)(5) 信号量在内核里面是什么: (核心的部分好像就是一个计数,然后顺便说了生产者消费者模型,以及为什么要把这么一个东西放进共享内存)(6) 你在写这个东西的时候,遇到了什么具体的问题,怎么解决的?(写fork函数的时候少写了一些东西导致init进程没法正常创建别的进程,说实话,最后抄了别人的代码)(7) 内核崩溃,gdb怎么调试(core文件)(8) core文件有时不是第一手现场,怎么查看程序越界到了什么内存,怎么办(不记得了,答了查看CPU现场,段寄存器,偏移地址,堆栈寄存器这些)然后第二部分是freeRTOS的项目(1) 你的项目实时性要求如何?怎么保证实时性(实时控制任务,要求非常高,使用多级反馈队列,设置四个优先级,高优先级的任务就绪立即抢占低优先级任务)(2) 自旋锁有用过吗(没有,但我知道这个东西是什么,顺便讲了一下)第三部分是实习相关的项目, 只介绍了一下具体的工作。最后加了面试官微信希望不是KPI许愿下一轮 #阿里平头哥# #嵌入式#