介绍
CS140e 是今年一月份开的一门使用 Rust 和 Rasberry Pi 教学操作系统的课程,内容包括:
Disks, File systems, I/O, Threads & Processes, Scheduling, Virtual Memory, Protection & Security, Interrupts, Concurrency & Synchronization.
这门课有 5 个 assignment:
- Assignment 0: Raspberry Pi Setup
- Assignment 1: Shell and Bootloader
- Assignment 2: SD Driver and FAT File System
- Assignment 3: Spawn
- Assignment 4: Multitasking and Multicore
我个人蛮喜欢 Rust,再加上下学期上操作系统的课,于是打算在寒假跟着这门课学操作系统。
由于 honor code 的原因,我不会分享实际的代码。
我这个星期接触了 Elixir,遇到蛮多有趣的东西,于是写 blog 分享下。官方的介绍如下:
Elixir is a dynamic, functional language designed for building scalable and maintainable applications.
要用一句话概括这语言给我的感觉就是:「皮是 Ruby, 肉是 Erlang, 骨是 Lisp」。
LeaderF 是什麼
LeaderF 是一個用於模糊搜索的 Vim 插件(fuzzy finder),可以用來找文件、打開的 buffer、最近打開的文件(MRU)等等。甚至,你可以給它寫拓展,找你想找的東西(我寫過兩個 LeaderF 插件,後面會提到)。


緣起
近期打算遷移至 Arch Linux, 在虛擬機器體驗了幾天,等開學之後配部桌上型電腦再正式叛逃過去。
在這幾天裡,我試用了相當數目的新軟體(vim之類的早在用的就不說了),在這裡列個清單備忘
异或运算的一些性质
- 交换律:
a ^ b = b ^ a
- 结合律:
a ^ (b ^ c) = b ^ c
- 异或是异或的逆运算:
a ^ b = c <=> b ^ c = a
推论:
阅读下文之前请务必把上述几个性质搞明白。
下面介绍几个比较 tricky 的应用,越往下越复杂。
为什么写 blog?
让发生过的事情留下些痕迹,作为成长的记录。