Skip to content

Commit

Permalink
update awesome-os, book toc
Browse files Browse the repository at this point in the history
  • Loading branch information
sunface committed Apr 7, 2022
1 parent 104fbd0 commit afa3c54
Show file tree
Hide file tree
Showing 7 changed files with 28 additions and 33 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

在 Rust 元宇宙,夸奖别人的最高境界就是 `rusty`: 今天你"锈"了吗? 你的 Rust 代码好锈啊!

而本书,就是精选了各种开源库和代码片段,帮助大家打造优"锈"的 Rust 项目。
而本书,就是精选了各种开源库和代码片段,帮助大家打造"有锈"的 Rust 项目。

## 以往的锈法
以往,想要锈起来,你需要做到以下两步:
Expand Down
26 changes: 10 additions & 16 deletions src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,22 +7,30 @@
- [日常开发常用库](daily-dev.md)
- [Rust 明星项目](superstar.md)
- [使用 Rust 增强 JS](empowering-js.md)
- [游戏](games.md)
- [游戏开发](gamedev.md)
- [Rust开发的游戏](games.md)
- [游戏引擎](gamedev.md)


# Awesome + Cookbook
---
- [实用算法](algos/awesome.md)
- [生成随机值](algos/randomness.md)
- [Vec 排序](algos/sorting.md)
- [压缩算法]()
- [使用.tar包](algos/compression/tar.md)
- [密码学]()
- [哈希](algos/cryptography/hashing.md)
- [加密](algos/cryptography/encryption.md)
- [数学计算]()
- [线性代数](algos/math/linear-algebra.md)
- [三角函数](algos/math/trigonometry.md)
- [复数](algos/math/complex.md)
- [统计学](algos/math/statistics.md)
- [杂项](algos/math/misc.md)

- [数据结构](datastructures/awesome.md)
- [位字段](datastructures/bitfield.md)

- [命令行](cmd/awesome.md)
- [参数解析](cmd/parsing.md)
- [终端输出格式化](cmd/ansi.md)
Expand All @@ -31,24 +39,10 @@
- [处理器](os/processor.md)
- [调用系统命令](os/command.md)

- [压缩]()
- [使用.tar包](compression/tar.md)


- [并发]()
- [线程](cocurrency/threads.md)
- [使用rayon并行处理数据](cocurrency/parallel.md)


- [密码学]()
- [哈希](cryptography/hashing.md)
- [加密](cryptography/encryption.md)


- [数据结构]()
- [位字段](datastructures/bitfield.md)


