 Rust 程序设计语言 简体中文版 1.85.0Cargo 是内置的依赖管理器和构建工具,它能轻松增加、编译和管理依赖,并使依赖在 Rust 生态系统中保持一致。 • Rustfmt 格式化工具确保开发者遵循一致的代码风格。 • rust-analyzer 为集成开发环境(IDE)提供了强大的代码补全和内联错误信息功能。 通过使用 Rust 生态系统中丰富的工具,开发者在编写系统级代码时可以更加高效。 学生 Rust 适合学生群体,也适合有兴趣学习系统概念的人。许多人通过 27/562Rust 程序设计语言 简体中文版 现在我们有了一个外部依赖,Cargo 从 registry 上获取所有包的最新版本信息,这是一份来自 Crates.io 的数据副本。Crates.io 是 Rust 生态系统中,人们发布其开源 Rust 项目的平台,供 他人使用。 在更新完 registry 后,Cargo 检查 [dependencies] section 并下载列表中包含但还未下载的 crate。本例中,虽然只声明了 "0.9.0" 下一次运行 cargo build 时,Cargo 会更新可用 crate 的 registry,并根据你指定的新版本重 新评估 rand 的要求。 第十四章会讲到 Cargo 及其生态系统 的更多内容,不过目前你只需要了解这么多。通过 Cargo 复用库文件非常容易,因此 Rustacean 能够编写出由很多包组装而成的更轻巧的项目。 生成一个随机数 让我们开始使用 rand0 码力 | 562 页 | 3.23 MB | 26 天前3 Rust 程序设计语言 简体中文版 1.85.0Cargo 是内置的依赖管理器和构建工具,它能轻松增加、编译和管理依赖,并使依赖在 Rust 生态系统中保持一致。 • Rustfmt 格式化工具确保开发者遵循一致的代码风格。 • rust-analyzer 为集成开发环境(IDE)提供了强大的代码补全和内联错误信息功能。 通过使用 Rust 生态系统中丰富的工具,开发者在编写系统级代码时可以更加高效。 学生 Rust 适合学生群体,也适合有兴趣学习系统概念的人。许多人通过 27/562Rust 程序设计语言 简体中文版 现在我们有了一个外部依赖,Cargo 从 registry 上获取所有包的最新版本信息,这是一份来自 Crates.io 的数据副本。Crates.io 是 Rust 生态系统中,人们发布其开源 Rust 项目的平台,供 他人使用。 在更新完 registry 后,Cargo 检查 [dependencies] section 并下载列表中包含但还未下载的 crate。本例中,虽然只声明了 "0.9.0" 下一次运行 cargo build 时,Cargo 会更新可用 crate 的 registry,并根据你指定的新版本重 新评估 rand 的要求。 第十四章会讲到 Cargo 及其生态系统 的更多内容,不过目前你只需要了解这么多。通过 Cargo 复用库文件非常容易,因此 Rustacean 能够编写出由很多包组装而成的更轻巧的项目。 生成一个随机数 让我们开始使用 rand0 码力 | 562 页 | 3.23 MB | 26 天前3
 Comprehensive Rust(繁体中文)(Mocking) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 36 記錄 205 37 互通性 207 37.1 與 C 的互通性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 37.1.1 使用 Bindgen 37.1.2 呼叫 Rust . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 37.2 與 C++ 的互通性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 37.2.1 測試模組 . . . . . . 216 37.2.12在 Android 中建構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 37.3 與 Java 的互通性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 38 練習 219 X Chromium 2200 码力 | 358 页 | 1.41 MB | 10 月前3 Comprehensive Rust(繁体中文)(Mocking) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 36 記錄 205 37 互通性 207 37.1 與 C 的互通性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 37.1.1 使用 Bindgen 37.1.2 呼叫 Rust . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 37.2 與 C++ 的互通性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 37.2.1 測試模組 . . . . . . 216 37.2.12在 Android 中建構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 37.3 與 Java 的互通性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 38 練習 219 X Chromium 2200 码力 | 358 页 | 1.41 MB | 10 月前3
 Comprehensive Rust(繁体中文) 202406(Mocking) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 36 記錄 203 37 互通性 205 37.1 與 C 的互通性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 37.1.1 使用 Bindgen 37.1.2 呼叫 Rust . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 37.2 與 C++ 的互通性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 37.2.1 測試模組 . . . . . . 214 37.2.12在 Android 中建構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 37.3 與 Java 的互通性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 38 練習 217 X Chromium 2180 码力 | 356 页 | 1.41 MB | 1 年前3 Comprehensive Rust(繁体中文) 202406(Mocking) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 36 記錄 203 37 互通性 205 37.1 與 C 的互通性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 37.1.1 使用 Bindgen 37.1.2 呼叫 Rust . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 37.2 與 C++ 的互通性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 37.2.1 測試模組 . . . . . . 214 37.2.12在 Android 中建構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 37.3 與 Java 的互通性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 38 練習 217 X Chromium 2180 码力 | 356 页 | 1.41 MB | 1 年前3
 Rust 程序设计语言简体中文版Cargo 是内置的依赖管理器和构建工具,它能轻松增加、编译和管理依赖,并使依赖在 Rust 生态系统中保持一致。 • Rustfmt 格式化工具确保开发者遵循一致的代码风格。 • Rust Language Server 为集成开发环境(IDE)提供了强大的代码补全和内联错误信息功 能。 通过使用 Rust 生态系统中丰富的工具,开发者在编写系统级代码时可以更加高效。 学生 Rust 适合学生群 示顺序也可能 会有所不同。 现在我们有了一个外部依赖,Cargo 从 registry 上获取所有包的最新版本信息,这是一份来自 Crates.io 的数据拷贝。Crates.io 是 Rust 生态环境中的开发者们向他人贡献 Rust 开源项目的 地方。 在更新完 registry 后,Cargo 检查 [dependencies] 片段并下载列表中包含但还未下载的 crates。本例中,虽然只声明了 rand = "0.9.0" 下一次运行 cargo build 时,Cargo 会从 registry 更新可用的 crate,并根据你指定的新版本 重新计算。 第十四章会讲到 Cargo 及其生态系统 的更多内容,不过目前你只需要了解这么多。通过 Cargo 复用库文件非常容易,因此 Rustacean 能够编写出由很多包组装而成的更轻巧的项目。 生成一个随机数 让我们开始使用 rand0 码力 | 600 页 | 12.99 MB | 1 年前3 Rust 程序设计语言简体中文版Cargo 是内置的依赖管理器和构建工具,它能轻松增加、编译和管理依赖,并使依赖在 Rust 生态系统中保持一致。 • Rustfmt 格式化工具确保开发者遵循一致的代码风格。 • Rust Language Server 为集成开发环境(IDE)提供了强大的代码补全和内联错误信息功 能。 通过使用 Rust 生态系统中丰富的工具,开发者在编写系统级代码时可以更加高效。 学生 Rust 适合学生群 示顺序也可能 会有所不同。 现在我们有了一个外部依赖,Cargo 从 registry 上获取所有包的最新版本信息,这是一份来自 Crates.io 的数据拷贝。Crates.io 是 Rust 生态环境中的开发者们向他人贡献 Rust 开源项目的 地方。 在更新完 registry 后,Cargo 检查 [dependencies] 片段并下载列表中包含但还未下载的 crates。本例中,虽然只声明了 rand = "0.9.0" 下一次运行 cargo build 时,Cargo 会从 registry 更新可用的 crate,并根据你指定的新版本 重新计算。 第十四章会讲到 Cargo 及其生态系统 的更多内容,不过目前你只需要了解这么多。通过 Cargo 复用库文件非常容易,因此 Rustacean 能够编写出由很多包组装而成的更轻巧的项目。 生成一个随机数 让我们开始使用 rand0 码力 | 600 页 | 12.99 MB | 1 年前3
 Rust在Substrate 开发框架中的使用finality-grandpa and more ... 应用场景 去中心化技术的特点包括,永不离 线、开源审查、数据加密、保护隐 私、分享权益等。 随着区块链技术的发展,交易成本、 确认时间、能源消耗、安全性、互通 性都有极大地提升。 国际支付 金融交易 去中心自 治组织 信息登记 存证 应用链开发 - 房产登记交易平台 房主登记房产信息 房管局认证登记信 息 房主出售房产 房管局授权交易0 码力 | 37 页 | 967.22 KB | 1 年前3 Rust在Substrate 开发框架中的使用finality-grandpa and more ... 应用场景 去中心化技术的特点包括,永不离 线、开源审查、数据加密、保护隐 私、分享权益等。 随着区块链技术的发展,交易成本、 确认时间、能源消耗、安全性、互通 性都有极大地提升。 国际支付 金融交易 去中心自 治组织 信息登记 存证 应用链开发 - 房产登记交易平台 房主登记房产信息 房管局认证登记信 息 房主出售房产 房管局授权交易0 码力 | 37 页 | 967.22 KB | 1 年前3
 洛佳 组件化驱动、ROM运行环境与RustSBI在读(导师:周威老师) • 研究方向:物联网安全、系统安全 • 热爱开源,乐于尝试新技术 • RustSBI项目维护者 • 致力于向科研、教学和产业界推广 Rust语言 汲取Rust嵌入式和操作系统生态经验,总 结而成的新一代驱动开发方法。动、静态 基地址结合,高灵活性;一次开发,同时 复用于嵌入式、固件和内核中。 # 组件化驱动 合理利用嵌入式、桌面和服务器芯片片内 ROM代码,构造零开销的运行环境。进一 发寄存器,快速处理程序可为完整处理程序提供参数 • 项目地址:https://github.com/YdrMaster/fast- trap 示例:RustSBI原型设计系统选型界面 RustSBI与生态后续引导链 • 对RISC-V UEFI,RustSBI准备好SBI 环境。 • RustSBI充当至关重要的安全 层,并准备好S态软件的环境 • UEFI部分运行在S态 • 对LinuxBoot,RustSBI参与准备好 RustSBI原型设计系统将会提供 此类环境准备软件 • 后续生态的固件也可复用RustSBI编 写的静态检查等相关工具。 1 https://github.com/oreboot/oreboot 致谢 • 感谢Rust语言让我拥有重新认识嵌入式、固件开发的机会。 • 感谢Rustcc嵌入式社区、TUNA嵌入式社区和华科网安的开源团队在关键问题上的答疑 解惑,社区的良好氛围对生态有非常大的帮助。 • 感谢@Ydr0 码力 | 21 页 | 3.12 MB | 1 年前3 洛佳 组件化驱动、ROM运行环境与RustSBI在读(导师:周威老师) • 研究方向:物联网安全、系统安全 • 热爱开源,乐于尝试新技术 • RustSBI项目维护者 • 致力于向科研、教学和产业界推广 Rust语言 汲取Rust嵌入式和操作系统生态经验,总 结而成的新一代驱动开发方法。动、静态 基地址结合,高灵活性;一次开发,同时 复用于嵌入式、固件和内核中。 # 组件化驱动 合理利用嵌入式、桌面和服务器芯片片内 ROM代码,构造零开销的运行环境。进一 发寄存器,快速处理程序可为完整处理程序提供参数 • 项目地址:https://github.com/YdrMaster/fast- trap 示例:RustSBI原型设计系统选型界面 RustSBI与生态后续引导链 • 对RISC-V UEFI,RustSBI准备好SBI 环境。 • RustSBI充当至关重要的安全 层,并准备好S态软件的环境 • UEFI部分运行在S态 • 对LinuxBoot,RustSBI参与准备好 RustSBI原型设计系统将会提供 此类环境准备软件 • 后续生态的固件也可复用RustSBI编 写的静态检查等相关工具。 1 https://github.com/oreboot/oreboot 致谢 • 感谢Rust语言让我拥有重新认识嵌入式、固件开发的机会。 • 感谢Rustcc嵌入式社区、TUNA嵌入式社区和华科网安的开源团队在关键问题上的答疑 解惑,社区的良好氛围对生态有非常大的帮助。 • 感谢@Ydr0 码力 | 21 页 | 3.12 MB | 1 年前3
 简谈 Rust 与国密 TLS - 王江桐实现国密密码与 安全协议的优势与现状 Use Rust in Cryptographic Systems Section #2 • 密码系统实现的潜在问题 • Rust 的优势 • 国密实现生态 来源:https://developer.okta.com/blog/2022/03/18/programming-security-and-why- rust 密码系统实现的潜在问题 Potential 强大编译器 ü 全开源方式运作 ü Cargo ü Crates.io ü Docs.rs ü 自带测试框架 ü 支持跨平台 ü 多编程范式 ü 丰富的文档手册 高性能 高生产力 国密实现生态 Overview of Shangmi Cryptography Implementation Rust China Conf 2022 – 2023, Shanghai, China RustCrypto SM9 加解密 √ √ 签名与验签 √ √ 密钥交换 √ √ ZUC √ √ √ TLCP √ √ √ √ TLS 1.2国密支持 √ TLS 1.3 国密支持 √ √ √ 国密实现生态 Overview of Shangmi Cryptography Implementation Rust China Conf 2022 – 2023, Shanghai, China RustCrypto0 码力 | 44 页 | 3.70 MB | 1 年前3 简谈 Rust 与国密 TLS - 王江桐实现国密密码与 安全协议的优势与现状 Use Rust in Cryptographic Systems Section #2 • 密码系统实现的潜在问题 • Rust 的优势 • 国密实现生态 来源:https://developer.okta.com/blog/2022/03/18/programming-security-and-why- rust 密码系统实现的潜在问题 Potential 强大编译器 ü 全开源方式运作 ü Cargo ü Crates.io ü Docs.rs ü 自带测试框架 ü 支持跨平台 ü 多编程范式 ü 丰富的文档手册 高性能 高生产力 国密实现生态 Overview of Shangmi Cryptography Implementation Rust China Conf 2022 – 2023, Shanghai, China RustCrypto SM9 加解密 √ √ 签名与验签 √ √ 密钥交换 √ √ ZUC √ √ √ TLCP √ √ √ √ TLS 1.2国密支持 √ TLS 1.3 国密支持 √ √ √ 国密实现生态 Overview of Shangmi Cryptography Implementation Rust China Conf 2022 – 2023, Shanghai, China RustCrypto0 码力 | 44 页 | 3.70 MB | 1 年前3
 Comprehensive Rust(简体中文) 202412. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2 使用 Cargo 17 2.1 Rust 生态系统 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.2 本培训中的代码示例 . . . . 217 38 习题 219 X Chromium 220 39 Welcome to Rust in Chromium 221 40 设置 222 41 Chromium 和 Cargo 的生态对比 224 42 Chromium Rust 政策 226 43 Build rules 227 43.1 Including unsafe Rust Code . . . . . . . . 译工作可通过此议题追踪。 16 第 2 部分 使用Cargo 开始了解 Rust 后,你很快就会遇到 Cargo,这是 Rust 生态系统中用于构建和运行 Rust 应用的标准工 具。在这里,我们想简要介绍一下什么是 Cargo、它如何融入更广泛的生态系统,以及我们如何在本培训 中合理利用 Cargo。 安装 请按照 https://rustup.rs/ 上的说明操作。 这将为你提供0 码力 | 359 页 | 1.33 MB | 10 月前3 Comprehensive Rust(简体中文) 202412. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2 使用 Cargo 17 2.1 Rust 生态系统 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.2 本培训中的代码示例 . . . . 217 38 习题 219 X Chromium 220 39 Welcome to Rust in Chromium 221 40 设置 222 41 Chromium 和 Cargo 的生态对比 224 42 Chromium Rust 政策 226 43 Build rules 227 43.1 Including unsafe Rust Code . . . . . . . . 译工作可通过此议题追踪。 16 第 2 部分 使用Cargo 开始了解 Rust 后,你很快就会遇到 Cargo,这是 Rust 生态系统中用于构建和运行 Rust 应用的标准工 具。在这里,我们想简要介绍一下什么是 Cargo、它如何融入更广泛的生态系统,以及我们如何在本培训 中合理利用 Cargo。 安装 请按照 https://rustup.rs/ 上的说明操作。 这将为你提供0 码力 | 359 页 | 1.33 MB | 10 月前3
 在Solana合约链实现IBC协议跨链互操作 - 苏胤榕第三届中国Rust开发者大会 @DaviRain 在Solana合约链 实现IBC协议跨链互操作 简单介绍下IBC协议是什么,及其生态 简介 > 介绍IBC协议和其在跨链互操作中的作用 IBC协议中的角色和参与者 1. 客户端 2. 连接 3. 通道 4. 包 4. 中继器 解释为什么选择在Rust合约链中实现IBC协议 - I 轻客户端核心 使用Rust在Rust合约链实现IBC协议 Rust合约链概述> 解释为什么选择Rust作为实现IBC协议的语言 1. Rust语言的安全性和性能优势 2. Rust生态系统的丰富性 3.Solana平台的支持:Solana是一个基于Rust开发 的 高性能区块链平台,提供了完善的开发工具和文档,可 以帮助开发者更加便捷地进行Rust合约链开发。 4. Informal 是通过随机选择签名人。进而这个方案可以快速的推广到更多不同共识算法的 Rust合约链(Substrate chain, Near, Solana, Oasis, Nerovs 等等)实现。 总结,以及对未来IBC生态的展望 总结和展望 > 提供代码示例或参考链接以帮助读者更好地理解实现细节 Pallet-ibc 的参考实现: https://github.com/DaviRain-Su/pallet-ibc0 码力 | 29 页 | 3.05 MB | 1 年前3 在Solana合约链实现IBC协议跨链互操作 - 苏胤榕第三届中国Rust开发者大会 @DaviRain 在Solana合约链 实现IBC协议跨链互操作 简单介绍下IBC协议是什么,及其生态 简介 > 介绍IBC协议和其在跨链互操作中的作用 IBC协议中的角色和参与者 1. 客户端 2. 连接 3. 通道 4. 包 4. 中继器 解释为什么选择在Rust合约链中实现IBC协议 - I 轻客户端核心 使用Rust在Rust合约链实现IBC协议 Rust合约链概述> 解释为什么选择Rust作为实现IBC协议的语言 1. Rust语言的安全性和性能优势 2. Rust生态系统的丰富性 3.Solana平台的支持:Solana是一个基于Rust开发 的 高性能区块链平台,提供了完善的开发工具和文档,可 以帮助开发者更加便捷地进行Rust合约链开发。 4. Informal 是通过随机选择签名人。进而这个方案可以快速的推广到更多不同共识算法的 Rust合约链(Substrate chain, Near, Solana, Oasis, Nerovs 等等)实现。 总结,以及对未来IBC生态的展望 总结和展望 > 提供代码示例或参考链接以帮助读者更好地理解实现细节 Pallet-ibc 的参考实现: https://github.com/DaviRain-Su/pallet-ibc0 码力 | 29 页 | 3.05 MB | 1 年前3
 WebAssembly 简介 - 陈思衡调用。 • 把 host function 包装成自定义 Future。 • 实现简单 利用本身 Async 机制 优点 • 方案不通用(wasm 局限于某一种语言) • 无法与现有生态配合 缺点 Async 的 Wasm 基于 fiber / ucontext Async Wasm 解决方案 wasmtime-fiber 是一个通过内联汇编,保存当前寄存 器和栈数据来实现有栈协程的 Ucontext 和 fiber 功能相同,但是 linux 的系统库。 ucontext 执行流程 Async Wasm 解决方案 • 与 WASM 的语言无关。 • 可以复用 WASM 编写语言本身的生态。 • 不会对 WASM 执行产生性能损失 基于 fiber / ucontext 优点 • 实现困难,涉及到汇编。容易出错。 • 需要极其注意内存安全。 缺点 Async Wasm0 码力 | 24 页 | 773.46 KB | 1 年前3 WebAssembly 简介 - 陈思衡调用。 • 把 host function 包装成自定义 Future。 • 实现简单 利用本身 Async 机制 优点 • 方案不通用(wasm 局限于某一种语言) • 无法与现有生态配合 缺点 Async 的 Wasm 基于 fiber / ucontext Async Wasm 解决方案 wasmtime-fiber 是一个通过内联汇编,保存当前寄存 器和栈数据来实现有栈协程的 Ucontext 和 fiber 功能相同,但是 linux 的系统库。 ucontext 执行流程 Async Wasm 解决方案 • 与 WASM 的语言无关。 • 可以复用 WASM 编写语言本身的生态。 • 不会对 WASM 执行产生性能损失 基于 fiber / ucontext 优点 • 实现困难,涉及到汇编。容易出错。 • 需要极其注意内存安全。 缺点 Async Wasm0 码力 | 24 页 | 773.46 KB | 1 年前3
共 22 条
- 1
- 2
- 3














