2014-09-22 50 views
1

我正在學習操作系統課程,我們已經討論了過程控制塊是什麼,存儲在其中的是什麼,它服務的目的是什麼以及我理解了所有這些,但是我們並沒有真正瞭解什麼是數據結構實際上是用來製作它的。谷歌搜索後,我遇到了兩種結構:使用鏈表或數組。我意識到基於操作系統的結構可能會有所不同,但是我確切地想知道用什麼數據結構來創建一個結構,特別是在Unix操作系統中(因爲我使用的是Unix機器)?用於在Unix中實現過程控制塊的數據結構是什麼?

+1

好吧,你可以看看源代碼。我相信這會有所幫助... – 2014-09-22 20:54:07

回答

1

doubly-linked list數據結構通常用於實現過程控制塊!在UNIX中,PCB也被實現爲雙向鏈表。但是,如果您的操作系統(談論定製操作系統)是輕量級的,那麼您可以通過使用更簡單的數據結構(如數組)來下車!但是,一般來說,PCB是一個非常大的數據結構,因此建議存儲在雙向鏈接列表中,這可以適用於任何級別的任何進程(存儲所有可能的關於進程的信息)。

此外,檢查我的this answer,這裏也是我的最後一行都提到了相同的答案...

+0

非常感謝!我會投票給你,但我沒有足夠的聲望。 – busebd12 2014-09-24 02:55:16

相關問題