weixin_39849127
weixin_39849127
2020-12-09 13:46

英特尔面试专项准备

  • 自己挖的坑

  • 单元测试

  • 特性用例测试
  • 虚拟化原理与实现
  • CPU虚拟化
  • 内存虚拟化
  • 内存复用
  • C语言安全规范
  • Kubernetes多租户管理
  • OCI特性开发
  • 容器网络调研
  • Cloud Foundary
  • OpenStack

  • Intel做招聘时每个职位都有一套标准,这些职位的技能描叙都 是Intel经过长期实践,参考国际人力资源顾问公司对人才素质的研究成果,得出来的依据。

  • ouhan的博客

  • 员工如果能够给公司推荐一名员工,最后被公司录用,公司给员工一定物质上的奖励。

  • 在我的简历上写了一个分数和什么代号

  • 用英文自我介绍,然后问你的项目情况。

  • 用英语presentation研究生时的科研工作

  • 包括你项目中用到的技术。反正只要是你自己真正做过的项目

  • 英文准备简历

  • About yourself, like your family education, hoobies

  • be relaxed and be confident
  • fingding a job that fits you is far better than finding a job that you're not competent in
  • have created an excellent resume prior to the interview day which highlighted your strengths and accomplishments.
  • 简单、语速放慢、突出卖点
  • 有效交流:教育背景、实习经历、工作经验、兴趣爱好、职业规划、性格特征、以及我的优势

    • It’s my great pleasure/honor to have this opportunit
    • graduate in next summer
    • well-chosen internship experience,
    • no work experience,a blank slate
    • I'm open minded.
    • out of Ignorance,been eager to server in a better way
    • During my college, I have solid academic performance about XXX and I am good at XXX in a way
  • 英特尔上海业务

  • 国内开源界超牛逼

  • intel OTC 虚拟化

  • 体系结构

  • 大约三四题涉及体系结构,诸如pipeline,缓存的hit-ratio之类,

  • 内核编程和用户编程的区别

  • copy_from_user函数是否可能阻塞

  • brk系统调用的理解,用户的交互
  • int main(){for(;;);return 0;} 这个代码运行后系统会有什么情况,内核如何感知?如何处理?

  • 内存管理

  • page fault的过程

    • linux内核中do_page_fault
    • do_pte_fault两个函数的执行过程
    • copy on write
    • paging on demand
  • 当前Linux 页表是几级的
  • malloc(100M)整个系统的动作,何时申请内存、缺页中断、阻塞等一系列问题

  • 内核社区

  • 2.4/2.6内核你知道的有哪些不同

  • 进程管理

  • 进程调度算法,有哪些影响进程优先级的因素

  • 设备管理

  • Linux下常用命令

  • 内存使用

  • linux中数据结构

  • 图的DFS非递归算法的大概实现,和广度优先遍历非递归算法的实现

  • 数据结构的理解,内核中用到那些比较牛的数据结构,然后开始漫谈算法

  • 多线程同步

  • 多线程同步及各种方法的用途区别(三种)

  • 关于平衡二叉树的平衡方式和堆排序是怎么排序的,时间和空间复杂度
  • 列举线程函数库
  • 线程同步
  • fork &pthread_create

  • C语言编程

  • const

  • static
  • C语言中的调用约定
  • 同步函数
  • memcpy需要注意哪些
  • 拷贝构造函数
  • MapReduce的shuffle过程有了解
  • struct s {char a;short b;double c;}; sizeof(s),为什么要对齐。
  • char p = 0×1000; char a = p; 编译、运行会有什么状况、解释原因
  • foo(){static int a = 0;} 这里的变量a在进程空间存放的位置是哪里?在静态区;这条语句什么时候被执行,我说第一次调用foo时,只执行一次;
  • struct S{char a;int b}; sizeof(struct S)是多少?我说8;为什么?字节对齐,为了提高访问效率。

  • 动态链接库

  • 如何生成动态链接库

  • 如何加载动态链接库
  • Gcc 预处理选项-E

  • shell脚本实现

  • 搜索替换

  • 关于驱动的问题

  • 是否做过开源项目,用到那些工具

  • elf 二进制文件加载过程

  • do_brk是干什么的,内核如何管理heap

  • dcache用来做什么?

  • 如何发起系统调用?或者说如何陷入内核(回答时得注意vdso机制)

  • linux用户态的memory layout(有两种方案)

  • 关于kobject的建立

  • 内核的各种同步机制,在什么情境下用,用spinlock的时候都可以用mutex替代么?

  • rcu锁机制的原理,什么情景下适合用。

  • linux里,一个elf文件被加载到虚拟地址空间后起始地址是什么(0x8048000),选这个地址有什么原因么,这个地址能不能改(先导出 link script后改link script或者linker的某个啥参数)

  • 与elf文件内存映像有关的其他一些问题(总之在linker & loader那书里都有)

  • x86里指令和数据cache是分开的么

  • ilp和tlp相关的一些问题

  • vivt和vipt cache的特点,优缺点

  • 什么场合下需要冲洗tlb,什么场合下需要冲洗cache

  • 关于memory barrier的问题,内核中的各种屏障(这个我答得不好,因为我现在仍然不明白这些)

  • smp中的总线监听协议,保证同步的方法

  • numa是啥

  • 信号处理相关问题讨论

