定时与 Notion 同步
- Makefile 跟我一起写Makefile
- 使用 rust
- 差一个 rust 和 c/cpp 功能/语法糖表格区别
-
Rust 学习资料
- rCore - 附录 A:Rust 系统编程资料 建议先只看一份简单的 Rust 入门介绍
- https://kaisery.github.io/trpl-zh-cn/ch02-00-guessing-game-tutorial.html
首先阅读2/3/4/7/9/10章,这是Rust编写和设计逻辑上和其他语言区别较大的部分。
- 具体来说,2/3/4章新知识很多,先囫囵吞枣一遍,能让你基本看懂rust源代码 阅读7章的时候,请和Python的包管理作比较 阅读9章的时候,请同时参考 rCore - 移除标准库依赖 和 rCore - 构建用户态执行环境 阅读10章的时候,希望你对C++(or golang)的泛型有一定了解,不然可以先不看
-
使用 rustdoc 对代码进行注释
-
远期预计使用 build2 保留
如果不使用VSCode,替代方案:docker pull tiger3018/oskernel-dev
流程简介:
- clone 源码仓库
git clone https://github.com/Tiger3018/OSkernel2023-0o1744/
- 使用 VSCode 打开文件夹,使用 Remote:Container 插件选择 Open this folder in container
make
(生成测评要求的二进制文件)和make qemu
(不生成文件,直接模拟测评机测评过程)
https://zhuanlan.zhihu.com/p/164394603
https://dingfen.github.io/risc-v/2020/08/05/riscv-privileged.html
https://github.com/riscv-non-isa/riscv-sbi-doc/blob/master/riscv-sbi.pdf
TLB快表:
平滑:
MIT 6.828
rCore原版代码的问题
https://gitlab.eduxiji.net/2019301887/oskernel2022-npucore/-/blob/master/Doc/debug/技术细节与错误文档.md
找到一篇讲的比较细致的去年开源文档 by zbh
Doc/fs/fat.md · master · tempdragon / OSKernel2022-NPUcore · GitLab
我其实一直在想同时实现fat16/32/exfat有没有意义,效果大不大
而这篇就只是讲了异步,没啥参考意义
doc/第六章-异步fat32文件系统.md · main · 无相之风战队 / 华中科技大学-无相之风战队-proj68 · GitLab
dtolnay/cargo-expand#113 (comment)
RUSTC_BOOTSTRAP=1
rust-project.json
https://danielmangum.com/posts/risc-v-bytes-rust-cross-compilation/
-
Bug #不要管
https://clang.llvm.org/docs/CrossCompilation.html#target-triple
https://rustc-dev-guide.rust-lang.org/building/new-target.html
^]A + X
https://build2.org/faq.xhtml#ninja
https://build2.org/build2/doc/build2-build-system-manual-a4.pdf https://build2.org/build2/doc/build2-build-system-manual.xhtml
https://build2.org/build2-toolchain/doc/build2-toolchain-install-a4.pdf
https://os.phil-opp.com/zh-CN/
https://0xax.gitbooks.io/linux-insides/content/Initialization/linux-initialization-1.html