更新注释
This commit is contained in:
parent
e9967889a0
commit
cf211629a2
29
note.org
29
note.org
@ -217,3 +217,32 @@ sys_yield 要注意必须手动调用切换上下文,不然不会有效果。
|
||||
Step A、B 的代码完全没有删干净,而且 A、B 描述都是反的。所以写完练习 14 就可以直接通过 spawn info 了。
|
||||
|
||||
我还以为乱码是我又映射错了,结果是代码真的是这么设计的,好吧。
|
||||
|
||||
** Lab 5
|
||||
|
||||
*** 练习 1-4
|
||||
|
||||
由于奇妙的页错误(2240710117)鸽了一年,我已经什么都记不起来了(混乱)
|
||||
|
||||
*** 练习 5
|
||||
|
||||
退格、tab 都可以捕获,以及由于 terminal 特性 "\b \b" 可以删除前一字符
|
||||
|
||||
*** 练习 6
|
||||
|
||||
ls 的检查要求顶格打印
|
||||
|
||||
cd 实现复杂一点,统一用 path_to_absolute 加入当前路径,path_append 连接(感觉 bug 会很多)
|
||||
|
||||
cat 我以为我看错了,怎么就直接 printf 了
|
||||
|
||||
*** 练习 7
|
||||
|
||||
yet another 没删干净
|
||||
|
||||
补全还挺有意思的,给的指引也挺清晰(complement_time)。搞一个词典匹配就好,反正也没多少个 O(n) 了。
|
||||
|
||||
complement 存待补全,结果直接替换整个 buf 比较简单。
|
||||
|
||||
因为有参数、文件、内建指令等等多次匹配,所以 n 轮循环 complement_time 还挺讨厌的。这里第一轮匹配的时候
|
||||
收集匹配数,后面几轮直接取模递归了。虽然会多重复几次匹配,但是胜在简洁。
|
||||
|
Loading…
x
Reference in New Issue
Block a user