- 相關推薦
嵌入式Linux操作系統中的一些重要概念
嵌入式操作系統(Embedded Operating System,簡稱:EOS)是指用于嵌入式系統的操作系統。下面是嵌入式Linux操作系統中的一些重要概念,為大家提供參考。
進程的同步(直接制約):synchronism
指系統中一些進程需要相互合作,共同完成一項任務。具體說,一個進程運行到某一點時要求另一伙伴進程為它提供消息,在未獲得消息之前,該進程處于等待狀態,獲得消息后被喚醒進入就緒態。同步是指在互斥的基礎上(大多數情況),通過其它機制實現訪問者對資源的有序訪問。在大多數情況下,同步已經實現了互斥,特別是所有寫入資源的情況必定是互斥的。少數情況是指可以允許多個訪問者同時訪問資源。
進程的互斥(間接制約)mutual exclusion
由于各進程要求共享資源,而有些資源需要互斥使用,因此各進程間競爭使用這些資源,進程的這種關系為進程的互斥。某一資源同時只允許一個訪問者對其進行訪問,具有唯一性和排它性。但互斥無法限制訪問者對資源的訪問順序,即訪問是無序的。
相關概念:
互斥:指多個進程不能同時使用同一個資源;
死鎖:指多個進程互不相讓,都得不到足夠的資源;
饑餓:指一個進程一直得不到資源(其他進程可能輪流占用資源)
臨界資源:系統中某些資源一次只允許一個進程使用,稱這樣的資源為臨界資源或互斥資源或共享變量
臨界區:進程中訪問臨界資源的一段代碼。
臨界區問題
臨界區(critical section):進程中訪問臨界資源的一段代碼。
進入區(entry section):在進入臨界區之前,檢查可否進入臨界區的一段代碼。如果可以進入臨界區,通常設置相應"正在訪問臨界區"標志
退出區(exit section):用于將"正在訪問臨界區"標志清除。
剩余區(remainder section):代碼中的其余部分。
使用臨界區應遵循的準則
有空讓進:當無進程在臨界區時,任何有權使用臨界區的進程可進入
無空等待:不允許兩個以上的進程同時進入臨界區
多中擇一:當沒有進程在臨界區,而同時有多個進程要求進入臨界區,只能讓其中之一進入臨界區,其他進程必須等待
有限等待:任何進入臨界區的要求應在有限的時間內得到滿足
讓權等待:處于等待狀態的進程應放棄占用CPU
平等競爭:任何進程無權停止其它進程的運行進程之間相對運行速度無硬性規定
Linux下的進程包含以下幾個關鍵要素:
有一段可執行程序;
有專用的系統堆棧空間;
內核中有它的控制塊(進程控制塊),描述進程所占用的資源,這樣,進程才能接受內核的調度;
具有獨立的存儲空間
進程和線程有時候并不完全區分,而往往根據上下文理解其含義。
【嵌入式Linux操作系統中的一些重要概念】相關文章:
LINUX操作系統09-19
LINUX操作系統01-22
Linux操作系統的安裝09-07
linux操作系統的概述05-31
Linux操作系統的安裝01-23
linux操作系統原理知識06-12
常見的Linux操作系統介紹08-26