自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

猫科龙

在职操作系统工程师,聚焦存储及内存。爱分享,爱写作。

  • 博客(18)
  • 收藏
  • 关注

原创 /PROC/[PID]各目录项的UID、GID是怎么来的

伪文件系统/proc/[pid]为调试提供了很多有用信息,那么该目录下各文件的UID和GID是怎么来的呢?本文即旨于揭开该问题。

2022-05-22 11:29:09 921

原创 【C语言进阶】结构体与联合

C语言是一门很简单的语言,但是并没有多少人敢说自己完全懂这个语言。今天,我们来仔细了解一下结构体和联合,看看它是否还是那个为我们所熟知的语言。

2021-03-21 04:35:12 702 2

原创 Linux 内存管理:DAX(Direct Access)机制的作用及实现原理

随着持久内存逐步走向商用,DAX这个概念的出现频率日益增加。那么DAX究竟起到什么作用,其背后的原理又是什么?本文将率先对其进行揭晓。

2020-07-08 02:41:10 11879 3

原创 「VS Code」如何通过跳板机连接服务器进行远程开发:Remote-SSH 篇

通过 Visual Studio Code 的 Remote Development 插件,用户可以 ssh 到服务器中,直接开发服务器上的项目。但在使用过程中,打通跳板机是一个难题。本文将针对上述需求提供一个完整的解决方案。

2019-06-13 10:16:16 35086 19

原创 「VS Code」Visual Studio Code 菜鸟教程:从入门到精通

Visual Studio Code,或简称为 VSCode,是我最喜欢的代码编辑器,我希望能有更多人享受到 VSCode 的便捷与强大。然而已存教程不足以成为我们了解 VSCode 的窗口,很多具有广泛使用场景的功能,比如命令窗口和终端,这些教程都没有涉猎。该种情况促成了本文的诞生。本文希望,哪怕是从未使用过 VSCode 的读者,也能在阅读本文后便精通使用 VSCode。

2019-03-25 20:42:37 176215 22

原创 Debug GEM5 Source Using Eclipse: A Quick Tutorial

本文介绍了如何使用 Eclipse 调试 GEM5 代码。

2018-12-29 09:10:35 1145

原创 TMUX Cheat Table:和那些妖艳贱货不一样的 TMUX 教程

一个分类列出最常用的指令 / 快捷键的简洁 TMUX 教程。

2018-09-12 19:40:45 717 4

原创 [非易失内存编程] 通过编译器内置函数 (Intrinsic Functions) 发射 CLFLUSH、CLFLUSHOPT、CLWB、NTSTORE、MFENCE、SFENCE 等指令

介绍了 CLFLUSH、CLFLUSHOPT、CLWB、NTSTORE 等持久化指令,并提供了通过编译器内置函数 (Intrinsic Functions) 发射这些指令的方法。

2018-08-02 16:34:32 6734 2

原创 内存模型系列(下)- 内存持久性模型(Memory Persistency)

本文主要深入浅出地介绍了用于约束内存持久化指令完成顺序的内存持久性模型(Memory Persistency)。该模型面向未来的持久内存系统,其核心主张为:通过扩展内存一致性模型,1) 帮助架构师挖掘持久化指令的指令级并行度,2) 帮助编程者推理崩溃一致性。

2018-07-25 11:26:28 4051

原创 内存模型系列(上)- 内存一致性模型(Memory Consistency)

本文为内存模型系列上篇,主要深入浅出地介绍了用于描述访存顺序及访存原子性的一致性模型。本文主要面对对象为刚接触并发编程的编程者,为了方便读者理解,本文将尽量采用偏口语的文风,并尽量避免有关硬件实现的部分。

2018-06-19 01:32:00 11074 13

原创 Intel PinTools 安装使用教程

Intel Pin 是一个强大的二进制插桩工具平台,其上运行 pintools。用户通过在 pin 上运行 pintool,能以 ISA、代码块、函数等多种粒度插桩应用。本文将围绕着一个例子,介绍如何自定义 pintool,如何理解 pintool 的生命周期及如何使用 pintool。

2018-01-04 18:58:34 11825 19

翻译 Intel® Xeon® Scalable Processors(前称 Skylake-SP)技术概观

Intel 使用 tick-tock 模型迭代处理器,而本代 Intel® Xeon® Processor Scalable Family 就是基于 14nm 技术的 tock。

2017-11-22 15:16:10 10797 1

原创 内核模块编译:Shared Makefile 运行机理

Shared Makefile 是 Linux 内核模块开发中常用的方案,但为何为其引入这样的功能,也即自动编译当前目录下所有源代码,并生成一个以当前目录名为名的内核模块时,会屡遭挫折?本文即旨于记录探索其中的陷阱。

2017-11-01 22:19:48 1439

原创 Visual Studio 2017:Linux C++ 开发教程(WSL篇)

Visual Studio 2017 中引入了对 Linux 编程的支持,而 WSL 则是 windows 内置的 linux 子系统。那么当 vs 遇见 wsl 后会发生什么样奇妙的化学反应呢?

2017-03-21 21:33:48 22244 9

原创 [VS Code]跟我一起在Visual Studio Code 添加自定义snippet(代码段),附详细配置

snippet,也即代码片,指的是能够帮助输入重复代码模式,比如循环或条件语句,的模板。本文即旨于详实地介绍如何在 vscode 中设置 snippet。

2017-01-12 16:15:58 136873 53

翻译 一天该喝几杯水?

我查阅了一些有关水摄入量的研究,并了解它是如何影响身体和大脑的功能的,然后说明该如何轻松地了解自己的水摄入需求量。

2016-12-28 15:20:26 1221

原创 理解 glibc malloc:malloc() 与 free() 原理图解

本文分为三个等级自顶向下地分析了glibc中内存分配与回收的过程。本文不过度关注细节,因此只是分别从arena层次、bin层次、chunk层次进行图解,而不涉及有关指针的具体操作。前言Arena级分析main arena中的内存申请thread arena中的申请内存回收bin级分析内存回收内存分配chunk级分析前言在展开本文之前,先解释一下本文中会提到的三个重要概念:arena,

2016-07-23 20:18:49 11624 2

翻译 理解 glibc malloc:主流用户态内存分配器实现原理

本篇文章主要完成了对《Understanding glibc malloc》的翻译工作。限于本人翻译水平与专业技术水平(纯粹为了了解内存分配而翻),本文章必定会有很多不足之处,请大家见谅,也欢迎大家的指正! 联系邮箱:[email protected]

2016-07-21 23:39:14 21952 20

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除