[問題] 關於 process context
大家好 新手自學
最近在閱讀 Linux 有關 execution contexts 的觀念
對於 process context 這個名詞的意思不太確定
舉的例子是 :
一個程式 a,目的要開啟檔案後讀取,
這個程式 a 執行之後,從 user space 經由 c library read()
發出一個讀取請求給 kernel,接著 context 轉移到 kernel space ,
kernel 經由 IDE driver 去驅使硬碟讀取相對應磁區的資料,
在等待硬碟回應的這段時間,kernel 會把程式 a 阻斷 blocked 放到 wait queue 中
接著執行 context switch 去執行別的程式;
等到硬碟讀取完成之後,kernel 向 CPU 發一個 interrupt ,
再執行一個 context switch 回到程式 a,這時候就可以讀到硬碟回應的資料
經由上方的例子,想問的是
所謂的 process context 是否是指
一個程式執行之後成為 process 並儲存在 main memory ,
然後這個 process 就是要執行開啟檔案讀取的目的,
而這個目的會經由
user space ( user space context),
kernel space ( kernel space context) ,
ISR (interrupt context) 等相關的部分來完成這個目的
所以這整個 application process 的執行過程上下文,就稱為 process context ???
是這個意思嗎??
再請各位解惑了,
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.72.16.21
※ 文章網址: https://www.ptt.cc/bbs/LinuxDev/M.1525184372.A.8FD.html
→
05/01 23:26,
7年前
, 1F
05/01 23:26, 1F
所以 admon 大大的意思是否是,我文章後面寫的 process context 解釋是對的,
但是 interrupt context 的部分除外
是這個意思嗎??
如果不對的話,可以再進一步解說 process context 的部分嗎?
謝謝
※ 編輯: shiningboy (42.72.16.21), 05/02/2018 00:05:51
→
05/02 03:00,
7年前
, 2F
05/02 03:00, 2F
→
05/02 03:01,
7年前
, 3F
05/02 03:01, 3F
推
05/03 20:57,
7年前
, 4F
05/03 20:57, 4F
→
05/03 20:57,
7年前
, 5F
05/03 20:57, 5F
LinuxDev 近期熱門文章
PTT數位生活區 即時熱門文章