面试知识库

操作系统#

知识脉络#

知识点清单#

#题目频率难度状态
1进程与线程区别极高基础todo
2进程间通信方式高进阶todo
3epoll原理极高困难todo
4IO多路复用极高进阶todo
5零拷贝原理极高困难todo
6虚拟内存原理高进阶todo
7页面置换算法中进阶todo
8操作系统fork与COW高困难todo
9用户态与内核态高进阶todo
10上下文切换开销高进阶todo
11mmap原理与应用中困难todo
12PageCache机制中进阶todo
13死锁与处理策略高进阶todo
14协程原理中进阶todo
15文件描述符中基础todo
16进程调度算法高进阶todo
17僵尸进程与孤儿进程高进阶todo
18分页与分段高进阶todo

口诀速记#

  • IO模型: “阻非复信异(BIO/NIO/多路复用/信号驱动/AIO)”
  • 进程通信: “管消共信套(管道/消息队列/共享内存/信号量/Socket)”
  • epoll: “红黑树存fd,就绪链表通知,ET边缘触发更高效”
  • 零拷贝: “sendfile省1次CPU拷贝(SG-DMA下省2次),mmap省1次”
  • 调度算法: “先短轮优多(FCFS/SJF/RR/优先级/MLFQ),Linux 6.6前用CFS红黑树比vruntime,6.6起EEVDF挑最早虚拟截止时间”
  • 分页分段: “页等长无外碎、段变长有语义,段页式先分段再分页”
  • 进程回收: “僵尸=子死父没wait占PID,孤儿=父先死被init收养”

跨域关联#