码迷,mamicode.com
首页 > 编程语言 > 详细

应用_进程线程

时间:2019-06-16 11:46:53      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:进程间通讯   内容   应用   mat   style   sem   物理   使用   内存   

进程线程


1.进程:

 

 

 

  进程间通讯(IPC):

  1. 种类:无名管道,有名管道,信    号

            消息队列,共享内存,信号量

             socket

 

  2.目的:实现数据共享

  3.  

  无名管道:内核在物理空间开辟的一段共享缓存,无文件名只用于亲缘之间;

 

 

 

 

  有名管道:内核在物理空间开辟的一段共享缓存,已文件形式操作缓存;

 

 

 

 

 

  信号

 

 

 

 

  消息队列:内核在物理空间创建用于存放消息的双向循环链表;

     函数:msgget    :创建获取标识符

        msgsend :通过标识符发送编号内容

        msgrcv    :通过标识符接收编号内容

        msgctl     :通过标识符删除消息队列

 

 

  共享内存:内核在物理空间开辟一大段缓存空间,直接使用地址共享读写,实现通信;

     函数:shmget :创建获取共享内存

           shmat  : 映射建立

        shmdt  : 映射取消

        shmctl  :删除共享内存

 

 

  信号量:多进程线程共享操作,通过加锁机制资源保护,实现同步与互斥,防止干扰;

     函数:semget :创建获取信号量集合

        semctl  :设置初始值

           semop : P V 操作 

           semctl : 删除信号量集合

 

 

   

 

 

 

 

 

 

 

2.线程:轻量级进程,CPU调度的最小单位

    函数:pthread_creat 注册线程函数,实现并发运行

       pthread_dtach/self 线程分离,自动回收

       pthread_cannel/exit  粗暴主动,终止线程

       pthread_join      回收资源(阻塞等待次线程回收)

       pthread_cleanup_push/pop 线程退出函数(压栈弹栈必须成对)

 

 

 

 

 

 

 

 


<笔记>

1. 程序运行在磁盘,不占系统资源

 进程运行在内存,占用系统资源

2. fork之前的代码,父子进程都拥有

3. 

 

应用_进程线程

标签:进程间通讯   内容   应用   mat   style   sem   物理   使用   内存   

原文地址:https://www.cnblogs.com/panda-w/p/10992334.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!