Lab3 是体验和操作 Page Table。通过这个 Lab 终于能有机会对 Page Table 有了更深刻的理解。 一点感想,其实完成一个 Lab 需要看课、阅读 textbook、阅读 Xv6 代码、写实验代码、写笔记,总共五大步骤,写实验代码所用的时间反而占比不多,只能说写代码是整个 Lab 过程中最快乐、成就感最强的阶段吧。 Xv6 地…
Lab2 是学习和实现 syscall。 LEC 2 拾遗 网上流传的视频都没有 LEC 2,我看了下 slides,LEC 2 主要是关于 C 语言的基础芝士。其中有一个比较有意思的内容:The Ksplice Pointer Challenge 指针挑战。 #include <stdio.h> int main() { int x[…
MIT 6.1810: Operating System Engineering 是麻省理工学院大名鼎鼎的 PDOS 实验室开设的面向MIT本科生的操作系统课程。开设这门课的教授之一 —— Robert Morris 教授曾是一位顶尖黑客,世界上第一个蠕虫病毒 Morris 就是出自他之手。 这门课的前身是 MIT 著名的课程 6.828,MIT …
Intel 第四代至强处理器 Sapphire Rapids (SPR) 支持 支持包括 enqcmd(s)、AMX 系列指令等。 支持 DSA (Data Streaming Accelerator)、IAA (Intel Analytic Accelerator)、QAT (QuickAssist Technology,OOT 支持)、DLB …
摘要和引入 数据中心工作负载推动的不断增长的内存需求是新内存技术创新(例如 NVM、CXL),Tiered meory 是一种很有前景的解决方案,它利用具有不同容量、延迟和成本特征的多种内存类型,努力降低服务器硬件成本,同时满足内存需求。 MEMTIS 和 TPP 类似,也是一种分层内存系统,采用“智慧”地决策来进行 page placement …
MEMTIS 配置 Kernel 编译配置 编译 MEMTIS kernel 需要打开在 .config 中启用 CONFIG_HTMM=y,即 Enable hugepage-aware tiered memory management。 ... CONFIG_HTMM=y ... Linux 的 Transparent Huge Pages(T…
第 14 届蓝桥杯 Python 开发环境:Python 3.8.6、IDLE(Python 自带编辑器) Miniconda 环境配置 Miniconda安装及使用--小白上路 Installing on Linux conda-forge 是一个流行且广泛使用的 community-driven channel,它包含了大量的包。 安装好 mi…
由于安装 ROS 确实很 easy,官方文档已经是保姆级的教程了,这里不在赘述。本文的实验环境是 Ubuntu 20.04 + ROS Noetic Ninjemys。 运行第一个 ROS 包 sudo apt install ros-noetic-rqt-robot-steering sudo apt install ros-noetic-tur…
Pond 背景与动机 许多公共云客户以虚拟机 (VM) 的形式部署工作负载,获得虚拟化计算的性能接近专用云的性能。这给公共云提供商带来了一个重大挑战:以具有竞争力的硬件成本为 opaque VMs(即提供商不知道也不应该检查虚拟机内运行的内容)实现卓越的性能。 与此同时,DRAM 已成为硬件成本的主要部分,甚至可以占到服务器成本的 50%。 通过对…
DeTox 初体验 这里简要记录下尝试 run detox 这个项目的艰辛历程。 (Redis 和 PostgreSQL 的配置由于没有太多能遇到的问题,这里就省略了,不过还是说一句,DeTox 的 redis 使用 jemalloc 库编译无法通过,只能使用 libc 的 malloc,而我试了下官方的 redis 库是没有这个问题的) Redi…