操作系统八股

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

文章目录

进程和线程的区别

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

并行和并发的区别

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

相关推荐
下午写HelloWorld12 小时前
Linux系统及Ubuntu常用指令
linux·ubuntu·操作系统
Surest14 小时前
AI时代操作系统过时了么?
操作系统
小宇子2B15 小时前
页表凭什么不撑爆内存,CPU 凭什么查得不嫌慢
操作系统
Surest17 小时前
OpenHarmony 技术拆解(一):多内核兼容与硬件能力发布机制
操作系统
我命由我1234520 小时前
Windows 操作系统 - Windows 查看防火墙是否开启、Windows 查看防火墙放行端口
java·运维·开发语言·windows·java-ee·操作系统·运维开发
老王熬夜敲代码1 天前
CPU缓存的访问机制
操作系统·cpu
茶马古道的搬运工2 天前
Linux-Ubantu-贴士-建立Docker 沙盒(三)
操作系统
茶马古道的搬运工2 天前
Linux-Ubantu-贴士-apt的地盘
操作系统
带娃的IT创业者3 天前
穿越回 1980:解读微软开源的“最早 DOS 源码”与操作系统的原点
microsoft·微软·开源·操作系统·dos·源码解析·计算机历史
Seven973 天前
select、poll、epoll 到底有什么区别?一文讲透 I/O 多路复用
操作系统