拖 计算 表登录的简介) (复制打开:a59k.xyz) sjf . انضم إلى ... xyz) sjf . عذرًا، لم يتم العثور على نتائج في "الأشخاص" للبحث عن "金游世界官方(关于金游世界 ... ... <看更多>
sjf計算 在 [OS] CPU 排程方法 的推薦與評價
Preemptive SJF: Shortest Remaining Time First: SRTF 最短剩餘時間優先; 適合 ... lambda: Process 平均出生率,透過統計計算,透過各種機率分佈下去計算. ... <看更多>
sjf計算 在 问题答案.md 的推薦與評價
1.使用SJF 和FIFO 调度程序运行长度为200 的3 个作业时,计算响应时间和周转时间。 SJF: 作业id, 响应时间, 周转时间. 0, 0, 200. 1, 200, 400. 2, 400, 600. FIFO: 作业id ... ... <看更多>
sjf計算 在 Re: [請益] 排程相關的演算法(優先佇列) - 看板Soft_Job 的推薦與評價
這書不好是他直接假設你知道計算機的timer怎麼用
這邊有個範例
https://www.embeddedrelated.com/showarticle/182.php
計算機底層沒有提供幾點幾分做什麼事這種很高階的排程器
你如果要計算時間的話 唯一的精確方式就是用CPU提供的timer interrupt
概念上大概就是對timer寫入要等待的時間跟一些參數
時間到的時候timer會拉一個interrupt 跳轉到timer的ISR(一個函數)
這樣就完成一次時間的計算
但問題來了 CPU通常不會有太多timer
所以你一次只能計很有限的事情
要多排幾個東西的話 就要把task都存起來
進到ISR的時候來檢查現在要做什麼
其中最有效的方式就是PQ
因為PQ保證頂端的工作必定是下一個工作
只要取pq.top().time - now()就能得到下一次要等待的時間
如果中途插入也是一樣的操作
當然你要用list 或array也可以 但這就單純浪費複雜度
至於RR還是SJF 跟這邊沒有任何關係
頂多就是你在實現multitasking的時候會需要用timer來做scheduling
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.228.129.84 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1666361344.A.1DB.html
你有很多task 分別要在不同時間執行
但你現在只有一個timer 一次只能設定一個要等的時間
那你應該怎麼做才能最有效處理這麼多task?
... <看更多>