Linux10信号量&消息队列

Posted by 川川的博客 on May 15, 2025

信号量

硬件上互斥

  • semget创建信号量,如果不是IPC_PRIVATE私有方式,多个进程传入同一个key,不能修改信号量大小

image-20250622174119587

image-20250622175424216

二元信号量 实现PV操作

  • P操作是一个原子操作(原语),信号量值的测试和减一操作

image-20250622180839016

image-20250622180942397

更高精度的时间统计

image-20250622181717674

image-20250622181755191

计数信号量 SETALL GETALL

image-20250622184842950

image-20250622184933743

生产者消费者

  • 注意:判断条件需要放到P V操作中,才能保证多个生产者或者多个消费者只能一个去访问共享资源

image-20250622211151829

PV一定要把所有对共享资源的访问保护到

image-20250622211811631

死锁

image-20250622213538887

消息队列

  • IPC 只能在本机通信

image-20250623142020453

image-20250623145324225

image-20250623145333471

proc文件系统

/proc/cpuinfo