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 ...
随机推荐
- Junit单元测试学习笔记一
我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这一小部分功能是正确的.但是,我们同时应该确保每一个函数 ...
- jQuery常见面试题(转)
代码以jQuery 1.83 为例 一 :Q: What is the difference between .get(), [], and .eq()? A: eq返回原生jQuery对象,截取某些 ...
- 311. Sparse Matrix Multiplication
题目: Given two sparse matrices A and B, return the result of AB. You may assume that A's column numbe ...
- 269. Alien Dictionary
题目: There is a new alien language which uses the latin alphabet. However, the order among letters ar ...
- 机器人学 —— 机器人视觉(Bundle Adjustment)
今天完成了机器人视觉的所有课程以及作业,确实是受益匪浅啊! 最后一个话题是Bundle Adjustment. 机器人视觉学中,最顶尖的方法. 1.基于非线性优化的相机位姿估计 之前已经在拟合一篇中, ...
- beej's 网络编程 打包数据pack data
7.4. Serialization—How to Pack Data It's easy enough to send text data across the network, you're fi ...
- wust 1061 链表的合并
怒刷存在感! ~从此wustoj踏上ty博客这样高端霸气上档次的地方啊啦啦~ 只是顺便看了下保研复试题,原来觉得链表好讨厌,现在数据结构学的没办法了,写了个大概是标准的链表合并的写法吧... #inc ...
- Android之TelephonyManager类的使用案例
TelephonyManager类主要提供了一系列用于访问与手机通讯相关的状态和信息的get方法.其中包括手机SIM的状态和信息.电信网络的状态及手机用户的信息.在应用程序中可以使用这些get方法获取 ...
- Win 10 连接公司VPN后不能上Internet外网
当前用户配置 %AppData%\Microsoft\Network\Connections\Pbk 与所有用户共享配置 %ProgramData%\Microsoft\Network\Connect ...
- vc 6.0 连接数据库
在mysql的文档(C:\Program Files\MySQL\MySQL Server 5.5\lib)里面找到libmysql.dll和libmysql.lib 两个文件,将他们移到 工程文件下 ...