簡體   English   中英

如何使用 pthread 庫模擬 CPU 調度(多級隊列)?

[英]How to simulate CPU scheduling(multilevel queue) using pthread library?

我想使用 pthread 庫模擬多級隊列調度

我將制作 3 個就緒隊列。 第一個隊列有循環調度算法(時間量 = 2) 第二個隊列有循環調度算法(時間量 = 5) 第三個隊列有 FCFS 調度算法。

每個隊列都有一個調度進程的線程。

隊列優先級:第一個隊列>第二個隊列>第三個隊列

我想知道如何優先考慮隊列。 這是關於使用信號量的同步。

我希望高優先級隊列的線程先執行。

怎么做?

感謝閱讀。

引用 Wikipedia p_queue priority queue是一種類似於常規queuestack數據結構的抽象數據類型,其中每個元素還具有與之關聯的“優先級”。在優先級隊列中,具有高優先級的元素在具有高優先級的元素之前被提供低優先級

...優先級隊列可以用堆或各種其他方法(例如無序數組)來實現”

web 充滿了教程,例如這里 您可以使用堆實現優先級隊列,然后確定源代碼中關鍵部分的位置! 只有這樣,您才應該通過使用互斥鎖或信號量或任何其他操作系統同步機制鎖定這些部分來保護和防止這些部分的競爭條件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM