怎么制作网站半透明背景开锁做网站哪个好
怎么制作网站半透明背景,开锁做网站哪个好,自己做soho需要做网站吗,企业oa好的#xff0c;调度算法是操作系统的核心#xff0c;决定了任务如何获得 CPU 时间。根据应用场景#xff08;单处理器、多处理器、实时系统、桌面交互等#xff09;#xff0c;算法差异很大。以下是主要的分类和经典算法。一、按环境和目标分类
1. 批处理系统调度
目标&a…好的调度算法是操作系统的核心决定了任务如何获得 CPU 时间。根据应用场景单处理器、多处理器、实时系统、桌面交互等算法差异很大。以下是主要的分类和经典算法。一、按环境和目标分类1. 批处理系统调度目标最大化吞吐量、CPU利用率减少周转时间。先来先服务FCFS, First-Come, First-Served原理按任务到达就绪队列的顺序执行。特点简单公平但护航效应Convoy Effect严重短任务可能被长任务阻塞平均等待时间长。最短作业优先SJF, Shortest Job First原理优先调度预计运行时间最短的任务。变种最短剩余时间优先SRTF, Shortest Remaining Time First可抢占版本。特点理论上平均等待时间最优但需要预知运行时间且可能导致长任务饥饿。最高响应比优先HRRN, Highest Response Ratio Next原理选择响应比 (等待时间 预计运行时间) / 预计运行时间最高的任务。特点平衡了等待时间和运行时间克服了 SJF 的长任务饥饿问题。2. 交互式系统调度目标保证响应时间、公平性、均衡性。时间片轮转RR, Round Robin原理每个任务分配一个固定时间片quantum用完后被抢占并放回就绪队列末尾。关键时间片大小至关重要太大→退化为FCFS太小→上下文切换开销大。应用最经典的分时系统算法。优先级调度Priority Scheduling原理每个任务有优先级调度器总是选择优先级最高的任务。变种静态优先级创建时确定不变。动态优先级根据等待时间、资源使用情况动态调整如老化机制防止低优先级任务饥饿。应用Unix/Linux 的nice值、Windows 的优先级类。多级队列MQ, Multilevel Queue原理将就绪队列分成多个独立队列如前台交互队列高优先级RR算法、后台批处理队列低优先级FCFS算法队列间有固定优先级。特点不同队列可用不同调度策略。多级反馈队列MLFQ, Multilevel Feedback Queue原理MQ 的动态版本任务可在队列间移动。规则示例新任务进入最高优先级队列短任务假设。若任务用完时间片未结束则降低其优先级移入下一级队列。若任务在时间片内主动放弃 CPU如 I/O则保持或提高优先级交互任务特征。特点自适应能较好地区分 CPU 密集型和 I/O 密集型任务是许多现代操作系统如传统 Unix的基石。3. 实时系统调度目标保证截止时间Deadline确保关键任务按时完成。单调速率调度RMS, Rate-Monotonic Scheduling原理静态优先级任务周期越短优先级越高。适用周期性任务。最早截止时间优先EDF, Earliest Deadline First原理动态优先级截止时间越近优先级越高。特点理论上CPU利用率最高但实现复杂。最低松弛度优先LLF, Least Laxity First原理调度松弛度 截止时间 - 剩余执行时间 - 当前时间最小的任务。特点动态调整对突发任务响应好。4. 多处理器/多核调度目标负载均衡、缓存亲和性、扩展性。对称多处理SMP调度每个处理器运行自己的调度器从共享就绪队列中取任务。负载均衡Load Balancing将任务从繁忙 CPU 迁移到空闲 CPU。亲和性调度Affinity Scheduling优先将任务调度到上次运行的 CPU 上以利用仍在缓存中的热数据。集群/分组调度Gang Scheduling将相关线程如一个进程的多个线程同时调度到不同 CPU 上减少同步等待。5. Linux CFS 调度器完全公平调度器这是现代 Linux 默认的调度器其核心思想非常精妙核心概念不按时间片分配而是按虚拟运行时间vruntime。数据结构使用红黑树组织可运行任务按vruntime排序。调度逻辑总是选择vruntime最小的任务即实际获得CPU时间最少的任务来运行。公平性通过vruntime的增长速度和优先级nice值的权重来体现优先级高的任务vruntime增长慢从而更易被选中。交互性优化对睡眠任务进行vruntime补偿使其醒来后能快速响应。二、关键指标对比算法优点缺点适用场景FCFS简单、无饥饿平均等待时间长、护航效应批处理简单系统SJF/SRTF平均等待时间最优需要预知时间、长任务饥饿批处理理论最优RR公平、响应时间有界时间片选择敏感、上下文切换开销分时系统、交互系统优先级重要任务优先低优先级可能饥饿通用系统、实时系统MLFQ自适应、平衡长短任务参数配置复杂通用操作系统Unix传统CFS近似理想公平、低开销实现复杂现代 Linux 通用系统EDFCPU利用率高实现复杂、过载时行为不可预测实时系统三、如何选择通用操作系统如 Linux、Windows采用混合策略。Linux 的 CFS 结合了公平、优先级和交互性优化Windows 使用基于优先级的多级反馈队列。嵌入式实时系统使用RMS或EDF。大型数据中心关注能耗感知调度和容器编排调度如 Kubernetes 调度器。调度算法的演进始终在公平性、吞吐量、响应时间、开销之间寻找最佳平衡。理解这些基础算法是分析任何现代调度器的基础。