-
xv6 Lab0: Prepare for the Lab
再开始 lab 之前,我们先进行环境配置。 配置环境看 xv6 网站上的教程,安装依赖软件包https://pdos.csail.mit.edu/6.828/2023/tools.html 使用 Debina/Ubuntu 系统, apt... -
Intel & AMD 指令集之间的差异
促进我写这篇文章的起因是,线上机器会使用基于 SPDK 的云盘存储方案,需要编译一个 RPM 包。这个包在 Intel 机器是运行正常的,在 AMD 的机器上无法运行报不支持 AVX512 指令。 这个问题很常见,是指令集不兼容造成的。AMD 虽然是... -
使用 ebpf USDT 追踪用户态程序
USDT 是一种探针技术,让用户态程序也支持使用 perf/ebpf 性能分析工具进行 tracing/profiling。做性能分析通常听过 perf/ebpf 这些工具,这些工具通常用在内核上,用于分析内核的一些性能... -
查询 Intel 处理器安全漏洞
Intel 处理器安全漏洞表https://www.intel.com/content/www/us/en/developer/topic-technology/software-security-guidance/processors-affect... -
Reboot 命令实际是 systemctl?
背景在一次查问题的过程中,偶然发现 reboot 命令是直接链接到 systemctl 的(划重点:直接链接到),看下面的演示, # which reboot/sbin/reboot# file /sbin/reboot/sbin/reboot: s... -
CMU 15-445 Fall 2022 Project1: Buffer Pool
这个项目是实现 bpm,简而言之是实现一个磁盘缓冲区,用于加速数据库应用的 IO 操作。 背景众所周知,磁盘(SSD/HDD)的访问速度是很慢的,内存 DRAM 访问相比较很快了。我们希望为磁盘经常访问的数据在内存建立对应的缓存来加速数据库... -
CMU 15-445 Fall 2022 Project0: C++ Primer
这个项目是使用 Modern C++ 17 实现一个 字典树(Trie)项目难点在于理解项目里如何使用 TrieNode 和 TrieTerminalNode 来组合实现一个 Trie Tree。另外一个难点是对 unique_ptr 的理解。理解 ... -
PARSEC 3.0 编译报错
PARSEC 3.0(Parallel Applications Research for System Efficiency Collectio)是一个基准测试套件,用于评估多核处理器和系统的性能,也就是跑分软件。 工作中需要使用到这个软件作为基准... -
PMEM 扩展系统内存用法介绍
在介绍 pmem 的几种用法之前,我们先来介绍 pmem 的几种模式,因为后面介绍的用法与 pmem 的这几种模式是分不开的。 PMEM 的三种模式1、Memory Modepmem 配置为内存模式时,pmem 作为系统内存(system ram),... -
Run Your Own OBS 编译系统
OBS(Open Build Service)是一个由 SUSE 开源的操作系统发行版的构建系统,可以用来创建和分发软件包。OBS支持几乎所有的主流发行版的包,比如说 SUSE系,RedHat系,Debian系,Arch系等等。 下载安装 OBS 最...