<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[winux的专栏]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/winux</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; winux]]></copyright><item><title><![CDATA[Qemu virtio-blk 后端驱动开发 - PureFlash对接]]></title><link>https://blog.csdn.net/winux/article/details/140025594</link><guid>https://blog.csdn.net/winux/article/details/140025594</guid><author>winux</author><pubDate>Sun, 21 Jul 2024 23:46:38 +0800</pubDate><description><![CDATA[如何为qemu添加新的存储类型驱动]]></description><category></category></item><item><title><![CDATA[ViveNAS性能调试笔记（一）]]></title><link>https://blog.csdn.net/winux/article/details/136924442</link><guid>https://blog.csdn.net/winux/article/details/136924442</guid><author>winux</author><pubDate>Sun, 31 Mar 2024 20:59:08 +0800</pubDate><description><![CDATA[ViveNAS是一个开源的NAS文件服务软件，有一套独立自创的架构。基于PureFlahs, rocksdb， ganesha。
本文是开发过程的性能调试与分析记录，方便开发者了解项目的状态，以及调试思路。]]></description><category></category></item><item><title><![CDATA[PureFlash v1.9.1特性介绍]]></title><link>https://blog.csdn.net/winux/article/details/136269939</link><guid>https://blog.csdn.net/winux/article/details/136269939</guid><author>winux</author><pubDate>Mon, 26 Feb 2024 23:09:04 +0800</pubDate><description><![CDATA[开源分布式存储系统PureFlash v1.9.1版本特性介绍]]></description><category></category></item><item><title><![CDATA[PureFlash云原生存储部署方法]]></title><link>https://blog.csdn.net/winux/article/details/134024023</link><guid>https://blog.csdn.net/winux/article/details/134024023</guid><author>winux</author><pubDate>Tue, 24 Oct 2023 23:08:30 +0800</pubDate><description><![CDATA[介绍在K8S环境中部署PureFlash云原生存储的方法步骤。PureFlash是一个开源的云存储系统，能提供超过100万IOPS每节点的高性能。]]></description><category></category></item><item><title><![CDATA[CXL内存池化应用模型]]></title><link>https://blog.csdn.net/winux/article/details/132385902</link><guid>https://blog.csdn.net/winux/article/details/132385902</guid><author>winux</author><pubDate>Sat, 19 Aug 2023 23:46:35 +0800</pubDate><description><![CDATA[CXL互连技术这两年比较火热，是自从NAND SSD发明以来计算机硬件技术最大的变革。但是CXL的技术落地恐怕要比SSD艰难的多。前者只是一个部件的代替，后者需要大量架构的适配。本文罗列了一些我自己的思考点，也有一些业界的状态汇总。]]></description><category></category></item><item><title><![CDATA[使用qemu模拟CXL.mem设备]]></title><link>https://blog.csdn.net/winux/article/details/130897351</link><guid>https://blog.csdn.net/winux/article/details/130897351</guid><author>winux</author><pubDate>Sat, 27 May 2023 10:23:13 +0800</pubDate><description><![CDATA[CXL可以说是自PCIe技术诞生几十年以来最具变革性的新技术了。可以想象有了CXL以后机箱的边界将被彻底打破，服务器互相使用对方的内存，网卡，GPU。整个机架甚至跨机架的超级资源池化成为可能，云计算也将进入一个新的时代。当前Intel, AMD 目前最新CPU型号也都已经支持CXL接口，三星也有支持CXL的内存模组提供，但是普及性还是非常低，可能只有极个别的研究人员才能拿到真正的物理设备。作为不那么有实力的普通IT从业者如何才能体验这一最前沿的科技成果呢？使用模拟器便是最方便的选择。]]></description><category></category></item><item><title><![CDATA[ViveNAS - 一个基于LSM tree的文件存储实现 （一）]]></title><link>https://blog.csdn.net/winux/article/details/130415715</link><guid>https://blog.csdn.net/winux/article/details/130415715</guid><author>winux</author><pubDate>Mon, 01 May 2023 17:29:57 +0800</pubDate><description><![CDATA[正如libvivefs在图中的位置，他的下层是LSM tree, 在当前的实现里面我直接选用了rocksdb。区别与以hash算法为基础的分布式系统，PureFlash的数据分布是完全人为可控的，这提供了企业存储在运行时所需的稳定能力，因为数据分布的掌控权最终在“人”而不在“机器”。PureFlash是一个分布式的ServerSAN存储系统，他的核心思想继承自NetBRIC S5，一个以全FPGA硬件实现的全闪存储系统，因此PureFlash拥有一个极度简单的IO栈，最小的IO开销。]]></description><category></category></item><item><title><![CDATA[用qemu + gdb调试linux内核]]></title><link>https://blog.csdn.net/winux/article/details/127975039</link><guid>https://blog.csdn.net/winux/article/details/127975039</guid><author>winux</author><pubDate>Tue, 22 Nov 2022 00:04:21 +0800</pubDate><description><![CDATA[使用gdb跟踪调试linux内核的技巧与方法]]></description><category></category></item><item><title><![CDATA[RDMA编程-2 client端流程]]></title><link>https://blog.csdn.net/winux/article/details/51777752</link><guid>https://blog.csdn.net/winux/article/details/51777752</guid><author>winux</author><pubDate>Tue, 11 Oct 2022 23:04:52 +0800</pubDate><description><![CDATA[RDMA编程client端流程与实例

