Soft_Job 板


LINE

这书不好是他直接假设你知道计算机的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 --
QR Code



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 125.228.129.84 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1666361344.A.1DB.html
1F:推 ntpuisbest: 原来底层没有提供几点几分喔,想问为何array是浪费复 10/21 22:49
2F:→ ntpuisbest: 杂度 10/21 22:49
3F:→ ntpuisbest: array的话要怎麽做排程,只能无脑polling吗? 10/21 22:49
4F:→ gasbomb: 因为array你没办法用O(1)拿到最优先的task 10/21 22:51
5F:→ gasbomb: 除非你每次insert的时候都sort 可是这样更浪费 10/21 22:53
6F:→ Apache: 你再想一下 我觉得你没有搞清楚问题 10/21 23:09
7F:推 MoonCode: 这id好棒 内容也赞 10/21 23:39
8F:推 humanfly: 感谢分享 10/22 00:32
9F:推 jasonwung: 推推 10/22 00:40
10F:推 ntpuisbest: 概念上大概就是对timer写入要等待的时间跟一些参数 10/22 00:46
11F:→ ntpuisbest: 时间到的时候timer会拉一个interrupt 跳转到timer的IS 10/22 00:46
12F:→ ntpuisbest: R(一个函数) 10/22 00:46
13F:→ ntpuisbest: 我想重点应该在这句? 10/22 00:47
这样讲好了 你有很多task 分别要在不同时间执行 但你现在只有一个timer 一次只能设定一个要等的时间 那你应该怎麽做才能最有效处理这麽多task?
14F:推 viper9709: 推解说 10/22 00:49
15F:→ Firstshadow: 大师 10/22 08:59
16F:推 oneheat: 不是Kernel没有提供几点几分,而是Kernel的机制是会有一 10/22 13:56
17F:→ oneheat: 个固定的timer 每n ms(看freq 多少),会起来做一次一系 10/22 13:56
18F:→ oneheat: 列的操作 10/22 13:56
19F:推 jason222333: 推 10/22 14:03
20F:推 longlongint: 讲的不错而且有看对问题 推 10/22 14:56
21F:推 Hsins: 这文章好棒欸 10/23 14:01
22F:推 Karlsland: 大师 10/23 23:16
※ 编辑: Apache (125.228.129.84 台湾), 10/23/2022 23:25:32
23F:推 richer6605: 推 10/25 02:52
24F:推 sxy67230: 补充一下计时的部分,现在很多年轻一辈都不知道主机板 10/25 10:31
25F:→ sxy67230: 其实有一个RTC电池,主要是要储存物理时钟透过石英晶体 10/25 10:31
26F:→ sxy67230: 来计时,早期PC那个坏掉要做schedule就很麻烦,现在基 10/25 10:31
27F:→ sxy67230: 本上这块已经做到很难坏了 10/25 10:31
28F:→ sxy67230: 我觉得原原PO把一个复合的问题没有想得很透彻,timer、 10/25 10:34
29F:→ sxy67230: interrupt、scheduler是一个复合的概念,全部都变成一 10/25 10:34
30F:→ sxy67230: 个就很难抽象思考 10/25 10:34







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP