📡
首页
🏢
企业
📚
考试
📖
攻略
📰
日报
👤
我的
校招宝-应届生校园招聘情报站
聚合秋招/春招/实习/提前批
面试真题
技术面 + 非技术面高频问题 · 企业真题标题 + 校招宝自研参考答案
面试真题
2508 道
技术岗
641 道
非技术岗
1867 道
当前筛选
771 道
按赛道
技术岗以技术方向细分;非技术岗按「结构化 / 半结构化 / 无领导 / HR / 职能」细分
全部赛道(2508)
技术岗(641)
非技术岗(1867)
按方向/形式
点选即筛,再点「全部」还原
全部(2508)
求职动机(1737)
数据库(114)
C++(85)
Go(82)
Java(69)
网络(65)
操作系统(54)
后端(39)
前端(37)
算法(31)
银行面试(31)
结构化面试(30)
HR面试(27)
运维(22)
其他(17)
行为面试(14)
AI算法(13)
半结构化面试(12)
情景应变(10)
大数据(6)
测试(4)
无领导小组讨论(3)
自我介绍(3)
产品(2)
Python(1)
按难度
简单(277)
中等(468)
困难(26)
按企业
点选查看该公司全部题目
百度(161)
腾讯(139)
通用(87)
阿里巴巴(62)
网易(55)
京东(49)
中国储备粮管理集团有限公司(43)
字节跳动(34)
大华股份(11)
美团(10)
Momenta(8)
小鹏汽车(8)
深信服(8)
Shopee(7)
小米(7)
拼多多(7)
滴滴(7)
虎牙(6)
读书郎(6)
金山(6)
小红书(5)
快手(5)
搜狐(5)
闪送(5)
全部题目
771 道 · 点击进入查看参考答案
中等
操作系统
多线程编程如何识别和避免死锁
结论:死锁需同时满足互斥、占有等待、不可剥夺、循环等待四条件;识别靠静态分析锁顺序与动态检测,避免需破坏任一条件。核心要点: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.进程地址空间隔离,通信需用管道、消息队列、共享内存…
🎤 腾讯
中等
操作系统
系统调用能否引起线程切换?malloc是不是系统调用?
结论:系统调用可能引线程切换,malloc是库函数非直接系统调用。要点:1.系统调用进入内核,若阻塞(如IO等待)当前线程让出CPU引发切换,非阻塞调用可能不切换;2.malloc属C标准库,在用户态管理堆空闲链表,仅当…
🎤 滴滴
中等
操作系统
写文件时进程宕机,数据会丢失?
结论:进程崩溃但OS存活数据不丢,机器断电则未刷盘丢失。原理:write()将用户数据拷入内核页缓存,进程退出后缓存由OS接管异步刷盘(pdflush),故kill -9不丢;若O_DIRECT或fsync()已强制落盘…
🎤 百度
中等
操作系统
虚拟内存与物理内存的区别?为什么需要虚拟内存
结论:虚拟内存是进程逻辑地址空间抽象,物理内存是硬件RAM;虚拟内存通过映射隔离并扩展内存。要点:区别为虚拟内存每进程独立(如32位4GB),物理内存全局共享,经MMU页表映射;需要原因:1隔离提升安全稳定;2用磁盘sw…
🎤 腾讯
中等
操作系统
执行系统调用的整个过程?
系统调用是用户态陷入内核态执行特权操作的过程。核心要点:用户调库函数将调用号存寄存器;执行syscall指令CPU切内核态保存上下文;内核查表执行服务例程;返回结果恢复用户态;示例read触发sys_read。对比:sy…
🎤 网易
中等
操作系统
inode是什么以及inode的作用?
结论:inode是Linux/Unix文件系统的索引节点,存储文件元数据而非文件名。作用:1. 以唯一inode号标识文件;2. 记录权限、大小、时间戳、数据块指针等属性;3. 目录仅维护文件名到inode的映射,硬链接…
🎤 美团
中等
操作系统
Linux进程与线程的区别-进程的底层逻辑
结论:进程是资源分配最小单位,线程是调度最小单位;底层逻辑不同。要点:进程有独立task_struct和mm_struct地址空间、文件表;线程共享地址空间与文件表,独立栈和寄存器。创建:进程fork()写时复制父tas…
🎤 小鹏汽车
中等
操作系统
Linux进程与线程的区别-线程的三种实现方式
结论:线程实现分用户级(N:1)、内核级(1:1)、混合(M:N);Linux用1:1。要点:用户级在用户态调度无系统调用但阻塞全阻;内核级由内核clone创建真正并行但切换成本高;混合多对多兼顾。Linux通过NPTL…
🎤 小鹏汽车
‹ 上一页
第 27 / 39 页
下一页 ›
题目整理自公开面经,答案由校招宝自研生成,仅供参考
首页
企业
考试
攻略
日报
我的