Linux内核IO调度层.PDFVIP

  • 23
  • 0
  • 约7.29万字
  • 约 37页
  • 2018-12-11 发布于湖北
  • 举报
Linux内核 IO调度层   Linux内核IO调度层          本文链接:/?p=1693    1    Linux内核 IO调度层  目 录 1  概述 4  2  请求和请求队列 5  2.1  请求队列request_queue 6  2.2  请求 10  2.2.1  数据结构request 10  2.2.2  请求标志 13  2.3  调度器操作方法 14  3  I/O调度器 15  3.1  I/O调度器的工作 16  3.2  调度算法 16  3.2.1  CFQ调度器 16  3.2.2  Deadline调度器 17  3.2.3  I/O调度器的选择 20  4  发送请求到I/O调度器 20  4.1  __make_request () 20  4.2  __elv_add_request () 24  4.3  __blk_run_queue () 27  4.4  驱动服务例程request_fn 28  4.5  请求队列的由来 29  4.5.1  块设备请求队列的创建 29  4.5.2  块设备请求队列的获取 31  5  plug与unplug设备 31  5.1  blk_plug_device ()与blk_remove_plug () 32  5.2  generic_unplug_device () 33  6  块设备请求队列拥塞的处理 34  7  常见问题 36  7.1  SSD经过I/O调度层吗? 36  7.2  I/O请求放到块设备请求队列上后,是否立即被执行呢? 37  2    Linux内核 IO调度层  图目录 图1 内核中块设备操作流程 4  图2 请求和请求队列 12  图3 NVMe SSD驱动架构 37      3    Linux内核 IO调度层  1 概述 我们仍以块设备操作流程开始,分析内核块设备操作中的过程。在块设备上的操作,涉 及内核中的多个组成部分,如图1所示。假设一个进程使用系统调用read ()读取磁盘上的 文件。下面步骤是内核响应进程读请求的步骤; Virtual Filesy

文档评论(0)

1亿VIP精品文档

相关文档