当前位置: 首页 > 面试题库 >

选择Linux I / O调度程序

车嘉实
2023-03-14
问题内容

我读到,据说可以通过写入/ sys / block / [disk] / queue / scheduler来更改正在运行的内核上特定设备的I /
O调度程序。例如,我可以在系统上看到:

anon@anon:~$ cat /sys/block/sda/queue/scheduler 
noop anticipatory deadline [cfq]

默认值是完全公平的队列调度程序。我想知道的是,在自定义内核中包括所有四个调度程序是否有用。除非内核足够聪明地为正确的硬件选择正确的调度程序,特别是基于闪存的驱动器的“
noop”调度程序,以及针对传统驱动器的其他调度程序,否则编译一个以上的调度程序似乎没有多大意义。硬盘。

是这样吗


问题答案:

如中所述/usr/src/linux/Documentation/block/switching- sched.txt,可以在运行时更改任何特定块设备上的I /
O调度程序。可能会有一些延迟,因为在使用新的调度程序之前,所有先前的调度程序的请求都已清除,但是即使设备使用过多,也可以毫无问题地对其进行更改。

# cat /sys/block/hda/queue/scheduler
noop deadline [cfq]
# echo anticipatory > /sys/block/hda/queue/scheduler
# cat /sys/block/hda/queue/scheduler
noop [deadline] cfq

理想情况下,将有一个调度程序来满足所有需求。它似乎还不存在。内核通常没有足够的知识来为您的工作负载选择最佳的调度程序:

  • noop 通常是内存支持的块设备(例如ramdisk)和其他非旋转介质(闪存)的最佳选择,在这些设备中尝试重新计划I / O会浪费资源
  • deadline 是一个轻量级的调度程序,它试图对延迟进行严格限制
  • cfq 尝试维护I / O带宽在系统范围内的公平性

默认设置anticipatory很长时间,它进行了很多调整,但在 2.6.33 (2010年初)中已被删除。
cfq成为前一段时间的默认设置,因为它的性能合理且公平是多用户系统(甚至单用户桌面)的一个好目标。在某些情况下-
数据库经常被用作示例,因为它们往往已经具有自己独特的调度和访问模式,并且通常是 重要的服务(所以谁在乎公平性?)-
anticipatory具有可调性的悠久历史以在这些工作负载上获得最佳性能,并deadline很快将所有请求传递到基础设备。



 类似资料:
  • 问题内容: 我正在尝试使用hibernate创建一个小项目,但出现了错误“类型未映射[从类型o中选择o]”,我在hibernate.cfg.xml中添加了映射,但仍然出错。 Type.java: hibernate.org.xml: hibernateUtil.java: 测试Java 问题答案: 解决了 !问题是我使用的hibernate版本,所以我对其进行了更改,即HibernateUtil中

  • 颜色在图像风格中比起其他元素显得更为重要。当合理有效地使用颜色时,数据模式会被凸显出来;反之,则会被掩盖。这里有很多数据可视化中关于颜色使用的优秀资源,我推荐阅读这些 Rob Simmon 的博客文章以及这篇更加学术性的论文。 此外,matplotlib 文档也提供了一篇很好的教程来说明一些内置Colormap的感知属性。 seaborn让您在选择与您处理的数据类型和可视化过程中搭配的配色方案变得

  • 用途: 提供独立于平台的基于select模块的I/O多路复用的抽象 运行模式 回显服务端 # selectors_echo_server.py import selectors import socket mysel = selectors.DefaultSelector() keep_running = True def read(connection, mask): "Callb

  • 我正在做一个项目,我们计划使用WLP (WebSphere liberty)代替传统的WAS。 代码使用 WAS 调度程序来调度活动。 liberty 是否也具有与 WAS 中存在的相同级别的调度程序支持/功能? 如何将调度程序任务从webphere迁移到自由?

  • 角度字段存储数字作为其值,并存储字符串作为其文本。 它的值是0到360之间的数字(可以更改此范围),而其文本可以是输入到其编辑器中的任何字符串。 角度字段 带编辑器的角度字段 压缩的角度字段 创造 { "type": "example_angle", "message0": "angle: %1", "args0": [ { "type": "field_angle

  • 背景 关系数据库在大多数企业或组织中具有很长的历史,这是有充分理由的。关系数据库是满足当前业务需求的现有应用系统的基础;它们得到了广泛的工具生态的支持;而且有大量的技术从业者有能力实施和维护这些系统。 但是目前企业或组织越来越多地考虑遗留关系数据库架构的替代方法。在某些情况下,这样做的动机是技术上的,例如需要处理新的,多结构的数据类型,这些数据类型不适合关系数据库的表格数据模型,或者数据规模超出现