本教程适用于刚接触 ARM 的 64 位 ARMv8-A 架构的业余操作系统开发人员。教程将逐步指导如何从头开始为 embedded system 编写单体操作系统 kernel 。它们涵盖常见操作系统任务的实现,例如写入串行控制台、设置虚拟内存和处理硬件异常。同时利用 Rust 的独特功能来提供安全性和速度。
项目地址 | #Raspberry Pi #Rust
本书包含许多可以提高 Rust 程序性能(速度和内存使用)的技术。编译时间部分还包含一些可以提高 Rust 程序编译时间的技术。有些技术只需要更改构建配置,但许多技术需要更改代码。
有些技术完全是特定于 Rust 的,有些涉及可以应用于(通常经过修改)以其他语言编写的程序的想法。一般 提示部分还包括一些适用于任何编程语言的一般原则。尽管如此,本书主要是关于 Rust 程序的性能,并不能替代概要分析和优化的通用指南。
本书还侧重于实用且经过验证的技术:许多都附有拉取请求或其他资源的链接,这些资源展示了如何在真实世界的 Rust 程序中使用该技术。
这本书刻意简洁,广度胜于深度,因此可以快速阅读。它链接到外部资源,在适当的时候提供更多深度。
本书面向中级和高级 Rust 用户。初学者 Rust 用户需要学习的东西绰绰有余,这些技术可能对他们来说是无益的分心。
The Rust Performance Book | #电子书 #Rust #手册
《Programming Rust - Fast, Safe Systems Development》第2版的个人中文翻译,译者汪屹硕(MeouSker77)
Rust是一门为系统级编程设计的语言。
因为很多业务程序员对系统级编程并不是很熟悉,所以这里解释一下,它是我们所做的一切的基础。当你合上笔记本电脑时,操作系统检测到了这一行为,然后把所有正在运行的程序挂起、关掉屏幕、并把电脑设置为睡眠。之后,当你打开笔记本电脑时:屏幕和其他组件被再次唤醒,并且每个程序可以在它中断的地方继续运行。我们对此习以为常。但系统程序员为此编写了很多代码。
系统级编程被用于以下领域:
• 操作系统
• 各种设备的驱动
• 文件系统
• 数据库
• 在非常廉价或需要极高的可靠性的设备上运行的代码
• 密码学
• 多媒体编解码器(用于读写音频、视频、图片文件的软件)
• 多媒体处理(例如,语音识别或图像处理软件)
• 内存管理(例如,实现一个垃圾回收器)
• 文本渲染(把文本和字体转换为像素点的过程)
• 实现更高级的编程语言(例如 JavaScript 和 Python)
• 网络
• 虚拟化和容器
• 科学仿真
• 游戏
简而言之,系统级编程是一种资源受限的编程方式,它是一种每一个字节和每一个 CPU 时钟都需要考虑的编程方式。为了支持一个基本的应用所需要的系统级代码的数量是非常惊人的。
本书并不会教你系统级编程。事实上,这本书包含了很多有关内存管理的细节,如果你没有自己进行过系统级编程,你会感觉这些内容乍一看似乎没有必要。但如果你是一个熟练的系统级程序员,你将会发现Rust是一门非常优秀的语言:它是一件可以解决困扰了整个工业界几十年的主要问题的工具。
Github | #Rust #电子书
Rust是一门为系统级编程设计的语言。
因为很多业务程序员对系统级编程并不是很熟悉,所以这里解释一下,它是我们所做的一切的基础。当你合上笔记本电脑时,操作系统检测到了这一行为,然后把所有正在运行的程序挂起、关掉屏幕、并把电脑设置为睡眠。之后,当你打开笔记本电脑时:屏幕和其他组件被再次唤醒,并且每个程序可以在它中断的地方继续运行。我们对此习以为常。但系统程序员为此编写了很多代码。
系统级编程被用于以下领域:
• 操作系统
• 各种设备的驱动
• 文件系统
• 数据库
• 在非常廉价或需要极高的可靠性的设备上运行的代码
• 密码学
• 多媒体编解码器(用于读写音频、视频、图片文件的软件)
• 多媒体处理(例如,语音识别或图像处理软件)
• 内存管理(例如,实现一个垃圾回收器)
• 文本渲染(把文本和字体转换为像素点的过程)
• 实现更高级的编程语言(例如 JavaScript 和 Python)
• 网络
• 虚拟化和容器
• 科学仿真
• 游戏
简而言之,系统级编程是一种资源受限的编程方式,它是一种每一个字节和每一个 CPU 时钟都需要考虑的编程方式。为了支持一个基本的应用所需要的系统级代码的数量是非常惊人的。
本书并不会教你系统级编程。事实上,这本书包含了很多有关内存管理的细节,如果你没有自己进行过系统级编程,你会感觉这些内容乍一看似乎没有必要。但如果你是一个熟练的系统级程序员,你将会发现Rust是一门非常优秀的语言:它是一件可以解决困扰了整个工业界几十年的主要问题的工具。
Github | #Rust #电子书
连续几年,Rust 在 Stack Overflow 的年度开发者调查中被评为“最喜爱的编程语言”。这种开源系统编程语言现在用于从游戏引擎和操作系统到浏览器组件和虚拟现实模拟引擎的所有事物。但 Rust 也是一种极其复杂的语言,其学习曲线非常困难。
本指南不是专注于整个语言,而是在每章中使用一个小型、完整、专注的程序来教授 Rust。作者 Ken Youens-Clark 向您展示了如何启动、编写和测试每个程序以创建成品。您将学习如何处理 Rust 中的错误、读写文件以及使用正则表达式、Rust 类型、结构等。
了解如何:
使用 Rust 的标准库和数据类型创建命令行程序
编写和测试 Rust 程序和函数
读写文件,包括标准输入、标准输出和标准错误
记录和验证命令行参数
编写优雅失败的程序
解析原始文本和分隔文本
使用和控制随机性
Command-Line Rust | #Rust