Linux 支持多少信号?31个。如何产生信号?谁发送的?举几个信号的例子?有哪些信号是不可屏蔽的?

他介绍了idle进程,现在好多进程都设置了SIGALARM信号,从CPU睡眠节省电量的角度考虑,如何提高效率,如何优化,我说时钟中断来处理这些信号,同时对这些信号处理进程设计好的数据结构,他说这个问题可能太复杂,就没让我继续回答。

  • 线程&进程讨论

线程&进程的区别以及优缺点?最重要的是线程间共享用户空间,这样可以节省内存,同时,调度时开销比较小,其它还有不少优缺点。

线程如何调度呢?我说其实内核根本不知道线程的存在,就是一般的进程调度,

线程同步有哪些方法?互斥锁、读写锁、信号量、条件变量。

pthread_join函数的作用和用法是什么?我说根多进程的waitpid类似,等待指定线程的结束。

最新的线程库是NPTL?有什么新的特性?我说不太清楚,他说没关系。

  • 脚本打印根目录下所有文件,并输出到一个文件中,我写了一个脚本,他说如何用一个命令来实现,我说用find / -type f >filelist即可。

  • 驱动&内核模块做过吗?我简单介绍了我曾经做过的截取进程访问地址的内核模块。感觉比较满意就再问如何安装一个内核模块?我说insmod。

内核模块存放的位置是:这个问题上次面试就问过,呵呵。

  • 你用的Linux哪个发行版本?我回答FedoraCore,如何升级一个软件?我说用yum命令,他又问yum的基本工作原理是什么?我虽然不知道但是我肯定的说:先到指定网站上下载最新的安装包,然后用rpm –ivh升级。

  • 10、如何加载动态链接库?共享库呢?如何查找已经在内存的共享库?ldd命令的作用是什么?

  • 11、mmap系统调用讨论

系统调用的返回值是什么?映射在用户空间的虚拟地址。

mmap的实现过程能简单说说吗?我就根据看过的内核代码说了一下。

如果两个进程同时对一个文件执行mmap,进行写操作,会出现什么情况?

mmap如何共享内存?

  • 现代体系结构上的unix:内核程序员的smp和caching技术

  • 告诉我我们公司为什么要录取你

  • 你自己认为有什么优势来intel
  • high sense of responsibility
  • be highly organized and efficient
  • highly motivated and reliable person
  • be punctual
  • keep promises
  • cheerful and friendly
  • team work:ability to work well with others
  • initiative,independent with good communication skills
  • be willing to work under pressure with leadership skills
  • with my strong academic background,I am capable and competent
  • Do some positive contributions
  • Hard-working responsible capable and outgoing.
  • Very interesting in learning new things
  • 讲讲跟团队合作方面的案例
  • 其他
  • 他说Intel都是根据你的兴趣给你安排职位而不是有一个职位去找人,想让我自己选择一下职位,最后我选择了做OpenStack,
  • 一是怎么形容自己的做事风格
  • 二是你对电信行业的看法。
  • 在Intel工作没人会把你当成实习生,就像一颗齿轮要开始运转了,职业口碑很重要
  • 职业技术人员从2-11级
  • Intel对从公司离开的人有一次重复雇佣的机会,对离开的优秀员工公司还是鼓励他们回来。
  • 6%涨幅,只能跳到,比如ibm,emc,vmware,oracle,ms等
  • 13个月
  • 奖金的额度是1%的年薪乘以一个公司整体的业绩参数,1年发放一次。
  • 两天左右会有收到offer,其中会有基本工资、股票、奖金等