RDMA编程时的client端和socket编程也是大体类似的，只是有一些跟设备相关的细节，包括地址解析，queue pair, memory region 等要自己显式处理。 
rdma_getaddrinfo 
retrieve address information of the destination 
rdma_create_event_channel 
creat]]></description><category></category></item><item><title><![CDATA[利用RocksDB 的plugin机制对接ServerSAN]]></title><link>https://blog.csdn.net/winux/article/details/123122856</link><guid>https://blog.csdn.net/winux/article/details/123122856</guid><author>winux</author><pubDate>Mon, 07 Mar 2022 23:26:59 +0800</pubDate><description><![CDATA[本文示例了一个rocksdb plugin的开发，包括编码过程与编译方法。
本文示例的了rocksdb跳过文件系统与ServerSAN进行直接对接的方法。]]></description><category></category></item><item><title><![CDATA[io_uring异步IO框架介绍与示例]]></title><link>https://blog.csdn.net/winux/article/details/117590294</link><guid>https://blog.csdn.net/winux/article/details/117590294</guid><author>winux</author><pubDate>Sun, 20 Jun 2021 23:29:22 +0800</pubDate><description><![CDATA[https://blogs.oracle.com/linux/an-introduction-to-the-io_uring-asynchronous-io-framework
]]></description><category></category></item><item><title><![CDATA[ServerSAN前端接口设计]]></title><link>https://blog.csdn.net/winux/article/details/117094109</link><guid>https://blog.csdn.net/winux/article/details/117094109</guid><author>winux</author><pubDate>Sat, 05 Jun 2021 09:51:36 +0800</pubDate><description><![CDATA[前端接口从大的概念分可以分为标准接口和私有接口。
标准接口也就是业界广为接受，并且被内置在操作系统里的接口。对于SAN存储也就是SCSI/iSCSI, 以及未来可能出现的NVMe over Fabric(NoF)

]]></description><category></category></item><item><title><![CDATA[PureFlash存储系统介绍与上手指南]]></title><link>https://blog.csdn.net/winux/article/details/114436250</link><guid>https://blog.csdn.net/winux/article/details/114436250</guid><author>winux</author><pubDate>Sat, 06 Mar 2021 21:05:10 +0800</pubDate><description><![CDATA[PureFlash是一个开源的分布式存储系统，项目起始于2016年。本文介绍将介绍PureFlash系统的主要特点，以及基于容器的快速上手体验。

PureFlash的开源项目位置：https://github.com/cocalele/PureFlash

一、PureFlash整体介绍

PureFlash是一个开源的ServeSAN实现，也就是通过大量的通用服务器，加上PureFlash的软件系统，构造出一套能满足企业各种业务需求的分布式SAN存储。

PureFlash是为全闪存时代而设计的存储系.]]></description><category></category></item><item><title><![CDATA[ServerSAN的数据一致性设计]]></title><link>https://blog.csdn.net/winux/article/details/113764140</link><guid>https://blog.csdn.net/winux/article/details/113764140</guid><author>winux</author><pubDate>Wed, 24 Feb 2021 23:44:38 +0800</pubDate><description><![CDATA[这一篇我们来谈一下ServerSAN的数据一致性。
就一致性这个概念而言，从工程可理解的角度可以分为三个类型，严格一致性，强一致性，弱一致性。
**严格一致性：**对于数据项x的任何读操作将返回最近一次对x进行的写操作的结果所对应的值。
严格一致性中存在的问题是它依赖于绝对的全局时间。对于所有的进程来说，所有写操作都是瞬间可见的，系统维持着一个绝对的全局时间顺序。举个例子来说，住在新疆的阿凡提给北京的康熙火车托运箱葡萄干，立刻又给康熙打了个电话说：‘我给你托运了箱葡萄干，快去接站’。康熙马上到火车站一看真就]]></description><category></category></item><item><title><![CDATA[ServerSAN系统元数据管理设计]]></title><link>https://blog.csdn.net/winux/article/details/113408049</link><guid>https://blog.csdn.net/winux/article/details/113408049</guid><author>winux</author><pubDate>Sat, 06 Feb 2021 19:55:19 +0800</pubDate><description><![CDATA[本文首先就ServerSAN系统的元数据管理做一般的探讨，然后重点以PureFlash为例说明元数据管理的实践。

