境界测试 · 你修到哪一层了?
别猜了,测一下。15道题,覆盖炼气到渡劫六大境界,诚实回答,结果不会骗你。
已答 0/15 题(至少答 10 题提交)
1. 别人让你写一个猜数字游戏(1-100),你的第一反应是?
猜数字游戏是什么?
while循环 + input + if判断,十来行代码搞定
我会用二分查找优化猜测次数
2. 你写的程序从「点击运行」到「输出结果」,中间发生了什么?
程序跑起来了,出了结果
创建进程→分配内存→加载可执行文件→CPU执行→IO输出
能讲清编译、链接、加载、虚拟内存、系统调用的每一步
3. 给你一个无序数组,找出第K大的元素,你怎么做?
排序,然后取第K个
小顶堆维护K个元素,O(n log k)
能解释堆的底层实现、复杂度推导,知道快速选择的partition原理
4. TCP三次握手为什么是三次不是两次?
不知道,但我会写HTTP接口
能解释SYN/ACK的作用和防止已失效连接
能从TCP状态机角度解释,知道TIME_WAIT和半连接队列
5. 操作系统是怎么管理内存的?
不知道,程序能跑就行
知道虚拟内存、页表、缺页中断
能解释TLB、多级页表、伙伴系统、内存映射
6. 编译器对你写的代码做了什么?
把代码变成能跑的程序
词法分析→语法分析→语义分析→代码生成
能讲清AST、中间表示、优化遍、目标代码生成的细节
7. CPU缓存L1/L2/L3是什么?
不知道,跟写代码没关系
知道有三级缓存,理解局部性原理
懂缓存行、伪共享、MESI缓存一致性协议
8. 多线程程序里,两个线程同时对一个变量+1,结果一定对吗?
不一定?为什么?
不对,需要加锁或用原子操作
能解释竞态条件、内存屏障、CAS、ABA问题
9. ARM和RISC-V有什么本质区别?
不知道
知道都是RISC,但说不出细节
能从指令集设计、商业模式、生态角度分析
10. 一段C代码,从源码到晶体管翻转,你能追到哪一步?
编译成可执行文件,能跑就行
编译→汇编→机器码→CPU执行
能追到指令在流水线中的执行、寄存器操作、逻辑门、晶体管翻转
11. 你读过Datasheet吗?遇到寄存器配置问题怎么排查?
什么是Datasheet?
读过API文档,没读过芯片手册
能从Datasheet找寄存器地址、位域、Errata,配合示波器排查
12. 中断和DMA是什么关系?
不知道
知道中断是事件通知,DMA是数据搬运
能配置中断优先级、ISR约束、DMA通道仲裁、Cache一致性
13. 如果要你设计一门编程语言,从哪开始?
从没想过这个问题
先定义语法,再写词法分析器和语法分析器
从类型系统、语义模型、运行时设计入手,考虑GC/所有权/内存安全
14. Linus Torvalds 为什么被认为是技术领域的大能?
知道他做了Linux,但不知道为什么厉害
Linux内核 + Git,两个改变行业的项目
能分析他的设计哲学: cathedral vs bazaar、务实主义、用数学保证历史不可篡改
15. 图灵机和冯·诺依曼架构,哪个对计算机的影响更大?
不知道这两个是什么
知道是计算机的理论基础,但说不清区别
图灵定义了「计算的本质」,冯·诺依曼定义了「计算机的结构」,一个理论一个工程
本测试基于「码农修仙传」六大境界体系,结果仅供参考。真实修为请结合实际工作能力综合判断。