{
    "componentChunkName": "component---src-templates-category-blog-list-js",
    "path": "/category/Blog",
    "result": {"data":{"allMdx":{"edges":[{"node":{"fields":{"slug":"/posts/2020/12/14/6s081-lab2-system-calls/"},"frontmatter":{"title":"6.S081 lab2 system calls","date":"2020-12-14T15:20:55.000Z","tags":["OS","6.S081","xv6","RISC-V"],"categories":["Blog"]},"excerpt":"6.S081 的第二个实验，system calls，虽然是好久之前做的了，但是一直没把它放到博客里面。今天略无聊，就弄了一下。BTW，第三个实验我到现在都还没开始呢。 system call 在完成实验之前，我们可以先了解一下系统调用的相关的代码。 首先在 user/usys.pl 中包含生成系统调用汇编的 Perl…"}},{"node":{"fields":{"slug":"/posts/2020/11/20/6s081-lab1-util/"},"frontmatter":{"title":"6.S081 laba1 util","date":"2020-11-20T21:09:55.000Z","tags":["OS","6.S081","xv6","RISC-V"],"categories":["Blog"]},"excerpt":"最近在看 6.S081 的实验，希望这次别半途而废吧。 sleep 简单的解析命令行参数，然后调用 user.h 里面 sleep 函数即可。这道题应该只是让人熟悉一下环境。 记得要修改 Markfile 来编译 sleep 命令。 ./grade-lab-util sleep 可以快速的运行测试。 pingpong 这一题要实现通过 pipe 的进程间通信，虽然只是简单的 pingpong…"}},{"node":{"fields":{"slug":"/posts/2020/07/18/docker-quick-start/"},"frontmatter":{"title":"Docker Quick Start","date":"2020-07-18T17:42:33.000Z","tags":["Docker","DevOps"],"categories":["Blog"]},"excerpt":"基础概念 Docker 引擎主要的组件构成为： Docker client Docker daemon containerd runc 它们的关系如下： Docker daemon 实现了 Docker 引擎的 API，默认情况下，Docker client 与 Docker daemon 之间的通信有本地的 IPC/UNIX socket 完成（ /var/run/docker.sock…"}},{"node":{"fields":{"slug":"/posts/2020/07/08/yong-zi-dong-ji-shi-xian-yi-ge-jian-yi-de-zheng-ze-biao-da-shi-yin-qing/"},"frontmatter":{"title":"用自动机实现一个简易的正则表达式引擎","date":"2020-07-08T21:17:30.000Z","tags":["FSM","正则表达式"],"categories":["Blog"]},"excerpt":"起因 这学期上了一门《计算机软件理论》的课，其实就是本科的《自动机与形式语言》的翻版。由于疫情的缘故，这门课从原来的笔试改成了大作业的形式，其中有一道题目就是让我们将正则表达式转换成自动机，并用自动机来判断输入的文本时候满足正则表达式的描述。写完之后觉得蛮好玩的，就决定写个博客记录一下。 BTW…"}},{"node":{"fields":{"slug":"/posts/2020/03/27/gitea-drone-ci-cd/"},"frontmatter":{"title":"Gitea + Drone CI/CD","date":"2020-03-27T20:38:51.000Z","tags":["Gitea","Drone","CI/CD"],"categories":["Blog"]},"excerpt":"最近想实践一下 DevOps，所以准备搭建一套代码托管和CI/CD 系统。 技术选型 代码托管 代码托管系统的选择其实并不多： Gitea Gogs GitLab 由于  Gitlab  资源占用过大，所以可以直接去除（毕竟这个系统只有我一个人在用，而且只有一台1核2G的服务器）。 Gitea 是脱胎于 Gogs 的，在 Gogs 上做了较多的扩展，而且迭代的也毕竟快。 Gitea…"}},{"node":{"fields":{"slug":"/posts/2020/02/10/flutter-guan-fang-wen-dang-xue-xi-ji-lu/"},"frontmatter":{"title":"Flutter 官方文档学习记录","date":"2020-02-10T19:39:54.000Z","tags":["Flutter","学习记录"],"categories":["Blog"]},"excerpt":"编写第一个 Flutter 应用 Get Start 在 Flutter 中，几乎所有都是 widget，包括对齐 (alignment)、填充 (padding) 和布局 (layout)。 一个 widget 的主要工作是提供一个 build() 方法来描述如何根据其他较低级别的 widgets 来显示自己。 pubspec.yml 文件管理 Flutter 应用的资源（assests…"}}]}},"pageContext":{"category":"Blog","pageNumber":0,"humanPageNumber":1,"skip":0,"limit":6,"numberOfPages":3,"previousPagePath":"","nextPagePath":"/category/Blog/2"}},
    "staticQueryHashes": ["163584858","1656825683","63159454"]}