当前位置: 首页 > news >正文

软考 系统架构设计师系列知识点之杂项集萃(90)

接前一篇文章:软考 系统架构设计师系列知识点之杂项集萃(89)

第164题

下面关于变更控制的描述中,()是不正确的。

A. 变更控制委员会只可以由一个小组担任

B. 控制需求变更与项目的其它配置管理决策有着密切的联系

C. 变更控制过程中可以使用相应的自动辅助工具

D. 变更的过程中,允许拒绝变更

正确答案:A。

解析:

变更控制委员会可以由一个小组担任,也可以由多个不同的组担任。变更控制委员会的成员应能代表变更涉及的团体。变更控制委员会可能包括如下方面的代表:

(1)产品或计划管理部门;

(2)项目管理部门;

(3)开发部门;

(4)测试或质量保证部门;

(5)市场部或客户代表;

(6)制作用户文档的部门;

(7)技术支持部门;

(8)帮助桌面或用户支持热线部门;

(9)配置管理部门。

第165题

某嵌入式实时操作系统采用了某种调度算法,当某任务执行接近自己的截止期(deadline)时,调度算法将把该任务的优先级调整到系统最高优先级,让该任务获取CPU资源运行。请问此类调度算法是( )。

A. 优先级调度算法

B. 抢占式优先级调度算法

C. 最晚截至期调度算法

D. 最早截止期调度算法

正确答案:C。

解析:

本题考查的是嵌入式操作系统调度算法。

实时系统存在多种调度算法。

  • 优先级调度算法 —— A选项

系统为每个任务分配一个相对固定的优先顺序,然后调度程序根据优先级的高低排序,按时间顺序进行高优先级任务优先调度。

  • 抢占式优先级调度算法 —— B选项

是在优先级调度算法基础上,允许高优先级任务抢占低优先级任务而运行。

  • 最晚截至期调度算法 —— C选项

指调度程序按每个任务最接近其截止期末端的时间进行调度,本题描述的就是最晚截止期调度算法。

  • 最早截至期调度算法 —— D选项

指调度程序按每个任务的截至时间,选择最早到截止期的头端时间的任务进行调度。

最晚截止期调度算法(Latest Deadline First,LDF)和最早截止期调度算法(Earliest Deadline Firs,EDF)是两种不同的实时任务调度算法,它们的主要区别和对比如下:

(1)调度依据

  • 最晚截止期调度算法:关注的是任务的“最晚”截止时间,即调度程序总是选择离截止时间最近的订单来做,以确保每个订单都能在截止时间前完成。这种方式关注的是“谁最急需”,而不是“谁最重要”。
  • 最早截止期调度算法:会优先处理那些截止时间最早的任务。这样做的目的是尽量减少因任务延误而影响客户满意度的风险。即使有的任务可能更简单或更复杂,只要它的截止时间最早,就先做。

(2)目标和优化

  • 最晚截止期调度算法:专注于处理接近当前日期的紧急任务,以防任务逾期。
  • 最早截止期调度算法:优先解决已经逾期或最早需要处理的任务,以最快解决潜在的延误问题。

(3)抢占性

  • 最晚截止期调度算法:既可以用于抢占式调度,也可以用于非抢占式调度方式中。在抢占式调度中,当一个新任务到达且其截止时间比当前正在执行的任务更早时,当前任务会被抢占。
  • 最早截止期调度算法:通常用于抢占式调度,以确保任务能够在其截止时间之前完成。

(4)适用场景

  • 最晚截止期调度算法:适用于那些需要优先处理最紧急任务的场景,即那些截止时间最接近当前时间的任务。
  • 最早截止期调度算法:适用于需要尽快处理最早截止期任务的场景,以减少逾期时间并提高客户满意度。

(5)性能

  • 最晚截止期调度算法:性能可能不如EDF,因为它可能不会总是选择最早截止期的任务,而是选择最晚截止期的任务,这可能导致某些任务的延迟增加。
  • 最早截止期调度算法:在某些条件下,EDF被证明是一种最优的实时调度算法,尤其是在任务执行时间已知且固定的情况下。

最晚截止日期,有个另外的名字叫作最小松弛时间,松弛时间 = 截止时间 - 当前时间 - 执行时间,题目提到快到截止时间,我们可以理解为松弛时间很小了,这样调度就是最晚截止。最晚截止期算法选择松弛度最小的任务执行。最早截止期调度算法就是按照截止日期最早的执行。假如题目换个表述,某类任务截止日期靠前,CPU 优先调度,那么选择最早截止调度算法。

http://www.xdnf.cn/news/1046539.html

相关文章:

  • AOP +ThreadLocal实现对接口监控
  • linux设置信号量系统参数
  • 【Dify系列】【Dify 核心功能】【应用类型】【三】【Agent】
  • Python 面向对象编程基础-类的创建与__init__实例化
  • [Java 基础]正则表达式
  • 第10章:Neo4j与其他技术集成
  • 图数据库neo4j部分用法浅讲
  • 基于SpringBoot和Leaflet的电影票房时序展示-以《哪吒2》为例
  • 6,TCP客户端
  • 【系统设计【3】】系统设计面试框架:从理论到实践的完整指南
  • 2013-2023年 地级市-财政透明度数据-社科经管实证数据
  • 使用Netlify进行简单部署
  • UE5 仿 鸣潮人物渲染
  • 【项目实训】【项目博客#09】HarmonySmartCodingSystem系统后端智能API检索与代码助手实现(6.2-6.15)
  • Kafka代码模板
  • 论文略读:Can LLMs Solve Longer Math Word Problems Better?
  • React 实现九宫格抽奖游戏
  • 语言特性适用的场景:卫星、火箭控制系统用什么开发语言?
  • 【小沐杂货铺】基于Babylon.JS绘制三维数字地球Earth(GIS 、WebGL、vue、react,提供全部源代码)
  • [windows工具]OCR识文找图工具1.2版本使用教程及注意事项
  • 使用 MCP 驱动的分布式智能扩展 Space-O-RAN
  • 电磁场与电磁波篇---电磁场的边界条件
  • 使用 Canal 实现 MySQL 数据同步的完整指南
  • MIT线性代数第三讲笔记
  • [python] 堆
  • 共享内存实现进程通信
  • 1.MySQL三层结构
  • Faithful Logical Reasoning via Symbolic Chain-of-Thought
  • 组策略关闭 Windows 防火墙指南(企业版/专业版)
  • 关于springMVC 项目 println 输出中文乱码问题,解决方法