面试真题

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

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

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

按难度

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

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

简单操作系统
进程和线程的区别
结论:进程是资源分配的基本单位,线程是CPU调度和执行的基本单位。核心区别:1.地址空间:进程间相互独立,同一进程内线程共享地址空间;2.开销:进程创建、销毁、切换开销大,线程较小;3.通信:进程间需IPC(管道、消息队…
🎤 百度 / 腾讯
简单操作系统
从三个方面回答Linux进程与线程的区别
结论:从资源拥有、调度单位、通信方式三方面区分。1. 资源:进程是资源分配基本单位,拥有独立虚拟地址空间、文件描述符等;线程共享所属进程的资源,仅独有栈和寄存器;2. 调度:线程是CPU调度最小单位,同一进程内线程切换不…
🎤 小鹏汽车
简单操作系统
堆和栈的区别?
结论:栈由系统自动管理,堆需手动或GC管理,二者在内存布局、生命周期、性能上不同。要点:1. 栈内存连续,函数调用时移动栈指针分配,释放随函数返回,速度快但大小受限;2. 堆由内存分配器管理,通过malloc/new动态…
🎤 京东
简单操作系统
几个常见的Linux操作
结论:常见Linux操作包括文件管理(ls, cd, cp, mv, rm)、权限管理(chmod, chown)、进程控制(ps, top, kill)、网络诊断(ping, netstat, curl)、文本处理(g…
🎤 百度
简单操作系统
进程和线程的区别,何时使用多线程和多进程?
结论:进程是资源分配独立单位,线程是调度执行单位且共享进程内存;多进程适合强隔离与CPU密集,多线程适合高并发IO与数据共享。区别:地址空间(进程隔离,线程共享)、通信(进程IPC如管道,线程直接变量)、开销(进程创建切…
🎤 腾讯
简单操作系统
进程间的通讯方式
结论:进程间通信(IPC)主要有六种方式:管道、消息队列、共享内存、信号量、信号、套接字。 要点: - 管道:匿名管道(父子进程)和命名管道(无亲缘关系),半双工,基于文件系统; - 消息队列:内核中消息链表,可独立于进…
🎤 百度
简单操作系统
请简述进程和线程切换的区别?
结论:进程切换开销大,线程切换开销小。要点:1.进程拥有独立地址空间,切换需保存恢复PCB、切换页表及刷新TLB;2.线程隶属进程,共享地址空间,切换仅需保存线程上下文(寄存器、栈指针等),不切页表;3.进程隔离性强但调…
🎤 蚂蚁集团
简单操作系统
如何查看系统负载?
使用uptime、top、htop或cat /proc/loadavg查看系统负载。核心要点:uptime显示load average三个数值,分别代表1/5/15分钟平均负载;top实时展示包括负载的任务状态;/pro…
🎤 腾讯
简单操作系统
什么是孤儿进程和僵尸进程
结论:孤儿进程是父进程先退出,子进程被init(pid=1)收养继续运行;僵尸进程是子进程终止但父进程未wait()回收,残留PCB占资源。 核心要点:孤儿进程无害,由init回收;僵尸进程状态为Z,占进程号,大量会导致…
🎤 小红书
简单操作系统
什么是内存泄露?列举检测内存泄露的方案
结论:内存泄露指程序分配内存后失去引用且无法释放,导致可用内存逐渐减少。检测方案:1.静态分析工具(如Coverity)扫描代码未释放路径;2.动态检测:Linux下Valgrind、AddressSanitizer跟踪…
🎤 拼多多
简单操作系统
为什么协程更轻量?
结论:协程更轻量因用户态调度、栈小、切换成本低。要点:协程在用户态由程序调度,切换无需内核介入,避免系统调用与上下文切换开销;初始栈仅几KB(如Go 2KB动态扩),线程默认MB级;数量可达百万级而线程受资源限制数千;对…
🎤 腾讯
简单操作系统
为什么栈的分配速度比堆快?
结论:栈分配快因仅需移动栈指针,堆需复杂查找与维护。要点:1.栈内存随函数调用自动分配,栈顶指针递减即可,连续无锁;2.堆分配需搜索空闲链表、切分内存、处理碎片,可能调用系统brk/mmap;3.栈无碎片且缓存局部性好,…
🎤 拼多多
简单操作系统
线程共享的有什么?
结论:同一进程内的线程共享进程的大部分资源,仅私有少量执行上下文。共享部分:1. 地址空间(代码段、数据段、堆);2. 全局变量和静态变量;3. 打开的文件描述符;4. 信号处理方式;5. 当前工作目录等。不共享(线程私…
🎤 腾讯
简单操作系统
线程和进程的区别?
结论:进程是资源分配的基本单位,线程是CPU调度的基本单位,线程共享进程资源故开销更小。核心区别:1. 资源:进程拥有独立地址空间、文件等资源;线程共享所属进程资源;2. 调度:线程切换只需保存少量上下文,进程切换需切换…
🎤 腾讯
简单操作系统
线程间的通讯方式,多个服务,单服务
先给结论:单服务内线程通信靠共享内存+同步原语,多服务间需IPC或网络。核心要点:单服务(同进程)线程共享地址空间,可直接用全局变量或队列,但必须用互斥锁、条件变量、信号量避免竞态;示例:生产者-消费者用互斥锁保护队列,…
🎤 百度
简单操作系统
线程与协程的区别?
结论:线程由内核调度,协程由用户态调度,协程更轻量。要点:线程是OS调度单位,栈MB级,切换需内核保存上下文(寄存器、页表等),开销大;协程运行在线程上,栈KB级,切换仅保存少量状态,无系统调用;对比:线程阻塞引发内核切…
🎤 快手
简单操作系统
栈里面除了局部变量,函数参数 返回值,还有啥?
结论:栈帧除局部变量、参数、返回值外还有返回地址、保存寄存器、填充等。要点:call指令压返回地址;函数入口push ebp保存旧基址,设新ebp;callee-saved寄存器存栈;对齐填充满足16字节对齐;可能有异常…
🎤 腾讯
简单操作系统
Linux 的 `read` 和 `write`
结论:read/write是POSIX标准文件I/O系统调用,操作文件描述符。原理:#include <unistd.h>;read从fd读数据到buf,原型 ssize_t read(int fd, void *buf…
🎤 百度
简单操作系统
Linux 如何查看 CPU 核数?
直接结论:使用nproc查看逻辑CPU核数;lscpu查看详细拓扑;或读/proc/cpuinfo。展开:nproc调用sysconf返回在线逻辑核数;lscpu从sysfs采集显示socket、core、thread数…
🎤 腾讯
简单操作系统
Linux常见命令 ,搜索等
结论:文件操作ls/cd/cp;搜索find按名、grep按内容、awk列处理;管道组合命令。要点:find / -name '*.log'遍历目录树;grep -rn 'error' .递归匹配正则;ps aux | …
🎤 百度
第 1 / 2 页下一页 ›
题目整理自公开面经,答案由校招宝自研生成,仅供参考