【正文】
Solaris的多線程結(jié)構(gòu)有關(guān)概念圖示 u k CPU 線程庫(kù) 進(jìn)程 1 u L 線程庫(kù) 進(jìn)程 2 u u 線程庫(kù) 進(jìn)程 3 u u u 線程庫(kù) 進(jìn)程 4 u u 線程庫(kù) 進(jìn)程 5 u u u L L L L L L L L k k k k k k k k 線程調(diào)度程序 CPU CPU CPU CPU 內(nèi)核 硬件 用戶空間 Mach操作系統(tǒng)的線程機(jī)制 ? 任務(wù)(類似進(jìn)程)和線程 ? 線程的數(shù)據(jù)結(jié)構(gòu) () ? 與線程相關(guān)的系統(tǒng)調(diào)用:創(chuàng)建、終止、掛起、恢復(fù)等 ? 線程分類:純內(nèi)核線程;用戶任務(wù)的線程(相當(dāng)于 Solaris中的輕質(zhì)進(jìn)程) ? 線程庫(kù) ? 線程庫(kù)的實(shí)現(xiàn)方法 – 基于線程 (default): 每個(gè)用戶線程使用一個(gè)內(nèi)核用戶線程(相當(dāng)于輕質(zhì)進(jìn)程),搶占式調(diào)度 – 基于協(xié)同例程:多個(gè)用戶線程對(duì)應(yīng)一個(gè)內(nèi)核用戶線程,不可搶占式調(diào)度 – 基于任務(wù):每個(gè)線程使用一個(gè) Mach 任務(wù)(即UNIX進(jìn)程) 習(xí)題 ? ?