线程
所有进程共享3~4G的内核空间,所以基于内核之间的通信能够实现(为了保证安全,每个进程的用户地址空间都是独立的,一般而言一个进程不能直接访问另一个进程的地址空间,不过内核空间是每个进程都共享的,所以进程之间想要进行信息交换就必须通过内核)。
线程之间的通信:
1. 不同进程的线程之间要进行通信,那就是进程之间的通信。
2. 同一进程的线程间的通信,不需要像进程之间的通信那样,需要专门的机制(IPC),因为线程共享进程的地址空间,线程之间的通信仅需要锁机制和信号机制
线程共享的资源(线程之间抢占的资源):
1. 全局变量
2. 静态变量
3. 堆
4. 打开的文件
线程私有的资源:
1. 线程id
2. 线程运行栈
3. 线程中的局部变量