PAC2023娱乐赛

7.6 举办了 PAC2023 的开幕赛,以轻松娱乐为主,我还没有体验过在短时间内完成优化工作(不过今天的工作量倒也不大)。这场娱乐赛给了我别样的体验,也让我发现...

2023 Jul 06 · 4 min · vaaandark

数据库复习之关系代数

关系代数 关系代数(数据库) 计算机科学家 Codd 对关系代数的形成作出了很大的贡献,他的代数的六个原始运算是「选择」、「投影」、「笛卡尔积」、「并集」...

2023 Jun 19 · 2 min · vaaandark

CPU 流水线

流水线级 一条流水线的每个分步骤被称为流水线级。它们被流水线寄存器分开。下文中没有说明是流水线寄存器的都是普通 CPU 寄存器。 现代计算机流水线级数已...

2023 Apr 22 · 5 min · vaaandark

CS246 Finding Similar Items: Locality Sensitive Hashing

最近在上大数据分析的课程,老师使用的是斯坦福大学的教材和 PPT ,感觉挺有趣的,记录一下其中的一些算法。 背景 很多问题可以被归化为寻找相似集合的问题...

2023 Mar 15 · 5 min · vaaandark

MIT6.S081 Lab: Xv6 and Unix Utilities

这是 MIT6.S081 的第一个 Lab ,目的是为了让学生熟悉 Xv6 和 Unix 的一些实用程序,例如 sleep find xargs 等。 sleep 这一关是实现 sleep 命令。由于在 user/user.h 目录中给出来了可以直接由 C 语言调用的...

2023 Mar 02 · 3 min · vaaandark

Awesome WM 基于迭代器的小组件

由于 i3wm 支持的功能有限,定制性并没有那么强大,最近换成使用 Awesome WM 了,它使用 Lua 作为配置语言,所以可配置性极强。举个例子,i3wm 配置无法像真正的编...

2023 Feb 25 · 2 min · vaaandark

Btrfs 为什么是神?

最近发现 Windows 这几个月开机不超过 10 次,寻思着将 Windows 中的空间挪一点到 Linux 中来。说干就干,在 Windows 里面划出来了 80 GB 的空间。 遗憾地,这 80 GB 空间物理上在我需要扩...

2023 Feb 25 · 1 min · vaaandark

Rust 自引用结构

今天和朋友交流的时候遇到了自引用问题,之前就在看 Rust Bible 的时候看到过,但是一直没用 Rust 写过什么数据结构,所以没有使用这个的机会,所以今天就来尝试一...

2023 Feb 23 · 1 min · vaaandark

MIT6.S081 实验环境配置

最近开始学习操作系统的相关知识,选择学 MIT6.S081 的课程。 首先在 课程官方网站 上拉取仓库配置环境。 $ git clone git://g.csail.mit.edu/xv6-labs-2020 $ cd xv6-labs-2020 $ git checkout util $ make qemu make 时发现有报错: user/sh.c: In function ‘r...

2023 Feb 21 · 1 min · vaaandark

Lua 打印 Table

之前在 Lua 代码的编写中写过一些打印表的函数用于调试,这次在看 z.lua 的实现中看到了非常完美的打印表的方法,于是在将代码改得更规范后记录一下: 使用 luacheck 检...

2023 Feb 11 · 1 min · vaaandark