创建一个简单的内核模块
创建一个简单的内核模块 内核模块文件: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include <linux/module.h> #include <linux/init.h> static int __init my_test_init(void) { printk(KERN_EMERG "my first kernel module init\n"); return 0; } static void __exit my_test_exit(void) { printk("goodbye\n"); } module_init(my_test_init); module_exit(my_test_exit); MODULE_LICENSE("GPL"); MODULE_AUTHOR("rlk"); MODULE_DESCRIPTION("my test...
搭建 Linux Kernel 开发环境
第一步先进行源码拉取,这里使用的是一个特别版本:https://github.com/runninglinuxkernel/runningl...
[论文笔记] Ac-Key: Adaptive Caching for LSM-based Key-Value Stores
LSM Tree 是一种对写友好但是对读不友好的数据库。LSM Tree 在查找一个 key-value 的时候需要先在 memtable 中查找,然后是各个层级的 SST 中去查找,所以查找一个 key-value 的时候需要多...
[论文笔记]Arc: A Self-Tuning, Low Overhead Replacement Cache
Arc 是一种 LRU 改进算法,在很多负载环境中性能优于常用的 LRU 算法。 基本思想 我们需要先了解一下什么是 recency,什么是 frequency。rece...
Leveldb 源码解析—— Arena 内存池
内存池的主要作用是减少 malloc 和 new 的次数,因为每次内存分配都需要经过系统调用,这种开销是十分巨大的,所以通过内存池可以减少这种开销。 Leveldb 的内存池代码...
Quickstart
Install 1 brew install hugo docs Download Theme 1 git clone https://github.com/adityatelange/hugo-PaperMod themes/PaperMod --depth=1 wiki