- [数据库]()
- [SQLite](database/sqlite.md)
- [Postgres](database/postgres.md)
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
1 change: 1 addition & 0 deletions src/datastructures/awesome.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# 数据结构
32 changes: 16 additions & 16 deletions src/os/awesome.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,21 +13,21 @@
| [rcore-os](#rcore-os) | 清华大学提供的`rcore`操作系统教程 |
| [edu-os](#edu-os) | 亚琛工业大学操作系统课程的配套项目 |

### [redox](https://github.com/redox-os/redox)
`Redox`是一个`Unix`风格的微内核操作系统,使用`Rust`实现。`redox`的目标是安全、快速、免费、可用,它在内核设计上借鉴了很多优秀的内核,例如:`SeL4`, `MINIX`, `Plan 9``BSD`
### redox
[redox](https://github.com/redox-os/redox) 是一个 `Unix` 风格的微内核操作系统,使用 `Rust` 实现。`redox` 的目标是安全、快速、免费、可用,它在内核设计上借鉴了很多优秀的内核,例如:`SeL4`, `MINIX`, `Plan 9``BSD`

`redox`不仅仅是一个内核,它还是一个功能齐全的操作系统,提供了操作系统该有的功能,例如:内存分配器、文件系统、显示管理、核心工具等等。你可以大概认为它是一个`GNU``BSD`生态,但是是通过一门现代化、内存安全的语言实现的。
`redox` 不仅仅是一个内核,它还是一个功能齐全的操作系统,提供了操作系统该有的功能,例如:内存分配器、文件系统、显示管理、核心工具等等。你可以大概认为它是一个 `GNU``BSD` 生态,但是是通过一门现代化、内存安全的语言实现的。

> 不过据我仔细观察,redox目前的开发进度不是很活跃,不知道发生了什么,未来若有新的发现会在这里进行更新 - Sunface
<img alt="redox1 screenshot" width="100%" src="https://github.com/studyrs/cookbook-images/blob/main/os/redox1.jpg?raw=true" class="center" />

<img alt="redox2 screenshot" width="100%" src="https://github.com/studyrs/cookbook-images/blob/main/os/redox2.jpeg?raw=true" class="center" />

### [tock](https://github.com/tock/tock)
`Tock`是一个嵌入式操作系统,设计用于在低内存和低功耗的微控制器上运行多个并发的、相互不信任的应用程序,例如它可在`Cortex-M``RISC-V`平台上运行。
### tock
[tock](https://github.com/tock/tock) 是一个嵌入式操作系统,设计用于在低内存和低功耗的微控制器上运行多个并发的、相互不信任的应用程序,例如它可在 `Cortex-M``RISC-V` 平台上运行。

`Tock`使用两个核心机制保护操作系统中不同组件的安全运行:
`Tock` 使用两个核心机制保护操作系统中不同组件的安全运行:

- 内核和设备驱动全部使用Rust编写,提供了很好安全性的同时,还将内核和设备进行了隔离
- 使用了内存保护单元技术,让应用之间、应用和内核之间实现了安全隔离
Expand All @@ -36,25 +36,25 @@

<img alt="tock screenshot" width="100%" src="https://book.tockos.org/imgs/imix.svg" class="center" />

### [Theseus](https://github.com/theseus-os/Theseus)
`Theseus`是从零开始构建的操作系统,完全使用Rust进行开发。它使用了新的操作系统结构、更好的状态管理,以及利用语言内设计原则将操作系统的职责(如资源管理)转移到编译器中。
### Theseus
[Theseus](https://github.com/theseus-os/Theseus) 是从零开始构建的操作系统,完全使用Rust进行开发。它使用了新的操作系统结构、更好的状态管理,以及利用语言内设计原则将操作系统的职责(如资源管理)转移到编译器中。

该OS目前尚处于早期阶段,但是看上去作者很有信心未来可以落地,如果想要了解,可以通过官方提供的[在线书籍](https://theseus-os.github.io/Theseus/book/index.html)进行学习。

### [Writing an OS in Rust](https://os.phil-opp.com)
这是非常有名的博客系列,专门讲解如何使用Rust来写一个简单的操作系统,配套源码在[这里](https://github.com/phil-opp/blog_os),目前已经发布了第二版。
### Writing an OS in Rust
[Writing an OS in Rust](https://os.phil-opp.com) 是非常有名的博客系列,专门讲解如何使用Rust来写一个简单的操作系统,配套源码在[这里](https://github.com/phil-opp/blog_os),目前已经发布了第二版。

以下是`async/await`的目录截图:
<img alt="writing-os screenshot" width="100%" src="https://github.com/studyrs/cookbook-images/blob/main/os/writing-os.jpg?raw=true" class="center" />

### [rust-raspberrypi-OS-tutorials](https://github.com/rust-embedded/rust-raspberrypi-OS-tutorials)
学习如何用Rust开发一个嵌入式操作系统,可以运行在树莓派上。这个教程讲得很细,号称手把手教学,而且是从零实现,因此很值得学习。
### rust-raspberrypi-OS-tutorials
[rust-raspberrypi-OS-tutorials](https://github.com/rust-embedded/rust-raspberrypi-OS-tutorials) 教大家如何用Rust开发一个嵌入式操作系统,可以运行在树莓派上。这个教程讲得很细,号称手把手教学,而且是从零实现,因此很值得学习。

<img alt="rrot screenshot" width="50%" height="400px" src="https://github.com/studyrs/cookbook-images/blob/main/os/rrot.jpg?raw=true" class="center" />
<img alt="rrot1 screenshot" width="49%" height="400px" src="https://github.com/studyrs/cookbook-images/blob/main/os/rrot1.gif?raw=true" class="center" />

### [rcore-os](https://github.com/rcore-os)
清华大学提供的`rcore`操作系统,用Rust实现, 与`linux`相兼容,主要目的目前还是用于教学,因为还有相关的配套教程,非常值得学习。目前支持的功能不完全列表如下:`linux`兼容的`syscall`接口、网络协议栈、简单的文件系统、信号系统、异步IO、内核模块化。
### rcore-os
[rcore-os](https://github.com/rcore-os) 是由清华大学开发的操作系统,用 Rus t实现, 与 `linux` 相兼容,主要目的目前还是用于教学,因为还有相关的配套教程,非常值得学习。目前支持的功能不完全列表如下:`linux` 兼容的 `syscall` 接口、网络协议栈、简单的文件系统、信号系统、异步IO、内核模块化。

- [内核实现](https://github.com/rcore-os/rCore)
- [配套教程](https://github.com/rcore-os/rCore-Tutorial-Book-v3)
Expand All @@ -65,7 +65,7 @@



### [edu-os](https://github.com/RWTH-OS/eduOS-rs)
`Unix`风格的操作系统,用于教学目的,它是亚琛工业大学(RWTH Aachen University)操作系统课程的配套大项目,但是我并没有找到对应的课程资料,根据作者的描述,上面部分的**Writing an OS in Rust**对他有很大的启发。
### edu-os
[edu-os](https://github.com/RWTH-OS/eduOS-rs)`Unix` 风格的操作系统,用于教学目的,它是亚琛工业大学(RWTH Aachen University)操作系统课程的配套大项目,但是我并没有找到对应的课程资料,根据作者的描述,上面部分的**Writing an OS in Rust**对他有很大的启发。

<img alt="eduos screenshot" width="100%" src="https://github.com/RWTH-OS/eduOS-rs/raw/master/img/demo.gif?raw=true" class="center" />

0 comments on commit afa3c54

Please sign in to comment.