写点什么

记一次面试

作者:SkyFire
  • 2022 年 7 月 02 日
  • 本文字数:957 字

    阅读完需:约 3 分钟

下午排了一个面试,面了大概一个小时吧,主要是根据对方的简历,还有一些我们这边的要求综合去问的,下面整理一下当时面试题的问题。

  1. 自我介绍(基本是固定流程了)

  2. 简历上的项目介绍

  3. VMM(虚拟机监视器)如何在安全世界和非安全世界之间切换?(自我介绍中有提过 hyper-v)

  4. 简要介绍一下 Linux 内核的启动过程

  5. 简要介绍一下硬件从上电到 os 启动的过程。

  6. TLB 的作用和原理是什么

  7. MMU 完成什么功能?

  8. 两个独立的进程 A 和 B,为什么 A 不会在无意间破坏 B 的内存数据?

  9. 操作系统启动前期为什么不会被中断干扰?

  10. TCP 三次握手的过程。

  11. 有一个 web 服务器,浏览器访问的时候状态一直处于 pendding,所以怀疑 server 有死锁或者是死循环,简述一下排查方式。

  12. ping 命令工作在哪一层?

  13. gdb 的一些常用命令,如何查看某线程调用链信息?

  14. 常用的设计模式

  15. 假设有两个模块,一个模块负责日志,另一个模块负责告警。日志会产生磁盘空间不足的告警,告警模块也会使用日志来记录告警信息。对于这种相互依赖的模块如何设计降低模块间耦合性?

  16. 介绍一下二叉树的中序遍历

  17. 对于一棵二叉查找树,使用中序遍历得到的节点还是有序的吗?

  18. 快速排序的时间复杂度

  19. 网络 io 的同步和异步有什么区别?

  20. poll 返回-1,一定是 fd 出错了吗?

  21. Linux 进程间通信方式有哪些?

  22. 前面提到了进程地址空间隔离,那么共享内存是如何打破这种隔离状态的?

  23. TCP 和 UDP 的优缺点

  24. 简单介绍一下 TLS 的用途及使用方法

  25. docker 容器化的过程中使用了两项很重要的技术,一项用于资源隔离,另一项用于资源配额,简单介绍一下这两项技术

  26. k8s 了解过吗?

  27. Linux 系统中有一些模块可以与内核编译在一起,还可以编译成 ko 动态加载,简述一下两种方式的优缺点。

  28. 简单介绍一下在 linux x86_64 下 c 语言函数的调用过程,栈空间是如何变化的?

  29. 操作系统使用系统调用的方式向应用程序开放内核功能,这样做有什么好处?

  30. 简单介绍一下信号处理流程

  31. 协程是否了解过?

  32. 进程和线程的区别

  33. 一个多线程程序中,如果主线程退出了,进程是否有可能继续存活下去?

  34. Fork 出来的子进程能否直接使用父进程中的 fd?

  35. 对于一个多线程的程序,在其中一个线程进行 fork,子进程的线程数量和父进程中是否相同?

  36. 想从上家公司离职的原因是什么?能否接受我司的加班情况?在本地定居了吗?在以前公司的定级是多少?目前是在职还是离职状态?如果我司给你发了 offer 需要多久可以入职?

  37. 关于我司的情况,你有什么想要了解的吗?

发布于: 刚刚阅读数: 3
用户头像

SkyFire

关注

这个cpper很懒,什么都没留下 2018.10.13 加入

会一点点cpp的苦逼码农

评论

发布
暂无评论
记一次面试_面试_SkyFire_InfoQ写作社区