資源分配的基本單位
系統排程的基本單位
程序可以包含多個執行緒。這些執行緒共享**區,資料區和開啟的檔案。
每個執行緒有獨立的執行緒上下文(program counter,暫存器和其他的狀態資訊)和棧。
優勢:1)responsiveness 2) 資源共享 3) 高效,建立快,context switch快 4)適合多處理器的架構。
使用者空間的使用者執行緒 and 核心空間的核心執行緒
使用者執行緒: 依賴於執行緒庫來實現執行緒的建立、排程(節省時間,不用trap into os,排程演算法可定製)和管理。但對於核心而言,多執行緒是不可見的。【缺點:系統呼叫阻塞;無法利用多處理器的優勢】
核心執行緒:作業系統支援,核心實現執行緒的建立,排程和管理。
作業系統 程序管理(執行緒)
一 基本概念 1.1為什麼需要執行緒 同一程序的多個執行緒共享乙個位址空間 建立銷毀比程序快 多個執行緒都是cpu密集型,不能獲得效能增強,存在大量計算和i o密集型,會有極高效率 最關鍵的一點是 乙個程序中存在著多個可以同時執行的小任務 相比於程序而言 這些小任務可以通過執行緒並行執行 1.2執行...
kinect學習筆記五(執行緒併發)
因為想同時處理左右手,想採用執行緒併發來同時處理,提高處理速度,找了些材料,貼到這裡以供以後使用 include include using namespace std dword winapi processrighthand lpvoid param 右手處理執行緒 dword winapi p...
linux多執行緒學習筆記五 執行緒安全
一,執行緒安全基礎 乙個函式被稱為執行緒安全的當且僅當被多個併發執行緒反覆呼叫時,它會一直產生正確的結果。我們能夠定義出四類執行緒不安全函式。第一類 不保護共享變數的函式 共享變數在多執行緒中是共享資料,可以通過同步機制來保護共享資料。第二類 保護跨越多個呼叫狀態的函式 乙個偽隨機數生成器是乙個簡單...