0%

面试经历--字节篇

背景

在六月面试了字节跳动的 Linux 内核岗位,一言难尽。

面试

因为内核的知识基本不记得了,所以整个面试时间比较短。

  1. 自我介绍

    常规的自我介绍环节,讲了下自己的编译器背景,此时面试官才知道面试者的不是内核的,和HR讨论之后,本着友好的态度,继续进行内核的面试。

  2. 内核锁

    spin_lock 的原理和用法。

  3. 中断

    softirq 和 tasklet 的区别。

  4. 内存分配

    kmalloc 和 vmalloc 的区别,设备使用哪个来分配内存。kmalloc只用于内核的内存分配。

  5. percpu 属性的作用

  6. container_of 的写法

    只记得 0 地址,类型转换和指针解引用的方式用错了。

    基本上都是些小的问题,但是涉及到内核的主要模块,调度、中断、内存和常见的代码段。

总结

本来跟 HR 预约的是编译器的岗位,但是到了面试环节才知道面试官是Linux内核的,所以整个面试体验不是太好。不知是猎头还是HR修改了面试岗位。总之,内核的东西还是需要回顾和学习的。