assert高级用法 assert高级用法
之前看到了一个assert的高级用法,在assert失败的时候可以输出错误信息。
2023-06-07 蒋璋
nvim配置 nvim配置
NeoVim配置起因是YCM的clangd无法支持c++20的协程,编写协程代码的时候一片红色,根本没办法用。所以时隔多年打算重新配置一下vim,也顺便了解一下vim具体的东西。 目标 插件管理 插件管理是别的功能的基础。插件管理需要作出
2023-05-11
文件系统 文件系统
简介文件系统是操作系统用来管理持久性数据的子系统。尽管现在有许多持久性的介质,包括SSD、NVMe、Flash、以及持久性内存(NVM),但是由于在文件系统的设计以及发展的历史中,主要是围绕磁盘进行设计的,所以我们下面讨论的时候,用磁盘来代
2023-04-11
GoogleTest GoogleTest
常见用法定义测试用例TEST宏创建一个测试用例,第一个参数是测试套件的名称,第二个参数是测试用例的名称。测试用例的名称必须是唯一的,否则会报错。EXPECT相关的宏用于检查测试用例的预期结果,如果预期结果和实际结果不一致,那么测试用例会失败
2023-04-11 蒋璋
字符设备获取可写的长度 字符设备获取可写的长度
C获取文件的长度在C中,如果要获取文件的长度,可以使用stat函数,如下所示: // #include <sys/stat.h> // #include <stdio.h&
2023-04-10 蒋璋
2022小结 2022小结
正经人谁写日记呀,你写日记吗,谁能把心里话写日记里,写出来的哪能叫心里话。该从哪里说起呢,还记得去年在实验室年会的时候,好像还是我第一次参加年会,回想起2021年的时候,差点忍不住哭了出来,感觉自己当时已经承受了许多。
2023-01-03 蒋璋
rust lower_bound以及upper_bound实现 rust lower_bound以及upper_bound实现
勘误一下,upper_bound的作用是找到第一个 > target的元素,而不是以前认为的小于或者等于target的最后一个元素。lower_bound和upper_bound是c++里的二分查找函数,lower_bound找的是集
2022-12-26 蒋璋
滑动窗口一题 滑动窗口一题
今天参加了一下leetcode周赛,遇到一题滑动窗口的,这里稍微记一点思路。题目的链接是https://leetcode.cn/problems/take-k-of-each-character-from-left-and-right/de
2022-12-25 蒋璋
Makefile生成compile_commands.json Makefile生成compile_commands.json
现在很多不少代码分析补全工具(类似clangd)需要用到compile_commands.json。如果是CMake项目可以很容易生成这个文件,不过大部分比较旧的项目是基于Makefile的,在生成这个文件的时候会比较麻烦。从stackov
2022-12-14 蒋璋
天池数据库大赛 天池数据库大赛
天池数据库比赛结束了,最终获得了初赛33名,复赛13名的成绩。这里记录一下比赛的感想,用作汇报和其它论文的准备。 首先是对NVM的总结首先是比赛的要求
2022-11-02 蒋璋
pwrite pwrite
通过pwrite是可以修改我文件中的部分内容而不用把文件全部读出来的。但是如果长度不一样的话则需要从修改的位置到文件末尾都重新写入。但是如果写入的长度和原来不一致的话,从修改的位置到文件的末尾肯定都是要修改的
2022-09-14 蒋璋
天池数据库初赛经验 天池数据库初赛经验
赛题分析实现一个只支持插入和查找的key-value store。服务器配置: 8核 32G DRAM 126G PMEM(实际约100G) 256G SSD(实际约220G)测试操作: 随机写入:50个线程并发随机写入,每个线程使用wr
2022-08-24 蒋璋
1 / 5