Rust原子操作高性能实践 Rust Atomic Deep Dive - 王璞第三届中国Rust开发者大会 Rust Atomic Deep Dive Pu Wang @ DatenLord 2023/06/17 Rust原子操作高性能实践 What are atomic operations in Rust? What Why need atomic operations? Why How 01 02 03 Memory order in atomic operations0 码力 | 19 页 | 1.88 MB | 1 年前3
Rust API可靠性分析与验证Conf 2021 – 2022, Online, China 姜剑峰 Rust API可靠性分析与验证 Rust China Conf 2021 – 2022, Online, China 主题内容 • Rust第三方库API可靠性现状 • 现用方法的局限性 • 基于程序合成+模糊测试的可靠性分析方法 Rust China Conf 2021 – 2022, Online, China China Conf 2021 – 2022, Online, China Rust API 可靠性 现有的机制是否足够呢? • unsafe代码没有破坏内存安全性 • no memory leakage • panic free 在任何合法使用API的情况下 • 所有静态检查提供的保证都应该被满足(不应该被unsafe所破坏) • 所有动态检查都不应该被违背(可以被安全的移除),除非panic是一种 非panic是一种 允许的行为 Rust China Conf 2021 – 2022, Online, China 现有的可靠性分析方法及其局限性 模糊测试(afl.rs, libfuzzer):分支覆盖率;用例程序的构造 符号执行(klee, angr):路径爆炸;求解困难 静态分析(MirChecker, Rudra, SafeDrop):分析特定问题;假阳性 形式化验证(RustBelt):无法方便的验证第三方库0 码力 | 13 页 | 1.68 MB | 1 年前3
Await-Tree Async Rust 可观测性的灵丹妙药 - 赵梓淇Await-Tree Async Rust 可观测性的灵丹妙药 赵梓淇 Bugen Zhao Await-Tree Async Rust 可观测性的灵丹妙药 Await-Tree 的 设计原理与实现 2 回顾 Async Rust 的设计与痛点 1 Await-Tree 的 应用与真实案例 3 Await-Tree Async Rust 可观测性的灵丹妙药 Await-Tree 的 设计原理与实现 poll 驱动的状态机 • 组合嵌套为调度单元: Task • async fn 语法糖 Async Rust 观测与调试的痛点 Async Rust 回顾 • 特性: Future 灵活的可组合性 • 任意定制 Poll 的执行逻辑 (Join / Select / Timeout) • 动态的调用关系 • 痛点:观测与调试工具无法理解灵活的执行逻辑 • Backtrace 不够直观 ( 痛点:观测与调试工具无法还原 Pending Task 的执行状态 • 难以得知 Task 阻塞的位置和原因 • 难以调试 Async Stuck • ? 如何解决? Await-Tree Async Rust 可观测性的灵丹妙药 Await-Tree 的 设计原理与实现 2 回顾 Async Rust 的设计与痛点 1 Await-Tree 的 应用与真实案例 3 设计目标 Await Tree 的设计原理与实现0 码力 | 37 页 | 8.60 MB | 1 年前3
Rust 语言学习笔记.. 93 7.2.1 通道与所有权的转移 ............................................................. 94 7.2.2 通道保证发送的顺序 ............................................................. 95 7.2.3 通过克隆发送者来创建多个生产者 .... 102 7.5.1 控制访问顺序--等待与通知 ................................................... 103 7.5.2 控制访问顺序的机制-原子类型与锁 ........................................ 104 7.6 并行 ........................................ 是一门系统级编程语言,被设计为保证内存和线程安全,并防止段错误。 作为系统级编程语言,它的基本理念是 “零开销抽象”。理论上来说,它的速 度与 C / C++ 同级。 Rust 可以被归为通用的、多范式、编译型的编程语言,类似 C 或者 C++。与 这两门编程语言不同的是,Rust 是线程安全的! Rust 编程语言的目标是,创建一个高度安全和并发的软件系统。它强调安全性、 并发和内存控制。尽管0 码力 | 117 页 | 2.24 MB | 1 年前3
Comprehensive Rust(简体中文) 202412. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 36 日志记录 205 37 互操作性 207 37.1 与 C 的互操作性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 37.1.1 使用 Bindgen 12Building in Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 37.3 与 Java 的互操作性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 38 习题 219 X Chromium 220 39 Testing exercise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 45 与 C++ 的互操作性 233 45.1 绑定示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 45.20 码力 | 359 页 | 1.33 MB | 10 月前3
Rust 程序设计语言 简体中文版 1.85.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446 19.2. Refutability(可反驳性): 模式是否会匹配失效 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451 19.3. 模式语法 . io/trpl- zh-cn/ 在线阅读,PDF 版本请下载 Rust 程序设计语言 简体中文版.pdf) 本书也有由 No Starch Press 出版的纸质版和电子版。 🚨 想要具有互动性的学习体验吗?试试 Rust Book 的另一个版本,其中包括测验、 高亮、可视化等功能:https://rust-book.cs.brown.edu 5/562Rust 程序设计语言 简体中文版 的错误处理的理念与技术。 第十章深入介绍泛型(generic)、Trait 和生命周期(lifetime),这些功能让你能够定义适用 于多种类型的代码。第十一章全面讲述了测试,因为就算 Rust 有安全保证,也需要测试确保 程序逻辑正确。第十二章中将会构建我们自己的 grep 命令行工具的功能子集实现,用于在文 件中搜索文本。为此会用到之前章节讨论的很多概念。 第十三章探索闭包(closure)和迭代器(iterator),这两个0 码力 | 562 页 | 3.23 MB | 1 月前3
Rust 程序设计语言简体中文版........................................................................ 463 18.2. Refutability(可反驳性): 模式是否会匹配失效 ...................................................... 468 18.3. 模式语法 ................. 翻译版本。简体中文译本可以在 https://kaisery.github.io/trpl-zh-cn/ 在线 阅读。 本书也有 由 No Starch Press 出版的纸质版和电子版。 ? 想要具有互动性的学习体验吗?试试 Rust Book 的另一个版本,其中包括测验、 高亮、可视化等功能:https://rust-book.cs.brown.edu 5/600 Rust 程序设计语言 简体中文版 的错误处理的理念与技术。 第 10 章深入介绍泛型(generic)、Trait 和生命周期(lifetime),这些功能让你能够定义适用 于多种类型的代码。第 11 章全面讲述了测试,,因为就算 Rust 有安全保证,也需要测试确保 程序逻辑正确。第 12 章中将会构建我们自己的 grep 命令行工具的功能子集实现,用于在文 件中搜索文本。为此会用到之前章节讨论的很多概念。 第 13 章探索闭包(closu0 码力 | 600 页 | 12.99 MB | 1 年前3
Comprehensive Rust(繁体中文)2 借用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 22.3 內部可變性 (Interior Mutability) . . . . . . . . . . . . . . . . . . . . . . . . . 122 22.4 練習:衛生統計資料 . . . . 2 行內組語 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 53.3 MMIO 揮發性記憶體存取 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 53.4 編寫 UART 驅動程式 . . . . . . 使用這些範例進行實驗: cargo init concurrency cd concurrency cargo add tokio --features full cargo run 形式 本課程極具互動性,因此建議您根據各項疑問,帶領學員瞭解 Rust! 1.2 鍵盤快速鍵 以下為 mdBook 中實用的鍵盤快速鍵: • Arrow-Left : Navigate to the previous0 码力 | 358 页 | 1.41 MB | 10 月前3
Comprehensive Rust(繁体中文) 2024062 借用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 22.3 內部可變性 (Interior Mutability) . . . . . . . . . . . . . . . . . . . . . . . . . 120 22.4 練習:衛生統計資料 . . . . 2 行內組語 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 53.3 MMIO 揮發性記憶體存取 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 53.4 編寫 UART 驅動程式 . . . . . . 使用這些範例進行實驗: cargo init concurrency cd concurrency cargo add tokio --features full cargo run 形式 本課程極具互動性,因此建議您根據各項疑問,帶領學員瞭解 Rust! 1.2 鍵盤快速鍵 以下為 mdBook 中實用的鍵盤快速鍵: • Arrow-Left: Navigate to the previous page0 码力 | 356 页 | 1.41 MB | 1 年前3
简谈 Rust 与国密 TLS - 王江桐al of Service) 攻击就是针对可获性进行的攻击,使计算机或网络无法提供正常的服务。 机密性(Confidentiality) 保证信息私密性和保密性 真实性(Authentication) 确保信息来自正确身份的对象 完整性(Integrity) 信息没有被篡改 接入控制(Access control) 避免资源滥用 可获性(Availability) 资源可以被使用 密码算法分类与应用 通信的第三套国际加密和完整性 的标准算法,为ISO/IEC 国际标 准 SM1 Introduction of SM1 Rust China Conf 2022 – 2023, Shanghai, China • SM1 是分组加密算法,实现对称加密,分组长度和密钥长度都为 128 位,对长消息进行加解密时, 若消息长度过长,需要进行分组,如果消息长度不足,则要进行填充。 • 保证数据机密性。 • 算法安全保密强度及相关软硬件实现性能与 用例,也常用于区块链或网络安全密码协议,如SSL/TLS、 VPN。 • 保证数据机密性、真实性和完整性。 • SM2 算法和 RSA 算法都是公钥加密算法,SM2 算法是一 种更先进安全的算法,其性能与安全性优于RSA,在我们国 家商用密码体系中被用来替换 RSA 算法。 • 椭圆曲线可使用更少的运算位数来达成与RSA相等的 安全性 • 椭圆曲线与RSA的安全性都依赖于离散对数问题的复 杂程度 • 离散对数问题:已知数A,B,且A0 码力 | 44 页 | 3.70 MB | 1 年前3
共 39 条
- 1
- 2
- 3
- 4













