当前位置: 技术问答>linux和unix
线程同步 pthread_mutex_t
来源: 互联网 发布时间:2016-12-19
本文导语: 有几个问题请教一下大侠们: 1. Linux/Unix有没有和Windows一样的应用级到内核级的切换? 2. pthread_mutex_t 是进程内线程间同步还是进程组、或一个用户下所有线程,还是整个操作系统的锁? 3. pthread_mutex_t 用这个东西...
有几个问题请教一下大侠们:
1. Linux/Unix有没有和Windows一样的应用级到内核级的切换?
2. pthread_mutex_t 是进程内线程间同步还是进程组、或一个用户下所有线程,还是整个操作系统的锁?
3. pthread_mutex_t 用这个东西到底是怎么实现同步的,除了看代码,有没有什么书讲解这个东西的?
那个 一个用户下所有线程 可能描述的不是太清晰,意思是对某个用户,属于此用户的进程中的线程,不知道大侠们明不明白我的意思,小弟语言表达能力有限
1. Linux/Unix有没有和Windows一样的应用级到内核级的切换?
2. pthread_mutex_t 是进程内线程间同步还是进程组、或一个用户下所有线程,还是整个操作系统的锁?
3. pthread_mutex_t 用这个东西到底是怎么实现同步的,除了看代码,有没有什么书讲解这个东西的?
那个 一个用户下所有线程 可能描述的不是太清晰,意思是对某个用户,属于此用户的进程中的线程,不知道大侠们明不明白我的意思,小弟语言表达能力有限
|
windows下,互斥体是内核对象,内核级的同步;临界区是用户级的,通常线程同步用临界区更高效。
pthread封装的应该也是操作系统的调用,具体没用过
pthread封装的应该也是操作系统的调用,具体没用过
|
windows api有大量用户级函数,只有返回handle(需要CloseHandle)的才是内核级调用
|
1.copy_to_user 这个系统调用是内核与用户交互数据的至于其他的不清楚。
2. 一个进程内的多线程间的
3.其他的问题。。自己想吧,我笨也不懂呢
2. 一个进程内的多线程间的
3.其他的问题。。自己想吧,我笨也不懂呢
|
pthread_mutex_t 通常用于线程之间同步
设置进程间共享属性,并且锁自身存放于共享内存中时,也可以用于进程之间同步
设置进程间共享属性,并且锁自身存放于共享内存中时,也可以用于进程之间同步
|
Unix貌似所有的系统调用都是内核级。
可能是内核架构上的区别,Unix是宏内核,整个内核都运行在ring0;windows是混合内核,用户级的部分比较多
可能是内核架构上的区别,Unix是宏内核,整个内核都运行在ring0;windows是混合内核,用户级的部分比较多
|
《unix网络编程》卷二
进程间通信
-------------------------
更多技术文章敬请关注:武汉华嵌-嵌入式培训专家,国内领先的嵌入式服务机构,
http://www.embedhq.org
进程间通信
-------------------------
更多技术文章敬请关注:武汉华嵌-嵌入式培训专家,国内领先的嵌入式服务机构,
http://www.embedhq.org
|
应用级到内核级的切换??
每个系统调用都会进行这样的切换吧
每个系统调用都会进行这样的切换吧