touchfish 18
Linux kernel中有哪些奇技淫巧? Ftrace, perf, and the tracing ABI Static Keys Jump label
Linux kernel中有哪些奇技淫巧? Ftrace, perf, and the tracing ABI Static Keys Jump label
leveldb file io env.h中抽象出了一些文件io的接口,针对这些抽象的接口,同时也抽象出了文件的抽象类,比如 SequentialFile RandomAccessFile WritableFile SequentialFile文件io接口 重要的接口就2个 // Read up to "n" bytes from the file. "scrat...
一文讲清多线程和多线程同步 cpu cache slides 链接、装载与库 — 动态链接 这一坨写的都挺不错的链接装载与库 The LD_DEBUG environment variable 轻踩一下就崩溃吗——踩内存案例分析 实战总结|抽丝剥茧,记一次神奇的崩溃 When __cxa_pure_virtual is ju...
简单看下cross compile要做哪些东西,从一个gn的例子开始。 config("compiler_cpu_abi") { cflags = [] cflags_c = [] cflags_cc = [] ldflags = [] defines = [] if (is_linux) { # CPU architecture. We may or m...
在leveldb里发现了一段代码 // Wraps an instance whose destructor is never called. // // This is intended for use with function-level static variables. template <typename InstanceType> class NoDestruct...
看了下业界的eventloop实现,大多数的思路都是one thread per loop,然后在fd增加之类的,大多数都是在回调事件里,会跟wait同时进行 比较骚的是,我看大家打断epoll_wait都用的是event fd read来触发 我在想这个是不是在某些场景下其实会影响并发的性能。。。 我浅看了一下muduo的实现是这样的,但workflow的实现看起来又是另外一套。 ...
1 muduo 同步日志的话,在一些文件写入很慢的设备上,可能导致出现一些性能问题,你也可能常见到这种同步日志突然出现日志丢了10s多的情况。所以现代的日志库一般都支持async logging的方式 可能业界很多log都用的spdlog,但是muduo的实现确实非常的简单,而且也是支持异步的,基本可以看作是一个工程化能用的最简单logging。这玩意只支持写文件,不像spd那样有很多的...
1 route table 默认下,输入route print可以查看当前系统的路由表,如下: =========================================================================== 接口列表 9...[] ......Realtek PCIe GbE Family Controller 20...[] ......I...
一些gcc/clang内置的__builtin函数, 大部分clang也有 1. __builtin 1. __builtin_expect 允许将最有可能执行的分支告诉编译器 #define likely(x) __builtin_expect(!!(x), 1) #define unlikely(x) __builtin_expect(!!(x), 0) if e...
libvirt简介 std::make_move_iterator 针对一个容器想move特定的部分,不拷贝,这个就比较好用。或者你想从一个vector转到一个unordered_set, 这个也可以。比较骚的是里面还是会留一个空对象,记得清空 Linux 内核的 ftrace 机制 kernel new bies ...