随笔分类 -  Linux

上一页 1 2

Linux系统编程——文件IO——写回实验
摘要:1.目的 验证 页缓存 和 写回机制 2.方法 分别用 write,mmap 写入文件,写入后进行sleep,用cat命令查看文件是否有数据,然后断电,重启后查看文件是否有数据。 为了方便测试将 回写时间阈值调整为 50000ms echo 50000 > /proc/sys/vm/dirty_wr 阅读全文

posted @ 2021-08-18 22:28 开心种树 阅读(144) 评论(0) 推荐(0) 编辑

linux系统编程——文件IO——多路IO
摘要:1. 思想 若要观察5个水管的出水情况,可以让五个人分别守着,也可以用安装监控,只需要一个人观察监控。 有了多路IO,编程思路大致如下: 设置需要监控的IO 睡眠 唤醒 处理可进行的IO 回到步骤1 linux 为 多路IO提供了3中机制:select, poll, epoll 2. select 阅读全文

posted @ 2021-08-18 09:18 开心种树 阅读(70) 评论(0) 推荐(0) 编辑

linux系统编程——文件IO——缓冲IO
摘要:1. 为什么需要缓冲IO 因为所有磁盘操作都 用 块 作为基本操作单位,所以IO要求数据大小 对齐块。 比如,应用程序 写 4.5个块大小的数据,则内核会 写5个块大小数据,读取最后一个块数据,更新(删除)后半部分数据,然后再将整个块写出去,所以若内核一定会保证所有操作都在 块大小整数倍上进行,必要 阅读全文

posted @ 2021-08-18 09:18 开心种树 阅读(212) 评论(0) 推荐(0) 编辑

Linux系统编程——文件IO——内核内幕
摘要:1. 引言 设计IO的内核实现,主要是三个子系统:虚拟文件系统,页面缓存,页面写回。 2. 虚拟文件系统 虚拟文件系统,也称为 虚拟文件切换系统(virtual file switch),让linux内核在调用文件系统函数时,不需要知道所使用的具体文件系统。 VFS的好处很多:单一系统调用可以读取任 阅读全文

posted @ 2021-08-18 09:18 开心种树 阅读(125) 评论(0) 推荐(0) 编辑

linux系统编程——文件IO——fd,open, read,write,close
摘要:1.前言 1.1 为什么要浪费时间在简单的文件上 是的,文件的各种操作很具体简单,但是这是针对普通文件,由于linux设计思想是一切皆文件,所以文件IO被实现为支持很多对象的操作,总之重要的不是文件,而是文件IO。 1.2 概述 在用户层,一切文件IO都是基于fd,而fd是 task_struct 阅读全文

posted @ 2021-08-18 09:17 开心种树 阅读(610) 评论(0) 推荐(0) 编辑

linux系统编程——文件IO——文件系统和描述符
摘要:1. 从磁盘说起 1.1 读写磁盘数据 众所周知,磁盘读写是通过 盘面,磁道,扇区 3D寻址,用磁极 NS 表示 01 ,且通过接口指令(如SATA)完成共工作。当然这些都不重要,对用户层系统编程而言,只需要记住 磁盘读写是以 数据块为单位,且读写速度慢。 1.2 读写磁盘上文件 文件由两部分组成: 阅读全文

posted @ 2021-08-18 09:16 开心种树 阅读(145) 评论(0) 推荐(0) 编辑

上一页 1 2
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示