使用者級線程和核心級線程

來源:互聯網
上載者:User

1.核心級線程:

(1)線程的建立、撤銷和切換等,都需要核心直接實現,即核心瞭解每一個作為可調度實體的線程。
(2)這些線程可以在全系統內進行資源的競爭。
(3)核心空間內為每一個核心支援線程設定了一個線程式控制制塊(TCB),核心根據該控制塊,感知線程的存在,並進行控制。
在一定程度上類似於進程,只是建立、調度的開銷要比進程小。有的統計是1:10

2.使用者級線程:

(1)使用者級線程僅存在於使用者空間。——>對比核心(3)
(2)核心並不能看到使用者線程。——>重要的區別
(3)核心資源的分配仍然是按照進程進行分配的;各個使用者線程只能在進程內進行資源競爭。

 

posix線程調度是一個混合模型,很靈活,足以在標準的特定實現中支援使用者級和核心級的縣陳。模型中包括兩級調度--線程及和核心實體級。線程級與使用者級線程類似,核心實體由核心調度。由線程庫來決定它需要多少核心實體,以及他們是如何映射的。

POSIX 引入了一個線程調度競爭範圍(thread-scheduling contention scope)的概念,這個. 概念賦予了程式員一些控制權,使它們可以控制怎樣將核心實體映射為線程。線程的contentionscope屬性可是PTHREAD_SCOPE_PROCESS,也可以是PTHREAD_SCOPE_SYSTEM。帶有PTHREAD_SCOPE_PROCESS屬性的線程與它所在的進程中的其他線程競爭處理器資源。帶有PTHREAD_SCOPE_SYSTEM屬性的線程很像核心級線程,他們在全系統的範圍內競爭處理器資源。POSIX的一種映射方式將PTHREAD_SCOPE_SYSTEM線程和核心實體之間綁定起來。

 

int pthread_attr_setscope(pthread_attr_T *attr, int scope)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.