• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 200, comments - 8, trackbacks - 0, articles - 0

            多進程與多線程(四)--NPTL(轉)

            Posted on 2012-12-18 13:50 鑫龍 閱讀(490) 評論(0)  編輯 收藏 引用 所屬分類: linux多線程專題

            Native POSIX Thread Library

            維基百科,自由的百科全書

            Native POSIX Thread LibraryNPTL)是一個能夠使使用POSIX Threads編寫的程序在Linux內核上更有效地運行的軟件。

            測試表明,NPTL能夠成功地在IA-32平臺上在兩秒種內生成100,000個線程;相應的沒有NPTL的內核將耗費15分鐘左右。

            歷史

            Linux內核2.6出現之前進程是(最小)可調度的對象,當時的Linux不真正支持線程。但是Linux內核有一個系統調用指令clone(),這個指令產生一個呼叫調用的進程的復件,而且這個復件與原進程使用同一地址空間。LinuxThreads計劃使用這個系統調用來提供一個內核級的線程支持。但是這個解決方法與真正的POSIX標準有一些不相容的地方,尤其是在信號處理、進程調度和進程間同步原語方面。

            要提高LinuxThreads的效應很明顯需要提供內核支持以及必須重寫線程函式庫。為了解決這個問題出現了兩個互相競爭的項目:一個IBM的組的項目叫做NGPTNext Generation POSIX Threads,下一代POSIX線程),另一個組是由Red Hat程序員組成的。2003年中NGPT被放棄,幾乎與此同時NPTL公布了。

            NPTL首次是隨Red Hat Linux 9發表的。此前老式的Linux POSIX線程偶爾會發生系統無法產生線程的毛病,這個毛病的原因是因為在新線程開始的時候系統沒有借機先占。當時的Windows系統對這個問題的解決比較好。Red Hat在關于Red Hat Linux 9上的Java的網頁上發表了一篇文章稱NPTL解決了這個問題。

            從第3版開始NPTLRed Hat Enterprise Linux的一部分,從Linux內核2.6開始它被納入內核。目前它完全被結合入GNU C 函式庫。

            設計

            NPTL的解決方法與LinuxThreads類似,內核看到的首要抽象依然是一個進程,新線程是通過clone()系統調用產生的。但是NPTL需要特殊的內核支持來解決同步的原始類型之間互相競爭的狀況。在這種情況下線程必須能夠入眠和再復蘇。用來完成這個任務的原始類型叫做futex

            NPTL是一個所謂的1×1線程函式庫。用戶產生的線程與內核能夠分配的物件之間的聯系是一對一的。這是所有線程程式中最簡單的。

            轉自http://zh.wikipedia.org/wiki/Native_POSIX_Thread_Library#cite_note-1

            轉自:http://blog.chinaunix.net/uid-20556054-id-3068071.html

            人妻中文久久久久| 久久伊人精品一区二区三区| 久久免费视频网站| 色婷婷综合久久久久中文字幕| 18禁黄久久久AAA片| 伊人色综合久久天天| 久久热这里只有精品在线观看| 久久99国产精品久久久| 亚洲性久久久影院| 久久综合九色综合精品| 亚洲午夜久久久影院| 久久久久久极精品久久久| 久久成人国产精品| 伊人久久亚洲综合影院| 亚洲成人精品久久| 国内精品伊人久久久久av一坑| 亚洲精品高清一二区久久| 久久精品国产亚洲欧美| 亚洲欧美日韩久久精品第一区| 久久久久亚洲av毛片大| 久久婷婷国产麻豆91天堂| 亚洲精品乱码久久久久久蜜桃不卡 | 亚洲愉拍99热成人精品热久久| 国产午夜精品久久久久九九| 久久精品草草草| aaa级精品久久久国产片| 久久精品一本到99热免费| 国产免费久久精品99re丫y| 久久久久久国产a免费观看不卡| 99久久精品国产一区二区| 久久线看观看精品香蕉国产| 国产精品99久久久久久人| 久久精品国产69国产精品亚洲| jizzjizz国产精品久久| 国产精品久久亚洲不卡动漫| 国产精品久久久久久一区二区三区| 午夜人妻久久久久久久久| 久久综合88熟人妻| 久久99精品国产麻豆宅宅| 天天爽天天爽天天片a久久网| 99久久精品免费看国产一区二区三区 |