年度归档: 2023 年

30 篇文章

关于事务缓存论文(TraChe)的延伸阅读与实验
DeTox 初体验 这里简要记录下尝试 run detox 这个项目的艰辛历程。 (Redis 和 PostgreSQL 的配置由于没有太多能遇到的问题,这里就省略了,不过还是说一句,DeTox 的 redis 使用 jemalloc 库编译无法通过,只能使用 libc 的 malloc,而我试了下官方的 redis 库是没有这个问题的) Redi…
[OSDI’23] Take Out the TraChe Maximizing (Tra)nsactional Ca(che) Hit Rate
引入 由于不同层次存储设备访问速度的巨大差异,缓存(cache)在现代计算机系统结构起着至关重要的作用。缓存不仅仅指 CPU 的高速缓存,寄存器可以看作高速缓存的缓存,内存可以看作硬盘的缓存。在本文中,我们将讨论数据库系统的缓存策略,以 PostgreSQL 作为主数据库,Redis 作为 PostgreSQL 的缓存,还有一个中间层 DeTox …
CUDA 入门教程
Hello, cuda! CMake 中启用 CUDA 支持 最新版的 CMake(3.18 以上),只需在 LANGUAGES 后面加上 CUDA 即可启用。 然后在 add_executable 里直接加你的 .cu 文件,和 .cpp 一样。 project(hellocuda LANGUAGES CXX CUDA) CUDA 编译器兼容 C…
嵌入式工作室一轮 C 语言基础
C 语言是嵌入式开发的基础,也是 CS 学习的根基,通过学习 C 语言将帮助我们更好地深入理解计算机系统。嵌入式工作室一轮 C 语言基础将从零基础开始,通过开放探究式的题目,带领大家快速入门 C 语言,并具备一定独立编写 C 程序的能力。 在开始完成题目之前,请先阅读附录了解做题要求。点此获得更好的阅读体验和最新题目更新。 工欲善其事,必先利其器 …
WordPress 图片迁移小记
自 7 月开始使用自建图床 EasyImage2.0,速度还算可以,试运行一个多月稳定无异常。因此决定把原来腾讯云 COS 对象存储的图片全部迁移到自建图床。 网页上无法直接下载文件夹,因此只能通过 COSBrowser 工具将云上数据下载备份至本地。 将图片文件夹打包压缩,上传到服务器, scp ./COS.zip root@blog.lrl52…
CS144 Lab:Lab7
最简单的 “Lab” 🌟个人仓库传送门(包含所有完整初始代码🌟 Lab 7 Lab 7 什么代码都不需要写。Just putting it all together ! 这个 Lab 将之前 7 个实验里所有实现的内容全部整合在一起,并完成一些测试,与真实网络进行通信。 下面是我们实现的最终网络技术栈的结构图, 测试 对话通信 上图中你可能会注意到…
CS144 Lab:Lab6
这个 Lab6 就更 easy 啦 Lab6 介绍 在这个实验中,我们将完成一个简易路由器,其功能是:对于给定的数据包,确认发送接口以及下一跳的 IP 地址。为了简化实验难度,该实验中无需处理任何复杂路由协议,实验代码推荐只需 25-30 行。 这个 Lab 不需要依赖之前 Lab0-4 实现的 TCP 协议,只需要实现两个接口。 添加一条路由规则…
CS144 Lab:Lab5
这个 Lab 相比前面的 Lab4 就要简单很多啦 Lab5 介绍 Lab5 的任务是实现网络接口 Network Interface(也被称为适配器),具体来说,就是实现 ARP 协议。 下面是官方的解释图,一张图概况了 7 个 Lab 的是做了什么工作。这个 Network Interface 就是用于负责网络层和数据链路层之间的数据交换。 T…
CS144 Lab:Lab4
因为旅游、配环境问题等原因这个 Lab4 拖得有点久,现在终于完成了,虽然性能还不是最优。 Lab4 介绍 TCPConnection 需要将 TCPSender 和 TCPReceiver 结合,实现成一个 TCP 终端,同时收发数据。 据说这应该是整个 Project 中最难的 Lab 了,完成这个 Lab 后将完整实现 TCP 协议。文档表示…
CS144 Lab:Lab3
磨了 3 天才搞完,第 4 天才来得及写文档 😭 Lab3 介绍 本次实验是完成 TCPSender 部分,我也把文档来回读了好几遍才弄懂各个细节 TCPSender 负责将数据以 TCP 报文的形式发送,其需要完成的功能有: 将 ByteStream 中的数据以 TCP 报文形式持续发送给接收者。 处理 TCPReceiver 传入的 ackno…