操作系统八股

来源网络资料,仅作个人学习记录使用。

文章目录

进程和线程的区别

  1. 基本概念
    进程是资源分配和调度的基本单位;线程是程序执行的最小单位,是进程执行的子单位。一个进程至少拥有一个线程,一个进程可以运行多个线程,这些线程共享同一块内存。
  2. 资源开销
    进程:由于每个进程都有独立的内存空间,创建和销毁进程的开销较大;进程间切换需要保存和恢复整个进程状态,因此上下文切换开销较高。
    线程:线程共享相同的内存空间,创建和销毁开销较小;线程间切换只需要保存和恢复少量的线程上下文。
  3. 通信和同步
    由于进程间相互隔离,通信需要使用一些特殊机制,如消息队列、管道、共享内存等;线程可通过共享内存直接访问共享数据,通信更加方便。
  4. 安全性
    进程独立性更高,一个进程崩溃不会直接影响其他进程的稳定性,安全性更高;而一个进程里的线程由于内存共享,一个线程崩溃有可能会影响整个进程稳定性,安全性较低。

并行和并发的区别

并行是在同一时刻 执行多个任务,每个任务在不同的处理单元(如多个CPU核心)上执行;并发是在相同时间段执行多个任务,任务可能交替执行,通过时间片轮转或者事件驱动的方式实现。

相关推荐
Trouvaille ~4 小时前
【Linux】进程调度与环境变量:Linux内核的智慧
linux·运维·服务器·操作系统·进程·环境变量·调度算法
肆忆_5 小时前
Day5:线程池进阶——我从「只会跑 void 任务」到「能返回 future」,并用 Demo 验证跑通
操作系统
CS创新实验室5 小时前
计算机考研408【操作系统】核心知识点总结
java·linux·考研·计算机·操作系统·408
_Voosk8 小时前
C指针存储字符串为何不能修改内容
c语言·开发语言·汇编·c++·蓝桥杯·操作系统
OpenAnolis小助手10 小时前
构建新计算范式下的开源生态,龙蜥技术生态分论坛回顾来了
开源·操作系统·龙蜥社区·openanolis
OpenAnolis小助手11 小时前
专访 | 深耕八载,双向赋能:阿里云与龙蜥的开源共生之路
开源·云计算·操作系统·龙蜥社区·openanolis
OpenAnolis小助手15 小时前
基于Anolis OS的国产CPU性能优化实践,共推多芯混部时代操作系统新范式
ai·性能优化·开源·操作系统·龙蜥社区·openanolis
重拾梦想1 天前
操作系统 - 文件管理
操作系统
技术性摸鱼1 天前
程序计数器 PC,指令寄存器IR、状态寄存器SR、通用寄存器GR
操作系统·系统架构师