零拷贝技术:mmap内存映射
Direct I/O 强调文件读写不经过内核 Page Cache,数据在用户态缓冲区和设备之间通过 DMA 传输。这篇文章我们来介绍第三种零拷贝技术:mmap,即内存映射文件。 I/O 强调文件读写不经过内核 Page Cache,数据在用户态缓冲区和设备之间通过 DMA 传输。这篇文章我们来介绍第三种零拷贝技术:mmap,即内存映射文件。 前面一篇文章讲了零拷贝技术的一种:Direc...
Direct I/O 强调文件读写不经过内核 Page Cache,数据在用户态缓冲区和设备之间通过 DMA 传输。这篇文章我们来介绍第三种零拷贝技术:mmap,即内存映射文件。 I/O 强调文件读写不经过内核 Page Cache,数据在用户态缓冲区和设备之间通过 DMA 传输。这篇文章我们来介绍第三种零拷贝技术:mmap,即内存映射文件。 前面一篇文章讲了零拷贝技术的一种:Direc...
Direct I/O 是一种文件 I/O 操作模式,其核心特点是 绕过操作系统的 Page Cache (页缓存),让数据直接在应用程序的用户空间缓冲区和存储设备(磁盘 / SSD / NVMe) 之间进行传输,这和标准的 Buffered I/O (数据经过 Page Cache) 形成鲜明对比。 Direct I/O 我们先来看一个例子,来直观的认识一下 Direct I/O。我们使...
文件系统的类型有很多种,如CentOS 5和CentOS 6上默认使用的ext2/ext3/ext4,CentOS 7上默认使用的xfs,windows上的NTFS,光盘类的文件系统ISO9660,MAC上的混合文件系统HFS,网络文件系统NFS,Oracle研发的btrfs,还有老式的FAT/FAT32等。 本文将非常全面且详细地介绍ext家族的文件系统,中间还非常详细地介绍了inode...
左值引用(&)与右值引用(&&) 在c++11中提出了右值引用,作用是为了和左值引用区分开来,其作用是: 右值引用限制了其只能接收右值,可以利用这个特性从而提供重载,这是右值引用有且唯一的特性,限制了接收参数必为右值, 这点常用在move construct中,告诉别人这是一个即将消失的对象的引用,可以瓜分我的对象东西,除此之外,右值引用就没有别的特性了。 cla...
偶尔刷到了一个C中,如何实现删除注释造成程序无法运行的帖子,自己想到的办法是 #define true (__LINE__%2==0),这样应该能实现所要的效果。结果看到了一个关于pragma once bug的帖子,觉得比较有趣,记录一下。 原文链接 复现 要复现这个例子,我们首先需要分别在两个子目录中创建四个文件: mkdir foo mkdir bar touch foo/im...
首先回顾一下上一篇结尾的两个问题: 计算下贵州茅台这十几年来,其股价涨幅远远跑赢京沪房价的原因。这个问题的关键在于,如果一个人投资茅台长期持有,其投资利润来源,茅台的估值贡献了多少,业绩贡献了多少,分红贡献了多少。 接下来谈一谈对上一篇两个问题的理解。 问题一 净资产收益率,股息率(分红),市盈率,利润增长,这几个要素之间有哪些数学关系? 或者换种说...
这里谈一下上一篇中估值与指标的关系 获取公司营业数据 估值和盈利能力有什么关系 没有关系。 盈利能力是企业自身的能力,它不代表估值。 比如格力电器的盈利能力很强,近10年的ROE,平均在27%。 也就是说,其净资产,近10年以复合年化27%的速度在增加,堪比巴菲特。但是其近十年的PE估值,平均只有11倍。 再看五粮液,近十年的ROE平均在20%左右,低于格力电器,但是近十...
学习投资,记录一下 股票的估值指标 1. 市盈率PE PE= 总市值/归母净利润。 市值取当时的总市值,归母净利润取过去12个月,即过去四个季度的归母净利润总和。如果现在能看到的最新季度业绩为2025Q2,那么归母净利润应取(25Q2+25Q1+24Q4+24Q3)过去四个季度的总利润和。 归母净利润:TODO PE又可以分为静态PE,动态PE,以及PETTM ...
记录开发中遇到的git相关的问题 1. 使用vpn代理 开了VPN之后,git clone/push 仍然会失败,访问不到链接,是由于 git 默认不使用代理导致,配置 git 代理后可提升速度。 1.1 查看vpn本地代理端口 不同 vpn 软件或安装的随机性导致每台机器的端口号并不一致,以显示为准。 当前显示 http 端口为:2802;socks5 端口为:280...
记录一下工作中常用的Linux操作。 1. Linux常用记录 #在当前目录下的所有文件中的test_run下的icpower.log文件中查找 Merge 关键字 ---注意grep可以在文件中查找 grep Merge */test_run/icpower.log #-r是递归的意思,这里的意思是在当前文件中的所有项中查找Merge,无论是文件还是文件夹 grep Merge ...