- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用者执行绪及核心执行绪比较.PDF
4-5
使用者執行緒及核心執行緒
使用者執行緒及核心執行緒
• 學習完本單元,您將可以:
– 了解使用者執行緒及核心執行緒不同處
使用者執行緒及核心執行緒
• 使用者執行緒(User Thread )
– 使用者應用程式所撰寫的執行緒。
• 核心執行緒(Kernel Thread)
– 作業系統核心使用的執行緒。
1
使用者執行緒及核心執行緒比較
• 環境切換(Context Switch)
• 排程(CPU Scheduling)
• 懸置情況(Block Status)
2
環境切換
• 使用者執行緒
– 執行緒排程器(Thread Scheduler )自動嵌入使用者執行
緒的程式內 ,並自行於處理程序內對執行緒進行排程工作,
因此在執行緒進行環境切換過程中,電腦內不必產生中斷
去通知作業系統核心,也不必作處理程序環境切換的工作 。
• 核心執行緒
– 使用者必須透過系統呼叫使用核心執行緒,必須經由中斷
執行核心執行緒,必須花費中斷的代價 ,但共用地址空間
的優點仍然存在。
3
排程
• 使用者執行緒
– 中央處理器排程器以處理程序為單位進行排程及環境切換
工作,當某一個處理程序輪到中央處理器時,它將所輪到
的時間片段分享給依附在處理程序內的執行緒使用。例如
某個處理程序分配到時間片段為200ms ,若平均分配給五
個執行緒,則執行緒排程器分配40ms給每個執行緒執行。
• 核心執行緒
– 中央處理器排程器以核心執行緒為單位分配時間片段 。例
如若某個核心處理程序有三個核心執行緒,則此處理程序
分到三個時間片段,也就是每個執行緒各有一個時間片段。
4
懸置情況
•使用者執行緒
–若某個處理程序內有一個執行緒進入懸置狀態,則整個處
理程序內的所有執行緒均一起懸置 。這是因為執行緒排程
器自行對執行緒排程,從作業系統角度來看,會認定該處
理程序懸置,以致造成該處理程序內所有執行緒均被懸置。
•核心執行緒
–由於每個核心執行緒是各自排程,所以核心處理程序內若
某一個執行緒懸置,它不會造成其他的執行緒被懸置 。
5
主要的使用者執行緒程式庫(User Thread Libraries)
•使用者應用程式所撰寫的執行緒。
• 主要的使用者執行緒程式庫:
– POSIX Pthreads
– Win32 threads
– Java threads
6
核心執行緒(Kernel Threads)
•作業系統核心使用的執行緒。
• 作業系統
– Windows XP/2000
– Solaris
– Linux
– Tru64 UNIX
– Mac OS X
7
文档评论(0)