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