ARM 人才招聘团队以虚拟方式访问了我们的校园,寻找在验证领域的实习生角色。一共进行了3轮,
第 1 轮(笔试):
- 30 Aptitude (时间与工作、时间与距离、百分比、损益、SI & CI 涵盖了 aptitude 的所有主要主题)
- 70 技术(数字、C 基础知识和猜测输出、操作系统概念、CA 理论和一些数值、基于电路的问题(因为我来自 CS 背景,我无法对此进行更多详细说明。)
笔试时长为 2 小时以上。
第 2 轮(技术第 1 轮):关于缓存和流水线等主题的一些基本问题。
- 非流水线架构和流水线架构中的指令执行是如何发生的?
- 需要什么以及为什么我们更喜欢管道而不是非管道架构。
- 什么是内存层次结构?
- 什么是缓存层次结构?
- 排序算法的基本问题
- 项目讨论。他们对使用 C 和Python完成的项目感兴趣。我只有Java和Python,但没有使用 C。
第 3 轮(技术第 2 轮):在自我介绍之后。正式的采访开始了。
- 什么是分页?
- 什么是虚拟内存?您实现虚拟内存概念的不同方式是什么?
- MMU是什么?它有什么作用?
- 什么是 L1、L2 缓存?它们之间有何不同?
- ARM处理器的设计
- 什么是临界区?
- 为什么需要进程同步机制?这些是什么?它们是如何实施的?
- 流程是什么?区分进程与线程?为什么Thread被称为轻量级进程?
- 存在多少种类型的信号量?这些是什么?它们有何不同?
- 关于我的 ML 项目的问题(因为实习生的角色还涉及执行一些回归任务几次)
判决:选择