标签题目
进程线程相关面试题
进程通信方式分别适合什么场景?
这道题考察的不是背诵 IPC 名词,而是能否根据进程关系、通信方向、数据量、时延、可靠性、同步需求和部署范围选择合适方案。回答时应先按场景分类:父子进程简单字节流用管道,本机无亲缘进程可用 FIFO、消息队列或本地 Socket,高吞吐大块数据用共享内存配合同步原语,事件通知用信号,跨主机通信用网络 Socket,文件或 mmap 适合持久化、低频共享和大文件映射。
操作系统的用户态和核心态问题?
用户态和内核态是操作系统用来隔离普通程序与高权限内核代码的两种运行状态,本质目的是保护硬件资源、内核内存和系统整体稳定性。回答时要把权限差异、CPU 特权级、进入内核态的路径、系统调用例子,以及模式切换和上下文切换的区别讲清楚。
多进程和多线程的区别?
多进程和多线程的区别?这道腾讯牛客题的关键是围绕“进程与线程区别及上下文切换”讲清概念、机制、取舍和边界。进程是资源拥有和隔离单位,线程是同一进程内的调度执行单位。同一进程的线程共享地址空间、堆、全局变量和文件描述符,但有独立栈、寄存器上下文、线程局部存储和调度状态。
线程同步,进程同步方法?
线程同步,进程同步方法?这道腾讯牛客题的关键是围绕“线程同步与进程同步方式”讲清概念、机制、取舍和边界。线程同步发生在同一进程共享地址空间内,常用 mutex、rwlock、condition variable、semaphore、barrier、atomic 和 futex;进程同步跨地址空间,常用命名信号量、文件锁、共享内存配进程共享 mutex、管道、消息队列和 socket。
线程间的通信机制?
线程间的通信机制?这道腾讯牛客题的关键是围绕“线程互斥与通信机制”讲清概念、机制、取舍和边界。线程互斥用于保护共享资源,常见 mutex、spinlock、rwlock、atomic/CAS 和 semaphore;线程通信常用 condition variable、线程安全队列、future/promise、eventfd 或 channel 风格封装。
进程有哪些常见状态?
进程有哪些常见状态?这道腾讯牛客题的关键是围绕“Linux 进程状态”讲清概念、机制、取舍和边界。Linux 常见进程状态包括 R 运行或可运行、S 可中断睡眠、D 不可中断睡眠、T 停止、Z 僵尸。面试时要说明这些状态代表任务是在用 CPU、等事件、等不可中断 I/O、被暂停,还是已经退出等待父进程回收。
怎么实现线程之间的互斥?
怎么实现线程之间的互斥?这道腾讯牛客题的关键是围绕“线程互斥实现”讲清概念、机制、取舍和边界。线程互斥的目标是保护共享临界区,确保同一时刻只有一个线程修改共享状态。常见手段包括 mutex、spinlock、rwlock、atomic/CAS 和 semaphore,其中 mutex 是最常用的阻塞互斥原语。
进程间通信方式?
进程间通信方式?这道腾讯牛客题的关键是围绕“进程间通信方式”讲清概念、机制、取舍和边界。进程间通信方式包括匿名管道、命名管道 FIFO、消息队列、共享内存、信号量、信号、Unix domain socket、TCP socket、mmap 和文件锁。选择取决于是否亲缘进程、吞吐、延迟、同步需求和是否跨机器。
进程和线程有什么区别,线程优先级如何理解?
进程和线程有什么区别,线程优先级如何理解?这道腾讯牛客题的关键是围绕“进程线程区别与线程优先级”讲清概念、机制、取舍和边界。进程是资源隔离和拥有单位,线程是同一进程内的调度执行单位。同一进程线程共享地址空间、堆、全局变量和文件描述符,但有独立栈、寄存器、TLS 和调度状态。线程优先级要放到调度器语境理解,Linux 普通线程受 CFS/nice 权重影响,实时线程受 SCHED_FIFO/SCHED_RR 优先级影响。
进程和线程有什么区别?
进程和线程有什么区别?这道腾讯牛客题的关键是围绕“进程与线程区别及上下文切换”讲清概念、机制、取舍和边界。进程是资源拥有和隔离单位,线程是同一进程内的调度执行单位。同一进程的线程共享地址空间、堆、全局变量和文件描述符,但有独立栈、寄存器上下文、线程局部存储和调度状态。
Linux 下如何终止一个进程?
Linux 下如何终止一个进程?这道腾讯牛客题的关键是围绕“Linux 终止进程”讲清概念、机制、取舍和边界。Linux 终止进程通常先用 kill -TERM PID 发送 SIGTERM,让进程有机会优雅退出;无响应时再考虑 kill -KILL 或 kill -9。也可用 pkill/killall 按名称发送信号。
为什么线程上下文切换的开销通常小于进程上下文切换?
为什么线程上下文切换的开销通常小于进程上下文切换?这道腾讯牛客题的关键是围绕“进程与线程区别及上下文切换”讲清概念、机制、取舍和边界。进程是资源拥有和隔离单位,线程是同一进程内的调度执行单位。同一进程的线程共享地址空间、堆、全局变量和文件描述符,但有独立栈、寄存器上下文、线程局部存储和调度状态。
进程间和线程间分别有哪些同步方式?
进程间和线程间分别有哪些同步方式?这道腾讯牛客题的关键是围绕“线程同步与进程同步方式”讲清概念、机制、取舍和边界。线程同步发生在同一进程共享地址空间内,常用 mutex、rwlock、condition variable、semaphore、barrier、atomic 和 futex;进程同步跨地址空间,常用命名信号量、文件锁、共享内存配进程共享 mutex、管道、消息队列和 socket。