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

2022年最火的加盟店郑州seo招聘

2022年最火的加盟店,郑州seo招聘,网站服务器放置地怎么填,做商城网站外包对于 ext4 文件系统#xff0c;最后调用的是 ext4_file_write_iter#xff0c;它将 I/O 的调用分成两种情况#xff1a; 第一是直接 I/O。最终我们调用的是 generic_file_direct_write#xff0c;这里调用的是 mapping-a_ops-direct_IO#xff0c;实际调用的是 e…对于 ext4 文件系统最后调用的是 ext4_file_write_iter它将 I/O 的调用分成两种情况 第一是直接 I/O。最终我们调用的是 generic_file_direct_write这里调用的是 mapping-a_ops-direct_IO实际调用的是 ext4_direct_IO往设备层写入数据。 第二种是缓存 I/O。最终我们会将数据从应用拷贝到内存缓存中但是这个时候并不执行真正的 I/O 操作。它们只将整个页或其中部分标记为脏。写操作由一个 timer 触发那个时候才调用 wb_workfn 往硬盘写入页面。 接下来的调用链为wb_workfn-wb_do_writeback-wb_writeback-writeback_sb_inodes-__writeback_single_inode-do_writepages。在 do_writepages 中我们要调用 mapping-a_ops-writepages但实际调用的是 ext4_writepages往设备层写入数据。 do_direct_IO 里面有两层循环第一层循环是依次处理这次要写入的所有块。对于每一块取出对应的内存中的页 page在这一块中有写入的起始地址 from 和终止地址 to所以第二层循环就是依次处理 from 到 to 的数据调用 submit_page_section提交到块设备层进行写入。 电梯算法有很多种类型定义为 elevator_type。 struct elevator_type elevator_noopNoop 调度算法是最简单的 IO 调度算法它将 IO 请求放入到一个 FIFO 队列中然后逐个执行这些 IO 请求。 Noop 调度算法是最简单的 IO 调度算法它将 IO 请求放入到一个 FIFO 队列中然后逐个执行这些 IO 请求。 struct elevator_type iosched_deadline Deadline 算法要保证每个 IO 请求在一定的时间内一定要被服务到以此来避免某个请求饥饿。为了完成这个目标算法中引入了两类队列一类队列用来对请求按起始扇区序号进行排序通过红黑树来组织我们称为 sort_list按照此队列传输性能会比较高另一类队列对请求按它们的生成时间进行排序由链表来组织称为 fifo_list并且每一个请求都有一个期限值。 struct elevator_type iosched_cfq 又看到了熟悉的 CFQ 完全公平调度算法。所有的请求会在多个队列中排序。同一个进程的请求总是在同一队列中处理。时间片会分配到每个队列通过轮询算法我们保证了 I/O 带宽以公平的方式在不同队列之间进行共享。 elevator_init 中会根据名称来指定电梯算法如果没有选择那就默认使用 iosched_cfq。 我们用两块硬盘组成 RAID两个 RAID 盘组成 LVM然后我们就可以在 LVM 上创建一个块设备给用户用我们称接近用户的块设备为高层次的块设备接近底层的块设备为低层次lower的块设备。这样generic_make_request 把 I/O 请求发送给高层次的块设备的时候会调用高层块设备的 make_request_fn高层块设备又要调用 generic_make_request将请求发送给低层次的块设备。虽然块设备的层次不会太多但是对于代码 generic_make_request 来讲这可是递归的调用一不小心就会递归过深无法正常退出而且内核栈的大小又非常有限所以要比较小心。 对于块设备的 I/O 操作分为两种一种是直接 I/O另一种是缓存 I/O。无论是哪种 I/O最终都会调用 submit_bio 提交块设备 I/O 请求。 对于每一种块设备都有一个 gendisk 表示这个设备它有一个请求队列这个队列是一系列的 request 对象。每个 request 对象里面包含多个 BIO 对象指向 page cache。所谓的写入块设备I/O 就是将 page cache 里面的数据写入硬盘。 对于请求队列来讲还有两个函数一个函数叫 make_request_fn 函数用于将请求放入队列。submit_bio 会调用 generic_make_request然后调用这个函数。 另一个函数往往在设备驱动程序里实现我们叫 request_fn 函数它用于从队列里面取出请求来写入外部设备。 此文章为11月Day15学习笔记内容来源于极客时间《趣谈Linux操作系统》推荐该课程。
http://www.dnsts.com.cn/news/21494.html

相关文章:

  • wordpress建站怎么上传wordpress 子域名 函数
  • 公司旅游视频网站模板免费下载打码网站怎么做
  • 做减肥餐的网站app资源网站开发
  • 网站运营工作流程网站关键词字符编辑
  • 班级网站 建设模板什么网站可以用手机做兼职赚钱吗
  • 网站开发原始数据公司宣传片制作多少钱
  • 网新中英企业网站管理系统网站首页设计图
  • 自己 做网站学什么 平面设计查项目经理有没有在建怎么查
  • 如何用wordpress查看搭建的站点北京网站建设营销
  • 百度网站搜索排名高端大气企业网站源码
  • 网站背景色微信公众号跳转的网页怎么制作
  • 微信小程序视频网站开发教程网站建设 中企动力嘉兴0573
  • 网站建设语录网站现状分析
  • 新八建设集团网站如何搭建视频网站
  • wordpress电脑客户端免费网站排名优化
  • 二手手表回收网站达州北京网站建设
  • 做个简单的网站多少钱深圳 网页设计公司
  • 番禺建设网站专家网站换域名要怎么做
  • 网站服务器不稳定怎么打开网页网络ip查询网站
  • 网站设计开户东莞佳诚网站建设有限公司
  • 网站建设犭金手指a排名12农业电子商务平台建设
  • 石碣做网站优化相亲网站怎么建设
  • 做企业网站还有市场吗手机网站制作明细报价表
  • html网站代码网站建设学习流程
  • 网站备案 影响吗公司网站建设调研问卷
  • 四川时宇建设工程有限公司官方网站温州logo设计公司
  • 希腊网站 后缀wd网页设计教程
  • 114黄页兴安盟新百度县seo快速排名
  • 做的好的公司网站个旧市建设局网站
  • 网站页面制作公司商务网站开发背景