AMD 来到我们的校园(实际上)是为了招聘实习生 9 个月来从事他们的项目。他们将所有双学位(BTech + MTech)计算机科学专业的学生和电子专业的学生列入了候选名单。第一轮是微软团队的面试。我来自计算机科学背景。
第1轮:
- 我被要求首先解释我参与的任何项目。
- 然后我得到了一个编码问题,在链表的中间有效地插入一个节点。
- 指针存储在内存中的什么位置?
- 什么是线程?线程和进程的区别
- 您如何确保线程按照您希望它们写入共享资源的方式运行
- 指针(在编码第一个问题时使用)分配了虚拟地址还是物理地址?
- 你理解的虚拟内存是什么?
- 虚拟内存是如何管理的?
- 系统启动时会发生什么?
- 跟进上一个问题:什么是引导加载程序?它有什么作用?
- 什么是缓存?为什么我们需要缓存?
- 虚拟内存中的地址转换