在系統中,乙個程序建立了另外乙個程序後,父程序和子程序會以某種形式繼續保持一種聯絡。子程序可以建立更多的程序,進而組成乙個程序的層次結構。
程序和它的所有子女和後裔程序共同組成乙個程序組。當使用者在從鍵盤發出乙個訊號的時候,該訊號會被送給當前鍵盤相關程序組中的成員,每個程序可以根據需要分別捕獲訊號、忽略訊號、或者被訊號殺死。
windows沒有程序層次的概念,所有的程序地位上都是相等的,唯一類似程序層次的暗示是在建立程序的時候,父程序會得到乙個特別的令牌(控制代碼),該控制代碼可以控制子程序,但是它有權力將這個令牌傳送給其他的程序,進而就不存在程序的層次了。
程序管理六(程序的同步與互斥三)
雖然訊號量及其p v操作是一種既方便又有效的程序同步工具,但如果採用這種同步機制來編寫併發程式,對於共享變數及訊號量變數的操作將被分散與各個程序中,有如下缺點 a.程式易讀性差。因為要了解對於一組共享變數及訊號量的操作是否正確,則必須通讀整個系統或者併發程式。b.不利於修改和維護。因為程式的區域性性...
程序管理 程序的死鎖
環路等待條件又叫迴圈等待條件 迴圈等待條件,請求和保持條件,互斥條件,不可剝奪條件。只要保證任何時刻產生死鎖的四個條件至少有乙個不成立,就可以起到預防死鎖的目的。即允許程序同時訪問某些資源,這樣就沒有資源的互斥使用問題了。但是,有的資源是不允許被同時訪問的,像印表機等等,這是資源本身的屬性。可以實行...
Linux程序的層次關係
當開啟linux系統,lilo linux loader 找到linux核心把它載入到記憶體。它初始化各種硬體,包括磁碟控制器。然後轉到保護模式,載入作業系統,執行初始化各種核心資料結構的 例如inode和檔案表。此程序的pid為0。它啟動初試程序 init程序,pid為1 完成引導過程的其餘工作。...