国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
線程文化

http://www.cnblogs.com/mydomain/archive/2011/08/18/2145025.html

2011

1、在Linux2.2內(nèi)核中,并不存在真正意義上的線程。當(dāng)時Linux中常用的線程pthread實際上是通過進(jìn)程來模擬的,也就是說Linux中的線程也是通過fork()創(chuàng)建的“輕”進(jìn)程,并且線程的個數(shù)也很有限,最多只能有4096個進(jìn)程/線程同時運行。

2、Linux2.4內(nèi)核消除了這個線程個數(shù)的限制,并且允許在系統(tǒng)運行中動態(tài)地調(diào)整進(jìn)程數(shù)上限。當(dāng)時采用的是LinuxThread線程庫,它對應(yīng)的線程模型是“一對一”線程模型,也就是一個用戶級線程對應(yīng)一個內(nèi)核線程,而線程之間的管理在內(nèi)核外的函數(shù)庫中實現(xiàn)

3、在Linux內(nèi)核2.6之前的版本中,進(jìn)程是最主要的處理調(diào)度單元,并沒支持內(nèi)核線程機(jī)制。Linux 2.6內(nèi)核支持clone()系統(tǒng)調(diào)用,從而實現(xiàn)共享地址空間的進(jìn)程機(jī)制。因而Linux系統(tǒng)在1996年第一次獲得線程的支持,當(dāng)時所使用的函數(shù)庫被稱為LinuxThread。該函數(shù)庫就使用clone()系統(tǒng)調(diào)用實現(xiàn)內(nèi)核級的線程機(jī)制,在此前的Linux版本中在用戶層實現(xiàn)POSIX線程庫。

    由Red Hat主導(dǎo)的本地化POSIX線程庫(Native POSIX Thread Library,簡稱為NTPL),現(xiàn)在已經(jīng)成為GNU C函數(shù)庫的一部分,同時也成為Linux線程的標(biāo)準(zhǔn)。

4、線程屬性

1)綁定屬性

    Linux中采用“一對一”的線程機(jī)制,也就是一個用戶線程對應(yīng)一個內(nèi)核線程。綁定屬性就是指一個用戶線程固定地分配給一個內(nèi)核線程,因為CPU時間片的調(diào)度是面向內(nèi)核線程(也就是輕量級進(jìn)程)的,因此具有綁定屬性的線程可以保證在需要的時候總有一個內(nèi)核線程與之對應(yīng)。而與之對應(yīng)的非綁定屬性就是指用戶線程和內(nèi)核線程的關(guān)系不是始終固定的,而是由系統(tǒng)來控制分配的。

2)分離屬性

    分離屬性是用來決定一個線程以什么樣的方式來終止自己。在非分離情況下,當(dāng)一個線程結(jié)束時,它所占用的系統(tǒng)資源并沒有被釋放,也就是沒有真正的終止。只有當(dāng)pthread_join()函數(shù)返回時,創(chuàng)建的線程才能釋放自己占用的系統(tǒng)資源。而在分離屬性情況下,一個線程結(jié)束時立即釋放它所占有的系統(tǒng)資源。這里要注意的一點是,如果設(shè)置一個線程的分離屬性,而這個線程運行又非??欤敲此芸赡茉?/font>pthread_create()函數(shù)返回之前就終止了,它終止以后還就可能將該線程號和系統(tǒng)資源移交給其他的線程使用,這可能會引起錯誤。

5、互斥量本質(zhì)是一把鎖,提供對共享資源的保護(hù)訪問。

6、二進(jìn)制信號量與互斥鎖的區(qū)別

1)mutex:誰獲得,誰釋放,而信號量可以由其他線程釋放。

2)mutex初始值為1,而信號量可01。

7、線程與輕進(jìn)程

8、linux中使用進(jìn)程實現(xiàn)線程,所以新創(chuàng)建的線程和源線程進(jìn)程號可能不同。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服