计算机启动过程 —— 以 Arch Linux 安装过程为例

前言 从大二上计算机组成原理的时候我就想写一篇这样的文章了,当时我调研了 x86 架构平台的计算机的启动过程,意识到很多人实际上并不是非常了解一台计算机从上电到进入桌面的全过程。 虽然网上有很多关于计算机启动过程的文章,结合了具体的系统,甚至制作了精美的动画,但是我觉得它们为了讲解的清晰,往往省略了实际执行的指令细节,导致理解启动原理和实际安装系统之间仍存在一定的距离。 因此,本文我将以 x86 架构为例,结合 Arch Linux 系统的安装过程来讲解计算机的启动过程。 背景 基本流程 虽然很多文章已经讲解过计算机的启动过程了,但是为了便于不了解计算机原理的读者理解,我还是想先介绍一些背景知识。 除了某些嵌入式(Embedded)系统以外,大多数计算机都采取类似的启动过程,如下图所示: 图 1 计算机启动过程 ...

March 31, 2026 · 7 min

如何在 Hugo 中使用 Typst 编写文章

前言 Typst 一直以来都是我非常喜欢的一个排版工具,相比于 LaTeX,Typst 的语法简单,编写体验好;相比于 Markdown,Typst 的功能强大,标准统一,符合我对排版工具的所有想象。 自从我接触到 Typst 之后,不仅我的日常的作业、报告、简历等文档都使用 Typst 写的,而且我也开发了一个 Typst Package 用于在 Typst 中绘制树状图,比如二叉树、红黑树、语法树等等 —— tdtr (i.e. tidy tree),感兴趣的话可以看看。 因此,我一直想在我的 Blog 中使用 Typst 来编写文章,但是苦于 Typst 对 HTML 导出的支持仍然处于实验性阶段,因此搭建 Blog 的想法也一直一拖再拖。 但是,直到最近,我对于搭建 Blog 的需求越来越迫切了,所以我就决定不再等待 Typst 对 HTML 导出的支持了,而是自己动手来实现这个功能。这篇文章讲述的就是我如何实现在 Hugo 中使用 Typst 编写文章的。 Blog 的源代码位于 github.com/Vertsineu/blog,欢迎 star 和 fork。 使用 如果你也想像我的 Blog 一样使用 Typst 来编写基于 Hugo 的 Blog 的话,可以按照以下步骤来操作: 首先安装我修改过的 Hugo,目前还没有发布版本,因此需要手动编译安装: 首先,clone 下来我修改过的 Hugo 的代码,并切换到 support-typst 分支,即: ...

March 29, 2026 · 7 min