freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

線程及其實現(xiàn)(編輯修改稿)

2025-08-28 13:44 本頁面
 

【文章內(nèi)容簡介】 有優(yōu)點 。 ?第二種方法是采用 jacketing技術(shù)解決阻塞線程的問題 。 3 混合式線程 ? 混合系統(tǒng)中 , 內(nèi)核支持 KLT多線程的建立 、 調(diào)度和管理 , 也提供線程庫 , 允許應(yīng)用程序建立 、 調(diào)度和管理 ULT。 應(yīng)用程序的多個 ULT映射成一些 KLT,程序員可按應(yīng)用需要和機器配置調(diào)整 KLT數(shù)目 , 以達到較好效果 。 ? 一個應(yīng)用中的多個線程能同時在多處理器上并行運行 , 且阻塞一個線程時并不需要封鎖整個進程 。 實例研究: Solaris的進程與線程 Solaris中的進程與線程概念 ?進程 ( Process) : ?用戶級線程( UserLevel Threads): ?輕量進程( Light Weight Process): ?內(nèi)核級線程( KernelLevel Threads): Solaris的線程實現(xiàn) (1) ? 用戶層和核心層 , 用戶層在用戶線程庫中實現(xiàn);核心層在操作系統(tǒng)內(nèi)核中實現(xiàn) 。 ? ULT是一個代表應(yīng)用線程的數(shù)據(jù)結(jié)構(gòu) , 純用戶級概念 , 占用用戶空間資源 , 對核心是透明的 。 ULT和 KLT不一一對應(yīng) , 通過輕量級進程 LWP來映射兩者之間的聯(lián)系 。 Solaris的線程實現(xiàn) (2) ? 進程可以設(shè)計為一個或多個 LWP,一個 LWP上又可以開發(fā)多個 ULT,LWP與 ULT一樣共享進程的資源 。KLT和 LWP是一一對應(yīng)的 , 一個ULT要通過核心 KLT和 LWP二級調(diào)度后才真正占有處理器運行 。 Solaris的線程實現(xiàn) (3) ? 有了 LWP, 可在用戶級實現(xiàn) ULT,每個進程可以創(chuàng)建幾十個 ULT, 而又不占用核心資源 。 由于 ULT共享用戶空間 , 當 LWP在一個進程的不同 ULT間切換時 , 僅是數(shù)據(jù)結(jié)構(gòu)的切換 , 其時間開銷遠低于兩個 KLT間的切換時間 。 Solaris線程的使用 (1) 線程庫 L P ULT KLT LWP Processor L L L L L L L L L P P P P P 用戶 內(nèi)核 進程 1 進程 2 進程 3 進程 4 進程 5 Solaris線程的使用 (2) ?進程 1是傳統(tǒng)的單線程進程, ?進程 2是一個純的 ULT應(yīng)用, ?進程 3是多線程與多 LWP的對應(yīng) , ?進程 4的線程與 LWP是一對一地捆綁的 , ?進程 5包括多 ULT映射到多 LWP上 , 以及ULT與 LWP的一一捆綁 , 并且還有一個LWP捆在單個處理器上 。 Solaris線程的使用 (3) ? Solaris已經(jīng)有進程 、 KLT和 ULT, 為什么還要引入 LWP? ? 原因是各種應(yīng)用需求 ,有些應(yīng)用邏輯并行性程度高 , 有些應(yīng)用物理并行性要求高 。 ? 例 1:窗口系統(tǒng)是典型的邏輯并行性程度高的應(yīng)用 。 例 2: 大規(guī)模并行計算是物理并行性要求高的應(yīng)用 。 Solaris中進程結(jié)構(gòu) 內(nèi)存分配表 進程標識符 用戶標識符 信號分配表 文件描述符 輕進程標識符 優(yōu)先數(shù) 信號掩碼 寄存器 堆棧 …… 輕進程標識符 優(yōu)先數(shù) 信號掩碼 寄存器 堆棧 …… 輕量進程 1 輕量進程 2 LWP的數(shù)據(jù)結(jié)構(gòu) (1) ? 輕量進程標識符標識了輕量進程 ? 優(yōu)先數(shù)定義了輕量進程執(zhí)行的優(yōu)先數(shù) ? 信號掩碼定義了內(nèi)核能夠接受的信號 ? 寄存器域用于存放輕量進程讓出處理器時的現(xiàn)場信息 ? 輕量進程的內(nèi)核棧包括每個調(diào)用層次的系統(tǒng)調(diào)用的參數(shù) 、 返回值和出錯碼 LWP的數(shù)據(jù)結(jié)構(gòu) (2) ? 交替的信號堆棧 ? 用戶或用戶和系統(tǒng)共同的虛時間警示 ? 用戶時間和系統(tǒng)處理器使用 ? 資源使用和預(yù)定義數(shù)據(jù) ? 指向?qū)?yīng)內(nèi)核線程的指針 ? 指向進程結(jié)構(gòu)的指針 ULT的數(shù)據(jù)結(jié)構(gòu) ? 線程標識符標識了線程 ? 優(yōu)先數(shù)定義了線程執(zhí)行的優(yōu)先數(shù) ? 信號掩碼定義了能夠接受的信號 ? 寄存器域用于存放線程讓出處理器時的現(xiàn)場信息 ? 堆棧用于存放線程運行數(shù)據(jù) ? 線程局部存儲器用于存放線程局部數(shù)據(jù) KLT的數(shù)據(jù)結(jié)構(gòu) (1) ? 內(nèi)核寄存器數(shù)據(jù)保存區(qū) ? 優(yōu)先級和調(diào)度信息 ? KLT的隊列指針和堆棧指針 ? 相關(guān) LWP的指針及信息 ? 進程數(shù)據(jù)結(jié)構(gòu) ,包括: ? 與進程相關(guān)的 KLT ? 進程地址空間指針 ? 用戶權(quán)限表 ? 信號處理程序清單 ? 與用戶執(zhí)行有關(guān)信息 KLT的數(shù)據(jù)結(jié)構(gòu) (2) ? Solaris支持實時類進程 , 內(nèi)核是可搶占的 , 內(nèi)核函數(shù)和過程全部用線程實現(xiàn) , Solaris的內(nèi)核是KLT的集合 。 ? KLT分兩種 , 一種是負責執(zhí)行一個指定的內(nèi)核函數(shù) 。另一種用來支持和運行 LWP, KLT是獨立被調(diào)度和分
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1