程序概念
程序的狀態
使用process完成多程序
什麼叫做資源,比如網路攝像頭,鍵盤,滑鼠這些硬體東西。
程式只有乙個,但這個程式的程序可以有很多個。
工作中,任務數往往大於cpu的核數,即一定有一些任務正在執行。而另外一些任務在等待cpu進行執行,因此導致了有了不同的狀態。
· 程序有3種狀態
接下來放乙個圖來清晰的看到:
匯入multiprocessing模組
import multiprocessing
使用process完成多程序(和執行緒的thread看似一模一樣,其實檢視任務管理器程序,實際有3個同樣的py檔案在執行,而執行緒是乙個py檔案裡執行多個函式)
p1 = multiprocessing.process(target=test1)
總**:
import multiprocessing
import time
deftest1()
:while
true
:print
("1-----"
) time.sleep(1)
deftest2()
:while
true
:print
("2-----"
) time.sleep(1)
defmain()
: p1 = multiprocessing.process(target=test1)
p2 = multiprocessing.process(target=test2)
p1.start(
) p2.start(
)if __name__ ==
'__main__'
:
當執行到start()函式的時候,會建立出子程序,與主程序一模一樣,只有代號不一樣用來區分,相當於拷貝乙份。 不過子程序1執行test1,子程序2執行test2,而不是從頭執行。
程序越多,佔的記憶體越大。
程序概念1
1.什麼是程序?從書本上的哲學概念來解釋程序就是正在執行的程式。從另一方面作業系統如何管理記憶體來解釋,首先需要知道程序的描述。比如在學校,我們作為學生要被管理起來,首先需要被各種資訊進行描述起來 學號 姓名 班級等等 描述學生的就相當於是結構體。同樣程序需要被管理起來也需要先被描述起來,描述程序的...
Linux程序1 程序的概念
1 什麼是程序 乙個正在執行的程式就是乙個程序 2 併發 並行 非同步 同步 臨界區 併發 針對乙個處理器,看起來同時進行。乙個處理器在同一時刻只能執行乙個程式,但是cpu在多個程序之間快速切換,所以看起是同時進行的。這是一種假象 並行 針對多個處理器,一台機器上有多個處理器,那麼程序就有可能同時執...
Linux 程序概念以及程序狀態理解
2 程序狀態 2.2 孤兒程序 2.3 守護程序 精靈程序 程序是乙個pcb 程序控制塊 是乙個執行程式中的描述 在linux下是乙個task struct結構體,通過這個結構體實現作業系統對執行中程式的排程管理。1.1 task struct結構體 task struct結構體是linux核心中的...