元数据，也就是数据的说明书。当一块硬盘插到电脑上，电脑就看到一个块设备，这个块设备从LBA 0开始到LBA N，顺序编址，无比平滑。然而我们知道在物理上HDD实际是按Cylinder(柱面），Header(磁头), Sector(扇区），SSD则可能更复杂，哪个Chip, 哪个die, 哪个Block, 哪个Page。记录这些物理规格信息(CHS)以及逻辑信息与之的对应关系就是元数据。

对于]]></description><category></category></item><item><title><![CDATA[分布式存储系统设计的若干问题（三）]]></title><link>https://blog.csdn.net/winux/article/details/108353030</link><guid>https://blog.csdn.net/winux/article/details/108353030</guid><author>winux</author><pubDate>Fri, 08 Jan 2021 23:08:19 +0800</pubDate><description><![CDATA[问题9：网络连接
问题10： 线程模型
问题11： multipath与failover，load balance
问题12：内部探针
其他功能：audit, log

]]></description><category></category></item><item><title><![CDATA[分布式存储系统设计的若干问题（二）]]></title><link>https://blog.csdn.net/winux/article/details/108249863</link><guid>https://blog.csdn.net/winux/article/details/108249863</guid><author>winux</author><pubDate>Tue, 01 Sep 2020 23:34:00 +0800</pubDate><description><![CDATA[问题5：快照实现方案
一个现代的存储系统，快照已经成为了必选项。快照除了直接用于保存系统的中间状态（比如VM的中间状态），还是其他功能包括克隆，备份，容灾功能的基础。
快照就是的功能就是给存储拍一个照片，记住某个时刻的数据内容以备随时提取和回退。后面无论对数据再做读写操作，快照的内容总是保持不变。从这个原理上讲，如果在用户发出做快照命令时，迅速把某个volume的数据复制一份，这就是做了快照了，这个基本的做法就是SNIA定义的Split mirror。然而一个存储系统的实现往往不能采取这么简单粗暴的方法，一]]></description><category></category></item><item><title><![CDATA[分布式存储系统设计的若干问题（一）]]></title><link>https://blog.csdn.net/winux/article/details/107723406</link><guid>https://blog.csdn.net/winux/article/details/107723406</guid><author>winux</author><pubDate>Tue, 25 Aug 2020 00:44:13 +0800</pubDate><description><![CDATA[本文要讨论的分布式存储系统是指狭义存储系统，即提供块存储，文件存储和对象存储的分布式系统。进一步对分布式的限定，我们这里讨论的是部署在同一个机房内的，由商用服务器构成的分布式存储系统。跨机房，跨地域的分布式系统暂不讨论。作为第一篇，我们先罗列定义问题，并说明这些问题对整个系统的意义。每个问题都有不同的答案并各有优缺点，本篇并不讨论具体的优缺点以及该如何进行选择。
问题1： 集中式元数据管理vs分布式元数据
集中式元数据管理的典型例子就是HDFS的NameServer，所有数据在集群中的分布信息集中在Name]]></description><category></category></item><item><title><![CDATA[C++ 异常使用须知]]></title><link>https://blog.csdn.net/winux/article/details/101983588</link><guid>https://blog.csdn.net/winux/article/details/101983588</guid><author>winux</author><pubDate>Thu, 07 Nov 2019 00:22:14 +0800</pubDate><description><![CDATA[本文翻译自 https://dzone.com/articles/some-useful-facts-to-know-when-using-c-exceptions

]]></description><category></category></item><item><title><![CDATA[Ragel学习笔记(一)]]></title><link>https://blog.csdn.net/winux/article/details/89060850</link><guid>https://blog.csdn.net/winux/article/details/89060850</guid><author>winux</author><pubDate>Sat, 06 Apr 2019 22:13:03 +0800</pubDate><description><![CDATA[Ragel是一个状态机编译器，类似Lex, 主要是用来处理字符输入，用于语法解析。简单的文本处理工作一般用正则表达式，或者用awk/sed这些工具就可以处理。之所以用Ragel是为了这样的场景，你的代码的核心任务是解析文本，而且需要高效的处理，比如一个SMTP引擎, HTTP引擎。那么Ragel可以按你定义好的语法，生成一个状态机嵌入到你的代码中。因为这个状态机是专门针对你预定义的语法，且以你的原...]]></description><category></category></item></channel></rss>