linux之IPC

linux之IPC

  • 什么是IPC
    • 共享内存(shm)
      • ftok
      • shmget
      • shmat
      • shmdt
      • shmctl
    • 消息队列
      • msgget
      • msgrcv
      • msgsnd
      • msgctl
    • 旗语(信号量)
      • semget
      • semctl
      • semop
      • sem
      • 三级标题
      • 三级标题
    • ipc命令
    • 守护进程
      • 查看守护进程

什么是IPC

IPC: Inter(内核) Process(进程) Communicton(通信)

共享内存(shm)

shm–> share memory
内核会维护主机上的一块内存段
多个进程可以访问这些内存段

1.创建key ftok
2.创建共享内存 shmget
3. 挂载共享内存 shmat
4.卸载共享内存 shmdt
5.删除共享内存 shmctl

ftok

linux之IPC_第1张图片

shmget

linux之IPC_第2张图片

shmat

linux之IPC_第3张图片

shmdt

linux之IPC_第4张图片

shmctl

linux之IPC_第5张图片

消息队列

在主机上,指定一或者多个队列
多个进程可以访问这些队列

消息队列: msg
1.创建key
2.创建消息队列 msgget
3.收发消息 msgrcv msgsnd
.4.删除消息队列 msgctl

msgget

linux之IPC_第6张图片

msgrcv

linux之IPC_第7张图片

msgsnd

linux之IPC_第8张图片

msgctl

linux之IPC_第9张图片

旗语(信号量)

sm —>semaphore
希望,多个进程错开时间,去访问同一块区域
有一个整数
有一些进程可以去操作这个整数
加 随时可以加
减 0以上,随便减,不能减到0以下

信号量编程模型
1.创建key
2.创建信号量 semget
3.初始化信号量 semctl
4.使用信号量 semop
加 减
5.删除信号量 semctl

semget

semctl

linux之IPC_第10张图片

semop

linux之IPC_第11张图片

sem

三级标题

三级标题

ipc命令

ipc命令的作用:用来查看当前主机上的ipc
ipcs 查看
-m 查看 shm
-q 查看 msg
-s 查看 sem’’

ipcrm 删除

守护进程

守护进程也称为精灵进程(Daemon),是运行在后台的一种特殊进程.它独立于控制中断并且周期性的执行某种任务或者等待处理某些发生的事件.

独立的 记录某个进程的情况 系统日志

查看守护进程

ps axj
TPGID 为 -1 的话,为守护进程

IPC的讲解暂时就到这里,等我后面在深入学习,这篇博客也会再重新更新

你可能感兴趣的:(Linux从基础到入门,linux,运维,服务器)