Windows 和 Linux 的IPC API对应表
原文出处:http://blog.csdn.net/zhengdy/article/details/5485472
Windows 和 Linux 的IPC API对应表
| Windows | Linux | Classification |
|---|---|---|
| CreateProcess() CreateProcessAsUser() |
fork() setuid() exec() |
Mappable |
| TerminateProcess() | kill() | Mappable |
| SetThreadpriority() GetThreadPriority() |
Setpriority() GetPriority() |
Mappable |
| GetCurrentProcessID() | getpid() | Mappable |
| Exitprocess() | exit() | Mappable |
| WaitForSingleObjec() WaitForMultipleObject() GetExitCodeProcess() |
waitpid() ※Using Sys V semaphores, WaitForSingleObjec/MultipleObject can be implemented |
Context specific |
| GetEnvironmentVariable() SetEnvironmentVariable() |
getenv() setenv() |
Mappable |
| Windows | Linux | Classification |
|---|---|---|
| CreateThread() | pthread_create pthread_attr_init pthread_attr_setstacksize pthread_attr_destroy |
Mappable |
| ThreadExit() | pthread_exit | Mappable |
| WaitForSingleObject() | pthread_join pthread_attr_setdetachstate pthread_detach |
Mappable |
| SetPriorityClass() SetThreadPriority() |
setpriority sched_setscheduler sched_setparam pthread_setschedparam |
Context Specific |
| Windows | Linux -- threads | Linux -- process |
|---|---|---|
| Mutex | Mutex - pthread library | System V semaphores |
| Critical section | Mutex - pthread library | Not applicable as critical sections are used only between the threads of the same process |
| Semaphore | Conditional Variable with mutex - pthreads POSIX semaphores |
System V Semaphores |
| Event | Conditional Variable with mutex - pthreads | System V Semaphores |
| Windows | Linux -- threads | Linux -- process | Classification |
|---|---|---|---|
| CreateSemaphore | sem_init | semget semctl |
Context specific |
| OpenSemaphore | Not applicable | semget | Context specific |
| WaitForSingleObject | sem_wait sem_trywait |
semop | Context specific |
| ReleaseSemaphore | sem_post | semop | Context specific |
| CloseHandle | sem_destroy | semctl | Context specific |
| Windows | Linux -- threads | Linux -- process | Classification |
|---|---|---|---|
| CreateEvent OpenEvent |
pthread_cond_init sem_init |
semget semctl |
Context specific |
| SetEvent | pthread_cond_signal sem_post |
semop | Context specific |
| ResetEvent | N/A | N/A | Context specific |
| WaitForSingleObject | pthread_cond_wait pthread_cond_timedwait sem_wait sem_trywait |
semop | Context specific |
| CloseHandle | pthread_cond_destroy sem_destroy |
semctl | Context specific |
| Windows | Linux -- threads | Linux -- process | Classification |
|---|---|---|---|
| CreateMutex | pthreads_mutex_init | semget semctl |
Context specific |
| OpenMutex | Not applicable | semget | Context specific |
| WaitForSingleObject | pthread_mutex_lock pthread_mutex_trylock |
semop | Context specific |
| ReleaseMutex | pthread_mutex_unlock | semop | Context specific |
| CloseHandle | pthread_mutex_destroy | semctl | Context specific |
| Windows | Linux | Classification |
|---|---|---|
| InitializeCriticalSection InitializeCriticalSectionAndSpinCount |
pthreads_mutex_init | Mappable |
| EnterCriticalSection TryEnterCriticalSection |
pthread_mutex_lock pthread_mutex_trylock |
Mappable |
| LeaveCriticalSection | pthread_mutex_unlock | Mappable |
| DeleteCriticalSection | pthread_mutex_destroy | Mappable |
| Windows | Linux -- threads | Linux -- process | Classification |
|---|---|---|---|
| SignalObjectAndWait | semop | semop | Context specific |
| WaitForMultipleObjects | sem_wait sem_trywait |
semop | Context specific |
Windows 和 Linux 的IPC API对应表的更多相关文章
- MySQL在windows和linux下的表名大小写问题
MySQL在windows下是不区分大小写的,将script文件导入MySQL后表名也会自动转化为小写,结果再想要将数据库导出放到linux服务 器中使用时就出错了.因为在linux下表名区分大小写而 ...
- 4.windows和Linux下创建oracleusername表空间,表,插入数据,用户管理表等操作
进入超级管理员,运行下面命令 Window下创建数据库.表空间,用户,插入数据等操作 -- 01 创建表空间 -- 注意表空间的路径 依据实际安装环境进行调整 CREATE TABLESPACE ts ...
- Windows、Linux下文件操作(写、删除)错误的产生原因、及解决方法
catalog . 引言 . Linux平台上涉及的File IO操作 . Windows平台上涉及的File IO操作 0. 引言 本文试图讨论在windows.linux操作系统上基于C库进行文件 ...
- 【转】进程间通信方式总结(windows 和linux)
平时看的书很多,了解的也很多,但不喜欢总结,这不昨天面试的时候被问到了进程间通信的方式,因为没有认真总结过,所以昨天答得不是特别好.现在将linux和windows的进程间通信方式好好总结一下. ...
- [转帖]Windows和Linux对决(多进程多线程)
Windows和Linux对决(多进程多线程) https://blog.csdn.net/world_2015/article/details/44920467 太长了 还没看完.. 还是没太理解好 ...
- 【Linux技术】Windows与Linux系统下的库·初探
库的定义 库文件是一些预先编译好的函数的集合,那些函数都是按照可再使用的原则编写的.它们通常由一组互相关联的用来完成某项常见工作的函数构成,从本质上来说库是一种可执行代码的二进制形式,可以被操作系统 ...
- Windows与Linux下进程间通信技术比较
一般我们写的程序都是以单个进程的方式来运行的,比较少涉及到多进程.特别是在windows下,因为Windows是按照线程来分配CPU时间片的,线程是最小的调度单位,所以在Windows下更多的用到多线 ...
- linux各种IPC机制(进程通信)
linux各种IPC机制 (2011-07-08 16:58:35) 原文地址:linux各种IPC机制(转)作者:jianpengliu 原帖发表在IBM的developerworks网站 ...
- [转帖]linux各种IPC机制
linux各种IPC机制 docker中的资源隔离,一种就是IPC的隔离.IPC是进程间通信. 下面的文章转载自https://blog.csdn.net/yyq_9623/article/detai ...
随机推荐
- Random.Next 方法 (Int32, Int32)
minValue 返回的随机数的下界(随机数可取该下界值). maxValue 返回的随机数的上界(随机数不能取该上界值).maxValue 必须大于等于 minValue. 返回值 一个大于等于 m ...
- servlet学习笔记二
Servlet主要内容: 1)表单处理 2)乱码问题 3)页面跳转 4)生命周期 一.表单处理 Servlet获取表单数据 request.getParameter():通过表单参数名获取参数值 re ...
- TCP与UDP的不同接包处理方式
TCP与UDP的不同接包处理方式 1.UDP发包的问题问:udp 发送两次数据,第一次 100字节 ,第二次200字节, 接包方一次recvfrom( 1000 ), 收到是 100,还是200,还是 ...
- WordPress主题制作教程2:导航菜单制作
实现自定义菜单,需要用到的函数是wp_nav_menu(); 在主题目录下的functions.php的 <?php ….. ?> 之间,添加以下菜单注册代码,这样你就可以在主题文件中使用 ...
- CreateFile,WriteFile,ReadFile
注意: CreateFile 跟 fopen 不同,打开文件时不区分 文本方式 或 二进制 方式 ReadFile 或 WriteFile 都是对二进制数据进行操作 HANDLE WINAPI Cre ...
- 【重走Android之路】【番外篇】有关于null的一些知识点
[重走Android之路][番外篇]有关于null的一些知识点 1.首先,到底什么是null? null是Java中的一个关键字,用于表示一个空对象引用,但其本身并不是任何类型也不是属于任何对象. ...
- 计算机IT求职学习List
1. 算法相关 1.1 <编程珠玑> 1.2 <编程之美> 这两本是最经典的了,这里面注重的是解决问题的思路,看的时候里面的问题要认真思考再参考解答.下面两本是对具体的面试题做 ...
- Data Base sqlServer DataReader与DataSet的区别
sqlServer DataReader与DataSet的区别 从以下这几个方面比较: 1.与数据库连接: DataReader:面向连接,只读,只进,只能向前读,读完数据就断开连接: DataS ...
- Hadoop集群(第6期)_WordCount运行详解
1.MapReduce理论简介 1.1 MapReduce编程模型 MapReduce采用"分而治之"的思想,把对大规模数据集的操作,分发给一个主节点管理下的各个分节点共同完成,然 ...
- CFileDialog使用总结
http://blog.csdn.net/tianhai110/article/details/2055149 CFileDialog经常用,但经常忘,现归纳整理下,方便今后查询. 例子: CFile ...