操作系统面试
...大约 1 分钟
操作系统面试
操作系统简介
什么是进程和线程?它们有哪些区别和联系?
进程是正在运行的程序,其占用系统资源是独立的。
线程是系统调度的最小单位,其使用系统资源是共享的。
死锁是什么?如何预防和避免死锁?
互斥
占有并等待
不可强占
循环依赖
线程间有哪些通信方式?
共享内存
MQ
RPC
锁
管程(synchronized)
信号量
什么是零拷贝?说一说你对零拷贝的理解?
零拷贝的关键在于让操作系统内核直接完成数据的传输工作,绕过应用程序的缓冲区,避免了数据在内核空间(Kernel Space) 和 用户空间(User Space) 之间来回拷贝的巨大开销。
并发和并行有什么区别?同步和异步有什么区别?
- 并行是同时处理多项任务;并发是同一时段处理多项任务。并行和并发的例子:正在吃饭,电话来了,一边吃饭,一边电话,这是并行;正在吃饭,电话来了,先接电话,再吃饭,这是并发。
- 同步、阻塞的例子:发完短消息,啥也不干,等着对方回复。
- 异步、非阻塞的例子:发完短消息,去做其他事,收到消息提醒,再查看回复。
Powered by Waline v2.15.7