14、Linux I/O 调度器详解(上)

Linux I/O 调度器详解(上)

1. 多队列 I/O 调度器概述

在 Linux 系统中,单队列 I/O 调度器自内核 5.0 版本起已被弃用。尽管可以禁用多队列调度器并恢复使用单队列调度器,但最新内核版本默认采用多队列调度器。多队列调度器主要有以下四种:
- MQ - deadline
- Budget Fair Queuing (BFQ)
- Kyber
- None

这些调度器将 I/O 请求映射到多个队列,由分布在多个 CPU 核心上的内核线程处理。

2. MQ - deadline 调度器:保证服务开始时间

MQ - deadline 调度器,顾名思义,为 I/O 请求设定了服务期限。由于其面向延迟的设计,常用于对延迟敏感的工作负载。因其高性能,也被用于多队列设备。

2.1 主要目标

确保每个请求都有指定的服务开始时间,通过为所有 I/O 操作设置期限,防止请求被忽视。

2.2 使用的队列
  • Sorted 队列 :该队列中的读写操作按要访问的扇区编号排序。
  • Deadline 队列 :这是一个标准的先进先出 (FIFO) 队列,包含按截止时间排序的请求。为防止请求饥饿,调度器为读写请求分别使用不同的 Deadline 队列,并为每个 I/O 请求分配过期时间。
2.3 工作逻辑
  • 调度器将每个 I/O 请求同时放入 Sorted 队列和
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值