进程间通信九天学习笔记
day1: 基本进程操作
- fork() 返回pid进程id
- getpid() 获取当前进程ID
- system() 执行系统命令
day2: 管道
- 匿名管道
- pipe(int pipefd[2])
- pipefd[0] 读操作
- pipefd[1] 写操作
- 有名管道(FIFO)
- mkfifo(,0644)
- open()
- read()
- write()
day3: 信号
- 标准信号 (1~31)
- SIGSTOP
- SIGCONT
- SIGKILL
- SIGUSR1
- SIGUSR2
- SIGINT
- 信号处理
- 屏蔽
- 忽略
- 默认
- 捕获(自定义行为)
- signal(int num, 宏)
day4: 消息队列
day5: 共享内存与信号量
- 共享内存
- shmget()
- shmat() 映射
- shmdt() 解除
- 信号量
- semget()
- P 操作 (等待信号量)
- V 操作 (增加信号量)
day6: 线程
day7: 同步互斥与读写锁
- 同步互斥
- pthread_cond_wait()
- pthread_cond_signal()
- 读写锁
- 信号量组
- sem_post()
- sem_wait()
day8: 调度策略
- SCHED_OTHER
- 分时调度策略
- 静态优先级=0
- SCHED_FIFO
- 实时调度策略
- 先到先服务
- cpu=1
- SCHED_RR
- 实时调度策略
- 时间片轮询
- 优先级
- 抢占式调度策略