该提问来源于开源项目:xuliker/kde

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

12条回答

  • weixin_39849127 weixin_39849127 4月前
    点赞 评论 复制链接分享
  • weixin_39849127 weixin_39849127 4月前

    https://www.kubernetes.org.cn/572.html

    点赞 评论 复制链接分享
  • weixin_39849127 weixin_39849127 4月前

    CPUSET 和 CGROUP

    点赞 评论 复制链接分享
  • weixin_39849127 weixin_39849127 4月前

    https://www.zhihu.com/question/19666878

    点赞 评论 复制链接分享
  • weixin_39849127 weixin_39849127 4月前

    把Intel出的那本系统虚拟化好好看看

    intel硬件虚拟化的机制可能会问的多一点

    面试内容不统一,完全看面试官风格

    外企面试的时候英语自我介绍该说点什么?

    点赞 评论 复制链接分享
  • weixin_39849127 weixin_39849127 4月前

    http://oenhan.com/archives

    • about qemu & kvm
    点赞 评论 复制链接分享
  • weixin_39849127 weixin_39849127 4月前

    http://liwei.life/2016/01/22/cgroup_io/

    点赞 评论 复制链接分享
  • weixin_39849127 weixin_39849127 4月前

    http://luisbg.blogalia.com/historias/74062

    点赞 评论 复制链接分享
  • weixin_39849127 weixin_39849127 4月前

    Well, my name is Aaron, 23 years old. Next summer I will get my master degree in this university after 5 years specialist study on software enginerring. It has been a long time for me to became a underlying technology developer from a Java freshman.

    About half a year ago, I got an opportunity to be an intern in the fifth department of Euler as a virtualization software developer serving for 5 cloud products lines in Huawei.As a pure C programmer , I write a little bit python for testing as well.

    In my past two years, I ever contributed some patches to open source projects such as docker now is moby and the PaaS killer kubernetes a good try during another internship in a container startup company built from SEL lab.

    In the stage of my undergraduate,I have arleady accessed to the intel-background technologies such as the openstack the star in the infra structure industry and the consumer-level 3D real sense camera.

    I always sense the influ ence from Intel as I stroll in the computer scinence especially the OTC department in virtualization field. And I have to say, the linux kernel powered by the Intel multiprocessor chip always makes me foolish and hungry.

    Two days ago, Joyce told me I passed the writing part as expected and now here I am. Extremely, I am looking forward to joining the Intel to be the part of you as my first step in my career.

    That's all and any question?

    点赞 评论 复制链接分享
  • weixin_39789979 weixin_39789979 4月前

    初学者从 bug fix 入手最好。从小问题开始,不要怕问题小。从小到大,比较容易被接受,而且可以逐步建立自己的 credit,熟悉开发社区的氛围,为将来做更大的 feature 或项目打下基础。此外,对内核开发者而言,硬件知识也很重要。

    点赞 评论 复制链接分享
  • weixin_39789979 weixin_39789979 4月前

    https://01.org/zh

    点赞 评论 复制链接分享
  • weixin_39789979 weixin_39789979 4月前

    精通C语言编程, 有一定内核开发经验, 最好有可查的LKML或相关邮件列表记录. 喜欢发现问题, 能提出自己的想法 较好的团队合作和交流能力, 喜欢和善于和社区交流. 较好的英文读写能力, 口语好者优先. 对IA架构有一定了解.

    点赞 评论 复制链接分享