for循环 迭代一个数组 rust的for循环实际上是被编译器扩展成了对方法的调用。对于使用for循环来迭代一 …
简单实现posix中规定的memcmp函数
简介 memcmp函数的功能非常简单,传入两个指针s1和s2,以及要比较的字节大小n,比较这两块内存的值的差异 …
linux调整网卡跃点数
在多网卡分别连接内外网的时候,需要调整网卡的跃点数。 我们可以通过ifmetric这个工具来调整。 首先安装i …
高效的无锁引用计数结构:lockref
lockref lockref是将自旋锁与引用计数变量融合在连续、对齐的8字节内的一种技术。 lockre …
C语言实现编译期断言
编译期断言是一种对编译期能计算出来的常量的值进行断言,从而避免代码中引入一些不合理的值。 实现原理 编译期断言 …
DragonOS中的READ_ONCE()宏和WRITE_ONCE()宏
DragonOS中实现了与Linux相似的READ_ONCE()宏以及WRITE_ONCE()宏,主要目的在于 …
GCC禁用对某个类型的变量的“基于类型别名的分析”——may_alias
在写C/C++代码的时候,如果我们写以下代码: 那么,在编译的时候,GCC会抛出警告信息,提示我们这里的存在“ …