程序

1/16ページ

程序緩衝區和核心緩衝區

緩衝區的出現是為了減少頻繁的系統呼叫,由於系統呼叫需要儲存之前的程序資料和狀態等資訊,而結束呼叫之後回來還需要回復之前的資訊,為了減少這種耗時耗效能的呼叫於是出現了緩衝區。在linux系統中,每個程序有自己獨立的緩衝區,叫做程序緩衝區,而系統核心也有個緩衝區叫做核心緩衝區。 當程序需要指定的磁碟資料 […]

程序併發常見問題基於訊號量解決方法總結:生產者/消費者問題、讀/寫者問題、銀行家演算法、哲學家進餐(待補充)

一、訊號量 訊號量是一個與佇列有關的整型變數。 可以初始化成非負數; semWait操作使訊號量減1。若值為負數,則執行semWait的程序阻塞,否則繼續執行; semSignal操作使訊號量加1。若值小於或等於0,則被semWait操作阻塞的程序被解除阻塞。 訊號量原語semWait和semSig […]

CreateRemoteThread函式多引數傳入使用方法

注意事項: 1.Debug版本編譯的時候使用增量編譯,導致每個函式都是用一個Thunk, 所以請使用Release版本。 2.目標程序非本程序時不能呼叫本程序內的函式或使用本程序內的變數,有時在隱式使用時可能會引起該 問題,容易引起程序崩潰。(例如WriteProcessMemory寫入的函式中呼叫 […]

劍指Offer——小米 小紅書筆試題 知識點總結

劍指Offer——小米 小紅書筆試題 知識點總結 情景回顧 時間:2016.9.23 19:00-21:00 2016.9.24 15:00-17:00 地點:山東省網路環境智慧計算技術重點實驗室 事件:小米筆試、小紅書筆試 注意事項:要有大局觀,該捨棄的還是要捨棄,不要在一道程式設計題上佔用超過3 […]

linux 程序,執行緒

一、概念 程序包含很多資源,如開啟的檔案,掛起的訊號,核心內部資料,處理器狀態,一個或多個具有記憶體對映的記憶體地址空間及一個或多個執行執行緒。用來存放全域性變數的資料段等。核心需要管理所有的細節。 執行緒,是在程序中活動的物件,每個執行緒都擁有一個獨立的程式計數器,程序棧和一組程序暫存器。 程序描 […]

作業系統清華向勇陳渝版筆記(七) 程序與執行緒 PCB TCB 程序掛起 使用者執行緒 核心執行緒 輕量級程序 殭屍佇列

前篇在此 作業系統筆記(五)覆蓋和交換,虛擬記憶體 作業系統筆記(六)頁面置換演算法 index 7-1 程序的定義 7-2 程序的組成 7-3程序的特點 7-4 程序控制結構 7-5 程序狀態 7-6 程序狀態變化模型 7-7 程序掛起 7-8 執行緒管理 7-9執行緒定義 7-10 執行緒的實現 […]

程序控制塊PCB詳解

  PCB(process control block),程序控制塊,是我們學習作業系統後遇到的第一個資料結構描述,它是對系統的程序進行管理的重要依據,和程序管理相關的操作無一不用到PCB中的內容。一般情況下,PCB中包含以下內容: (1)程序識別符號(內部,外部)(2)處理機的資訊(通用暫存器,指 […]

程序記憶體分佈剖析

記憶體管理是作業系統的核心功能之一,這對於程式設計以及系統管理都至關重要。在接下來的敘述中我將著眼於實用方面但兼顧內部原理。這些概念都是通用的,例子大都來源於Linux以及Windows作業系統。首先來描述一下記憶體中程序的分佈。 多工作業系統中程序都執行在各自的地址空間中。在32位系統中程序的地址 […]