Linux IO与文件系统
文章平均质量分 75
Linux IO与文件系统
Adrian503
中国科学院大学计算机硕士,研究领域Linux内核、嵌入式软件、BSP等。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Linux 内核铁三角 CPU 内存 和 IO的关系
当我们谈起Linux 铁三角的时候,我们指的是 CPU 内存 和 I/OCPU 这边呢,主要关注调度器,调度算法,这一块相对来说呢,学起来比较容易,I/O 这一块比较独立,不过一般不能孤立的去看IO,一般要透过 cpu 和内存去看,内存在 CPU 和 IO之间肩负这一个中间的角色,内存和IO 直接可以进行交换,一般来说 CPU 或者程序员都不会直接读写I/O(除非是direct io),只会读写内存。虽然内存管理是铁三角里最难的, 但是我们还是要搞明白内存管理的细节的,如果掌握不了,...原创 2021-03-26 16:12:00 · 1405 阅读 · 2 评论 -
面试-如何优化自己目前的系统,有没有去优化过,思考过?
如何优化自己目前的系统,有没有去优化过,思考过?USE模型(利用率 / 饱和度 / 错误)cpu memory io[linux 开机速度的优化]应用层[ IO模型的选择使用 ]系统层[ 文件系统的一致性 ] 选择 合适的文件系统 EXT4 。配合 fsck 修复。 根据你的数据可靠性,选择合适的参数 data=ordereddata=journaldata = writeback[ IO读写速度的优化 ][ 提高吞吐率 ]中断的...原创 2021-03-31 16:18:26 · 278 阅读 · 1 评论 -
Linux性能剖析的模型和方法
CPU、内存和IO关系USE模型 USE模型 吞吐率和延迟的特点 什么东西影响了吞吐率和延迟 各种各样的Linux剖析工具 火焰图 All-in-one和阅码场开源项目LEP(Linux Easy Profiling) Linux 做性能优化是一个 full stack 的工作,需要你非常了解 CPU MEM IO ,因为你不知道系统的瓶颈在哪里,你都不知道内存和IO交换的复杂的细节,不理解什么时候会引入延迟,CPU 和 c...原创 2021-03-30 17:03:03 · 395 阅读 · 0 评论 -
Linux铁三角 - IO与文件系统(三)文件系统的实现
文件系统的实现● EXT2/3/4的layout● 文件系统的一致性:append一个文件的全流程● 掉电与文件系统一致性● fsck● 文件系统的日志● ext4 mount选项● 文件系统的debug和dump● Copy On Write文件系统: btrfs根据上一章的内容,我们知道在文件系统中存放一个文件的大概流程如下,会先读出 /a 的inode ,再根据它的inode table 中的指针找到 它的data block ,然后读出里面的内容,也...原创 2021-03-29 14:34:34 · 860 阅读 · 1 评论 -
Linux铁三角 - IO与文件系统(二)文件系统的架构
文件系统的架构一切都是文件:VFS 字符设备文件、块设备文件 超级块、目录、inode 符号链接与硬链接 目录的组织 icache和dcache,slab shrink 块映射 发现并读取/usr/bin/xxx的全流程 用户空间的文件系统:FUSE最近大家都在谈的虚拟化技术,就是要充分利用系统的资源,这里充分利用系统资源的意思就是:CPU不闲着,IO也不闲着,CPU不等IO, IO不等CPU,它们之间没有相互等的情况。在linux系统中,我们访问一个硬盘设备,我们有.原创 2021-03-29 09:54:28 · 763 阅读 · 0 评论 -
Linux铁三角 - IO与文件系统(一)程序性能优化- 利用好IO模型
IO模型有很多种,我们在编程的时候,可以选择不同的IO模型,是会影响到你程序的性能,● 阻塞● 非阻塞● 多路复用:select和epoll● Signal IO● 异步IO● Libevent: 事件驱动的I/O● 多线程与I/O编程模型1个程序设计案例 - 性能优化CPU的算包的过程(蓝色),网卡发包(红色) ,假设CPU的频率是1Ghz 网卡的速度是 1Gbps,如果按照 程序的设计是下图左侧的方式,CPU 和 网卡的性能 只能发挥出 1半的性能...原创 2021-03-28 00:07:38 · 729 阅读 · 0 评论
分享