面试真题

技术面 + 非技术面高频问题 · 企业真题标题 + 校招宝自研参考答案
面试真题
2508 道
技术岗
641 道
非技术岗
1867 道
当前筛选
32 道

按赛道技术岗以技术方向细分;非技术岗按「结构化 / 半结构化 / 无领导 / HR / 职能」细分

按方向/形式点选即筛,再点「全部」还原

按难度

按企业点选查看该公司全部题目

技术岗 · 分类:操作系统 · 难度:中等32 道 · 点击进入查看参考答案

中等操作系统
处理大文件用进程还是线程?
结论:IO密集型大文件处理优先用线程,CPU密集型解析优先用进程(或多进程)。要点:1. 线程共享内存空间,适合顺序/并发读取文件并做轻量处理,避免进程间大数据拷贝,但受GIL限制(Python);2. 进程拥有独立地址…
🎤 百度
中等操作系统
调用一个函数,说出调用函数的具体过程?
结论:函数调用涉及参数传递、控制转移和栈帧管理。具体过程:1.调用方根据调用约定(如cdecl)将参数压栈或从寄存器传入;2.执行call指令,将返回地址压栈并跳转到函数入口;3.被调函数建立栈帧:保存旧ebp,设置新e…
🎤 腾讯
中等操作系统
读写锁是怎么实现的
结论:读写锁采用状态拆分与等待队列实现读共享、写独占。核心要点:1. 用一个原子变量记录状态,如高位存读线程数、低位存写锁标志;2. 读锁获取时若无写者则CAS增加读计数,可重入;3. 写锁获取时CAS抢占写标志并自旋等…
🎤 字节跳动
中等操作系统
堆和栈在操作系统底层的实现
结论:栈由内核映射固定区域并用寄存器管理,堆通过系统调用动态扩展虚拟内存。要点:1. 栈:进程创建时内核分配栈区,栈指针初始指向顶,函数调用push/pop修改esp,向下增长,缺页分配物理页;2. 堆:用户态分配器通过…
🎤 拼多多
中等操作系统
对于信号量、volatile 有没有理解?
结论:信号量是用于并发控制的同步原语,volatile保证变量内存可见性但不保证原子性。核心要点:1. 信号量:维护计数器,P操作减1若负则阻塞,V操作加1唤醒等待者,可控制并发访问资源数(如限流);2. volatil…
🎤 阿里巴巴
中等操作系统
多核 CPU 处理同一块数据时如何同步?
结论:多核CPU处理同一块数据需通过硬件缓存一致性协议与软件同步机制协同保证正确。核心要点:1. 硬件层:多核通过MESI等缓存一致性协议保证各核缓存行同步,但需内存屏障避免重排;2. 软件同步:使用互斥锁(pthrea…
🎤 百度
中等操作系统
多进程的稳定性 + 扩展性
结论:多进程稳定性依赖隔离与监控,扩展性依赖无状态与横向扩容。核心要点:1.稳定性:进程拥有独立虚拟地址空间,单进程崩溃不影响其他;通过守护进程监控并自动重启异常进程;使用IPC降低耦合。2.扩展性:多进程可绑定多核并行…
🎤 百度
中等操作系统
多线程编程如何识别和避免死锁
结论:死锁需同时满足互斥、占有等待、不可剥夺、循环等待四条件;识别靠静态分析锁顺序与动态检测,避免需破坏任一条件。核心要点:1.识别:检查多线程代码是否多锁嵌套且顺序不一致;使用ThreadSanitizer等工具探测锁…
🎤 读书郎
中等操作系统
二进制文件加载进内存后的结构?
结论:二进制文件(如ELF)加载后按段映射到虚拟地址空间,包含代码段、数据段、堆、栈等。核心要点:1.结构:文件头描述入口和段表;.text代码段只读可执行;.data已初始化全局变量;.bss未初始化变量(加载时清零)…
🎤 腾讯
中等操作系统
共享内存的用法以及使用场景
结论:共享内存是进程间通信最快方式,映射同一物理内存免拷贝。用法:1)创建段(shmget/shm_open);2)映射(shmat/mmap);3)进程读写,须配信号量/互斥锁防竞态;4)分离与删除。场景:1)高频大块…
🎤 Momenta
中等操作系统
零拷贝 DMA
结论:零拷贝是利用DMA等技术减少数据在内存间冗余拷贝的IO优化手段。核心要点:1.DMA(直接内存访问)让磁盘或网卡等外设直接与内存传输数据,无需CPU逐字节拷贝;2.传统读文件发送需磁盘到内核缓冲区、内核到用户、用户…
🎤 百度
中等操作系统
内核态和用户态切换
结论:内核态与用户态切换发生在系统调用、中断或异常时,需保存用户上下文、切换特权级并执行内核代码后恢复。核心要点:1.CPU特权级划分(如Ring0内核态,Ring3用户态),用户态无法直接执行特权指令;2.切换途径:用…
🎤 百度
中等操作系统
屏障的原理
结论:屏障用于阻止指令重排序或线程执行乱序,保证特定顺序与可见性。原理分两类:1.内存屏障(如CPU的mfence、编译器__sync_synchronize):禁止编译器与CPU对屏障前后的读写操作重排序,确保之前修改…
🎤 百度
中等操作系统
请简述写时复制的原理以及应用
结论:写时复制(COW)在复制资源时暂不真正拷贝,仅共享,任一方修改才复制副本。原理:1.fork创建子进程时父子共享物理页,页表置只读;2.某方写时触发缺页异常,内核分配新页拷贝原数据再修改,保证隔离;3.应用:Uni…
🎤 网易
中等操作系统
如何通过路径和偏移量确定读写磁盘的位置?
结论:通过文件路径解析到inode,结合偏移量利用块映射算出磁盘物理地址。原理:1.路径解析:从根或当前目录逐层查目录项得inode号;2.inode含直接/间接块指针;3.偏移量除以块大小得逻辑块索引,直接块取指针,间…
🎤 美团
中等操作系统
死锁如何解决?
结论:死锁解决分预防、避免、检测与解除三类。核心要点:破坏死锁四必要条件(互斥、占有并等待、不可抢占、循环等待)可预防;预防手段:一次性分配全部资源(破坏占有等待),按固定顺序申请资源(破坏循环等待)。避免:银行家算法计…
🎤 网易
中等操作系统
死锁问题怎么解决?
核心方案:1.预防死锁:破坏四个必要条件,如资源静态分配(一次性申请所有资源)破坏占有等待,或规定全局加锁顺序破坏循环等待;2.避免死锁:银行家算法,分配前检查系统安全状态;3.检测与解除:定期检测资源图环路,若死锁则终…
🎤 腾讯
中等操作系统
体系结构中的缓存(Cache)
结论:Cache是位于CPU与内存间的高速小容量存储器,缓解速度鸿沟。原理:基于局部性原理(时间/空间);地址映射(直接/组相联/全相联);替换策略(LRU等);写策略(写回/写直达)。应用场景:多级Cache(L1/L…
🎤 百度
中等操作系统
条件变量使用过程中,虚假唤醒是怎么产生的?
结论:虚假唤醒指线程在无显式通知时被唤醒。产生原因:多消费者下信号唤醒多线程但资源已被取走;系统库实现允许偶尔 spurious wakeup;信号中断或超时返回。原理:条件变量需配合互斥锁和while循环检查谓词,因为…
🎤 腾讯
中等操作系统
通信方式上线程与进程有啥区别?
结论:线程间通信(同一进程内)可直接读写共享内存,进程间需借助内核或外部机制。要点:1.线程共享进程地址空间,通信通过全局变量、堆、共享数据,需互斥锁/条件变量同步;2.进程地址空间隔离,通信需用管道、消息队列、共享内存…
🎤 腾讯
第 1 / 2 页下一页 ›
题目整理自公开面经,答案由校招宝自研生成,仅供参考