?? 2.html
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"><HTML><HEAD> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312"> <META NAME="GENERATOR" CONTENT="《良友》v2.1, 作者:安富國,http://winking.126.com"> <TITLE>OSKit</TITLE></HEAD><BODY style="font-family: 宋體; font-size: 9pt"> <CENTER><TABLE CELLSPACING=10 CELLPADDING=10 WIDTH="60%" BGCOLOR="#FFB693" ><TR><TD ALIGN=CENTER><FONT SIZE=+2><!--標題由此開始-->OSKit</TD></TR></TABLE></CENTER><p><h3>目 錄</h3><!--目錄由此開始--><A NAME="Content" ID="Content"></A><OL><LI><A HREF="#I555">OSKit</A></LI><OL><LI><A HREF="#I556">線程機制</A></LI><OL><LI><A HREF="#I557">前言</A></LI><LI><A HREF="#I558">第一章 緒 論</A></LI><LI><A HREF="#I559">第二章 線程初始化</A></LI><LI><A HREF="#I560">第三章 線程通信分析</A></LI><LI><A HREF="#I561">第四章 線程調度</A></LI><LI><A HREF="#I562">第五章 OSKit的應用實例</A></LI><LI><A HREF="#I563">第六章 結束語</A></LI></OL><LI><A HREF="#I564">部件對象模型</A></LI><OL><LI><A HREF="#I565">前言</A></LI><LI><A HREF="#I566">第一章 OSKIT介紹</A></LI><LI><A HREF="#I567">第二章 COM規范介紹</A></LI><LI><A HREF="#I568">第三章 COM機制的實現</A></LI><LI><A HREF="#I569">第四章 接口注冊機制</A></LI><LI><A HREF="#I570">第五章 啟動及系統初始化</A></LI><LI><A HREF="#I571">第六章 應用實例</A></LI><LI><A HREF="#I572">第七章 結束語</A></LI></OL><LI><A HREF="#I573">包裝系統驅動程序</A></LI><OL><LI><A HREF="#I574">前 言</A></LI><LI><A HREF="#I575">第一章 OSKit概述</A></LI><LI><A HREF="#I576">第二章 OS Environment概述</A></LI><LI><A HREF="#I577">第三章 OS Environment包裝Linux驅動程序的方法分析</A></LI><LI><A HREF="#I578">第四章 OS Environment自行開發驅動程序的方法</A></LI><LI><A HREF="#I579">第五章 OSKit的應用實例</A></LI><LI><A HREF="#I580">第六章 結束語</A></LI></OL></OL></OL><hr><br><A NAME="I555" ID="I555"></A><center><b><font size=+2>OSKit</font></b></center><br> OSKIT是美國猶它大學計算機科學系FLUX研究組編寫的一套用于架構操作系統內核、服務器和其他OS級軟件的框架及模塊化的部件和庫程序。OSKIT的編寫者認為,操作系統中有很大一部分模塊是系統必須的,但并不是開發者所感興趣的,例如系統裝入模塊,各種標準驅動模塊等。使用OSKIT的目的就是使操作系統的開發者集中精力開發他們操作系統中有特色的,或者他們感興趣的部分,而不必考慮一些繁瑣而乏味的細節。為了達到這個目的,OSKit在設計時借用了COM的思想,把操作系統的各個部分設計成盡量獨立的COM模塊,以方便操作系統的開發者使用或替換。因此,當開發人員使用這套工具時,可以把它當作一個完整的操作系統來使用,也可以根據需要使用其中的一部分,它還可以作為一套動態鏈接庫,由操作系統及支持程序對它進行調用。<br><center><A HREF="#Content">[目錄]</A></center><hr><br><A NAME="I556" ID="I556"></A><center><b><font size=+2>線程機制</font></b></center><br>OSKit的線程機制 目錄<br>2000年12月12日 23:07<p><br>作 者: 湯海京<p><br>導師:陳朔鷹<p>前 言<p>第一章 緒 論<br> § 1.1 簡介<br> § 1.2 安裝與配置OSKIT<br> § 1.3 使用OSKIT<br> § 1.4 OSKIT 導航圖<br> 1.4.1 接口<br> 1.4.2 函數庫<br> 1.4.3 部件庫<br> 1.4.4 執行環境<p>第二章 線程初始化<br> § 2.1 線程初始化分析<br> 2.1.1 線程的創建<br> 2.1.2 線程的存儲<br> 2.1.3 線程的數據結構<br> § 2.2 PTHREADS/PTHREAD_CREATE.C<br> 2.2.1 創建線程<br> 2.2.2 創建內部線程<br> 2.2.3 為主進程創建一個備份線程<br> 2.2.4 初始化創建線程的線程<br> 2.2.5 為等待和休眠的線程創建一個等待時間<br> § 2.3 PTHREADS/PTHREAD_ATTR.C<br> 2.3.1 線程初始化的數據結構<br> 2.3.2 線程屬性的撤銷<br> 2.3.3 設置線程的警戒堆棧大小<br> 2.3.4 得到警戒堆棧的大小<br> 2.3.5 設置線程的分離狀態<br> 2.3.6 得到線程的分離狀態<br> 2.3.7 設置線程的繼承關系<br> 2.3.8 得到線程的繼承狀態<br> 2.3.9 設置線程的調度參數<br> 2.3.10 得到線程調度的參數<br> 2.3.11 設置線程調度策略<br> 2.3.12 得到線程調度策略<br> 2.3.13 設置堆棧地址<br> 2.3.14 得到堆棧的地址<br> 2.3.15 設置堆棧的大小<br> 2.3.16 得到堆棧的大小<br> 2.3.17 設置線程的優先級<br> 2.3.18 準備接受調度<br> 2.3.19 聲明要進行調度的線程<br> 2.3.20 設置mutex的屬性<br> 2.3.21 撤銷mutex的屬性<br> 2.3.22 設置muxtex的協議<br> 2.3.23 得到線程調度的mutex協議<br> 2.3.24 設置mutex的種類<br> 2.3.25得到mutex的類型<br> 本 章 小 結<p>第三章 線程通信分析<br> § 3.1 線程間通信<br> 3.1.1消息隊列<br> 3.1.2信號<br> § 3.2 PTHREADS/PTHREAD_IPC.C<br> 3.2.1 消息發送:<br> 3.2.2 send的算法<br> 3.2.3 消息接收<br> 3.2.4 receive的算法<br> § 3.3 PTHREADS/PTHREAD_SIGNAL.C<br> 3.3.1 檢測并更改阻塞的信號<br> 3.3.2殺線程信號<br> 3.3.3 關線程鎖<br> 3.3.4 在目標線程的信號等待隊列中加一個信號<br> 3.3.5 信號完成的動作<br> 3.3.6 測試或改變(或兩者兼有)主調進程的信號掩碼<br> 3.3.7 殺線程<br> 3.3.8 等待信號的線程隊列<br> 3.3.9 等待內部信號<br> 3.3.10 線程等待信號<br> 3.3.11 線程等待信號(一般指內部信號)<br> 3.3.12 線程等待信號(有時間限制)<br> 3.3.13 線程等待信號,如果無信號發給它,則無限期等待<br> 3.3.14 從一個陷入發送信號給線程<br> 3.3.15 發出線程阻塞信號<br> 3.3.16 不會被阻塞的信號發送<br> 3.3.17 信號初始化<br> § 3.4 PTHREADS/PTHREAD_COND.C<br> 3.4.1條件變量的初始化數據結構<br> 3.4.2撤銷條件變量<br> 3.4.3 線程等待條件變量<br> 3.4.4 安全的等待<br> 3.4.5 等待條件變量,但有時間限制<br> 3.4.6 等待捐贈條件<br> 3.4.7 等待條件超時<br> 3.4.8 線程發送信號條件<br> 3.4.9 線程廣播條件<br> 本 章 小 結<p>第四章 線程調度<br> § 4.1 線程調度算法分析<br> 4.1.1 線程調度算法的總體描述<br> 4.1.2 優先級逆轉法<br> § 4.2 PTHREAD/PTHREAD_SCHEDULER.C<br> 4.2.1清空等待調度的線程隊列<br> 4.2.2得到等待隊列中優先級最高的線程的優先級<br> 4.2.3得到指向下一個要執行線程的指針<br> 4.2.4在線程的執行隊列的隊尾追加一個線程<br>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -