femu使用记录 Briefly speaking, FEMU is a fast, accurate, scalable, and extensible NVMe SSD Emulator. Based upon QEMU/KVM, FEMU is exposed to Guest OS (Linux) as an NVMe block device (e.g. /dev/ 2023-05-09 学习记录
leveldb自定义env 由于项目需求,需要自定义LevelDB的env,也就是以块接口实现env中各个文件接口,在网上没找到类似的代码,就打算自己参照util/env_posix.cc实现一个简单的demo,等到功能实现差不多的时候,却发现leveldb有一个类似功能的代码helpers/memenv/memenv.cc,且各方面都写的比我好,故这篇博客主要记录实现过程中遇到的问题 2023-05-05 leveldb学习日记
spdk环境搭建 本来21年就写了这篇博客,但因为在博客中放了vmware的密钥,违规了,最近正好又要用到spdk,就重新搭建一下spdk,简单改一下博客再发一遍 运行环境VMware16+Ubuntu21.04Ubuntu下载地址:https://repo.huaweicloud.com/ubuntu-releases/安装后记得换源 源码拉取1234官网给出的命令如下git clone https://g 2023-04-16 zns ssd-femu-nvme-spdk-dpdk
博客重载记录 前言: 有时候看了一些比较好的文章,过几天就忘了,想想不如自己实现一遍博客代码或按博客结构自己写一遍,加深印象,但把别人的内容改个名字变成自己的博客,有点不太好,故全写在这个博客中,权当个人记录。 流控算法实现参考文章:流量控制-从原理到实现面试官:来,年轻人!请手撸5种常见限流算法! 计数器 123456789101112131415161718192021#include <b 2023-03-26 学习记录
面试代码记录 面试代码题可以刷一刷CodeTop 链表是否存在环给你一个链表的头节点 head ,判断链表中是否有环。 123456789101112131415161718#include <stdio.h>#include <stdbool.h>struct ListNode { int val; struct ListNode* next;};bool 2023-03-16 算法
linux UIO驱动实践 环境搭建Ubuntu20地址虚拟机安装与配置见博客开头:驱动虚拟环境搭建记录 一直以为用镜像直接安装的Ubuntu没有内核源码,不能用来编译驱动,只能由源码编译内核后切换内核才能进行驱动的编译,没想到一安装完就可以编译了,错误的印象。用hello world测试环境是否搭建成功 12345678910111213141516171819#include <linux/init.h 2023-03-07 踩坑日记
NVMe驱动注释(持续更新) 往期文章:NVMe驱动学习记录-1NVMe驱动学习记录-2NVMe驱动 请求路径学习记录 整合了之前文章的一些内容 参考源码地址:https://mirrors.tuna.tsinghua.edu.cn/kernel/v4.x/linux-4.19.90.tar.gz linux-4.19.90\drivers\nvme\host 源码阅读环境:Windows 搭建 openg 2023-03-06 学习记录
leetcode记录2 推荐博客五大常用算法:分治、动态规划、贪心、回溯和分支界定刷题时注意边界条件/特殊条件的处理leetcode记录1 树的子结构输入两棵二叉树A和B,判断B是不是A的子结构。(约定空树不是任意一个树的子结构) B是A的子结构, 即 A中有出现和B相同的结构和节点值。 思路: 由于是树相关的题目,故大致思路就是使用递归解决,也意识到需要借助辅助函数实现,但一直无法确定辅助函数的写法与用 2023-03-02 算法
leveldb第二幕 代码阅读笔记 仅做个人记录 简单的Write路径1 静态库与测试程序以Debug模式生成静态库 12345mkdir -p build_dbg && cd build_dbgcmake -DCMAKE_BUILD_TYPE=Debug .. && cmake --build .cp libleveldb.a libleveldb_dbg.amv libleveldb_d 2023-02-20 leveldb学习日记
《C++沉思录》读书笔记 序幕本书中多次强调,C++最基本的设计理念就是用类来表示概念,C++解决复杂性的基本原则是抽象,面向对象思想是C++的手段之一,而不是全部。本书并不是教C++语言本身,而是想告诉你用C++时怎样进行思考,以及如何思考问题并用C++表述解决方案。知识可以通过系统学习获得,智慧则不能。 什么事情是C++可以做好而C做不好的。例子:需求1:实现打印消息的功能C 12345678#include & 2023-02-04 学习记录