简单记录操作系统中的常见概念和原理
参考:
进程和线程
- 进程:对运行时程序的封装,是系统进行资源调度和分配的基本单位,实现操作系统的并发
- 线程:线城是进程的子任务,是CPU调度和分派的基本单位,用于保证程序的实时性,实现程序内部的并发
- 关系:一个程序至少有一个进程,一个进程至少有一个线程,线程依赖于进程
- 进程拥有独立的内存单位,而多个线程共享进程的内存
进程间通信的方式
- 管道:管道可用于具有亲缘关系的父子进程间的通信
- 信号:用于通知接收进程某个事件已经发生
- 消息队列:消息的链接表,有写权限的进程可以向队列中添加信息,有读权限的进程可以从队列里读
- 共享内存:多个进程访问同一内存空间,需要依靠同步操作
- 套接字:用于网络中不同机器间的进程通信
线程的同步方式
- 互斥量:只有拥有互斥对象的线程才有访问公共资源的权限
- 信号量:允许同一时刻多个线程访问同一资源,但控制同一时刻访问此资源的最大线程数量
- 信号,Wait/Notify:通过通知操作的方式来保持多线程同步