洛佳 组件化驱动、ROM运行环境与RustSBI第三届中国Rust开发者大会 组件化驱动、ROM运行环境与RustSBI 洛佳 华中科技大学 网络空间安全学院 2023年6月 本次演讲…… 关于我…… • 笔名洛佳 • 华中科技大学网络空间安全学院研一 在读(导师:周威老师) • 研究方向:物联网安全、系统安全 • 热爱开源,乐于尝试新技术 • RustSBI项目维护者 • 致力于向科研、教学和产业界推广 Rust语言 Rust语言 汲取Rust嵌入式和操作系统生态经验,总 结而成的新一代驱动开发方法。动、静态 基地址结合,高灵活性;一次开发,同时 复用于嵌入式、固件和内核中。 # 组件化驱动 合理利用嵌入式、桌面和服务器芯片片内 ROM代码,构造零开销的运行环境。进一 步地,可完成安全引导、安全镜像分发和 通常的嵌入式开发等功能。 # ROM运行环境 # 2023年的RustSBI 作为RISC-V 作为RISC-V SBI固件的RustSBI,2023年 将与UEFI、LinuxBoot擦出火花。在驱 动、环境和SBI接口的基础上,提供快速 实现具体引导流程的解决方案。 目录 组件化驱动 第 01 部分 什么是组件化驱动? 运 用 生 命 周 期 、可 变 性 等 最 新 的 编 程 语 言 理 论 成 果 ,构 造 适 应 开 发 需 求 的 驱 动 程 序 。可 结 合 过 程 宏 等 工0 码力 | 21 页 | 3.12 MB | 1 年前3
刘用涛 CnosDB时序数据库的Rust实践第三届中国Rust开发者大会 CnosDB时序数据库的Rust实践 Yongtao Liu CnosDB 研发工程师 Rust China Conf 2023 CnosDB 是一款基于 Rust 开发的 开源的分布式时序数据库 1. CnosDB 架构与选型 2. 为何从 Go 切换到 Rust 3. 使用 Rust 经验分享 4. 反哺社区 linker=$gcc_prefix-gcc 指示rustc采用的C链接器程序 cross 提供了 “零设置” 的交叉编译 rust crate 它提供了一个环境、交叉工具链和交叉编译库,可以生成最便携的二进制文件 3.4 Rust 交叉编译 1. IO 异步化 平台兼容性 隔离阻塞 IO 异步化 2. io_uring 性能有40%提高 3.50 码力 | 26 页 | 3.28 MB | 1 年前3
新一代分布式高性能图数据库的构建 - 沈游人新一代分布式高性能图数据库的构建 北京海致星图科技有限公司 2023-06-18 沈游人 数据库与大数据专场 海致简介—企业级知识图谱开创者 专业顶尖技术团队支撑 超 700 人团队,其中 80% 为技术人员,创始团队在完成全球第一个中文知 识图谱网站研发后,探索知识图谱技术在企业领域的应用。 2021 年,海致院 士专家工作站成立,站内清华大学计算机博士生占比达 90% 以上。 高性能图计算是高性能计算、图计算两项技术融合产生的新的技术方向,满足人们对更大规模、更复 杂数据的实时处理和存储需求,是计算机领域竞争新战略制高点。 产学结合、协同创新,打造全球领先的国产自研图数据库 AtlasGraph ,培育世界级的图计算软硬件 生态体系,保持对全球科技竞争的战略均衡。 海致高性能图计算院士专家工作站 海致获得“ 2021 年 CCF 科学技术奖科技进步卓越奖” CCF 生活中无处不在的图 图分析技术分类 图查询 • 使用图数据库的查询语言进行点边搜索 图算法 • 中心性算法 • 社区算法 • 路径算法 • … 图深度学习 • 图嵌入 • 图卷积 • 图注意力网络 • 图自编码器 图查询及其应用场景 图查询 • 使用图数据库的查询语言进行点边的关联查询,可以快速完成传统数据库难以完成的 多度点边关 联 当前图的典型应用场景 路径识别 群体挖掘0 码力 | 38 页 | 24.68 MB | 1 年前3
Rust 程序设计语言 简体中文版 1.85.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 12.4. 采用测试驱动开发完善库的功能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 工具、嵌入式设备、音视频分析与转码、加密货币、生物信息学、搜索引擎、物联网 (IOT)程序、机器学习,甚至是 Firefox 浏览器的重要部分。 开源开发者 Rust 适合那些希望构建 Rust 编程语言、社区、开发工具和库的开发者。我们非常欢迎你为 Rust 语言作出贡献。 7/562Rust 程序设计语言 简体中文版 重视速度和稳定性的开发者 Rust 适合那些渴望在编程语言中寻求速度与稳定性的开发者。对于速度来说,既是指 控 制流结构。在 Rust 中,创建自定义类型需要用到结构体和枚举。 第七章介绍 Rust 的模块(module)系统,其中的私有性规则用来组织代码和公开的 API(应 用程序接口)。第八章讨论标准库提供的常见集合数据结构,例如 Vector(向量)、字符串和 Hash Map(散列表)。第九章探索 Rust 的错误处理的理念与技术。 第十章深入介绍泛型(generic)、Trait 和生命周期0 码力 | 562 页 | 3.23 MB | 1 月前3
Rust 程序设计语言简体中文版.............................................................................. 278 12.4. 采用测试驱动开发完善库的功能 ................................................................................ 293 12.5. 处理环境变量 (IOT)程序、机器学习,甚至是 Firefox 浏览器的重要部分。 7/600 Rust 程序设计语言 简体中文版 开源开发者 Rust 适合那些希望构建 Rust 编程语言、社区、开发工具和库的开发者。我们非常欢迎你为 Rust 语言作出贡献。 重视速度和稳定性的开发者 Rust 适合那些渴望在编程语言中寻求速度与稳定性的开发者。对于速度来说,既是指 Rust 可 以运行的多快,也是指编写 制流结构。在 Rust 中,创建自定义类型需要用到结构体和枚举。 第 7 章介绍 Rust 的模块(module)系统,其中的私有性规则用来组织代码和公开的 API(应 用程序接口)。第 8 章讨论标准库提供的常见集合数据结构,例如 Vector(向量)、字符串和 Hash Map(散列表)。第 9 章探索 Rust 的错误处理的理念与技术。 第 10 章深入介绍泛型(generic)、Trait0 码力 | 600 页 | 12.99 MB | 1 年前3
Comprehensive Rust(简体中文) 202412. . . . . . . . . . . . . . . . . . . . . . . . 78 IV 第二天:下午 79 15 Welcome Back 80 16 标准库类型 81 16.1 标准库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 16.2 文档 . use、super、self . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 26.5 练习:面向 GUI 库的模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 26.5.1 解答 . . . . . . . . . . . 33.1 Rust 二进制文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 33.2 Rust 库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 34 AIDL 191 34.1 /**0 码力 | 359 页 | 1.33 MB | 11 月前3
Rust在Substrate 开发框架中的使用Substrate 开发框架 中的使用 内容 ● Rust 简介 ● Rust 特性 ● Why blockchain ● 什么是Substrate ● Substrate Runtime 组件 ● Substrate 应用开发 Bugs from Chrome Rust 简介 Performance Safety C, C++ Java JS, Python Rust 简介 Substrate ● Libra Rust in blockchain Why blockchain? 后端: ● 开发语言:Java, Ruby ● 框架:Spring,Rails ● 数据库:Postgres, MySQL ● 自动化测试 ● CI / CD ● 部署云服务:AWS,阿里云 web 2.0 开发 前端:HTML, Javascript, CSS ● React app chain特点: ● Runtime 安全有开发者完全负责 ● 获取链上所有状态 ● 高度定制化,包括共识,通证,交易 方式 一个开源、模块化、可扩展的区块链开 发框架,涵盖了区块链的核心组件: ● Database layer ● P2P ● PoS ● Transaction pool ● Full / light client ● Runtime modules Substrate简介0 码力 | 37 页 | 967.22 KB | 1 年前3
Rust HTTP 协议栈在终端通信场景的实践 - 胡凯HTTP 协议 借助于 Rust 异步能力的热门 Rust HTTP 协议库或应用库: Hyper reqwest actix-web axum Rust China Conf 2022 – 2023, Shanghai, China Rust 与 HTTP 协议 hyper 是一个高效且功能完整的 HTTP 协议底层库,可以支持高层的应用软件使用 HTTP 协议。 ✓ Rust 异步实现 Rust China Conf 2022 – 2023, Shanghai, China Rust 与 HTTP 协议 reqwest 是基于 hyper 实现的高性能、易用的 HTTP 客户端库。 ✓ Rust 异步实现 ✓ 支持明文、JSON、Multipart 的 body 类型 ✓ 支持 HTTP Proxy ✓ 支持 HTTPS ✓ 支持 Cookies Rust China body 自动解压缩 ✓ 支持 multipart Rust China Conf 2022 – 2023, Shanghai, China Rust 与 HTTP 协议 以上 Rust HTTP 库主要支持的场景特点: ➢ 并发量、吞吐量需求较高 ➢ 网络环境稳定 ➢ 不太需要体现交互界面 ➢ 不太关注资源使用 比较适合构建浏览器、大型 WEB 服务器等。 终端 HTTP 通信场景浅析0 码力 | 26 页 | 1.25 MB | 1 年前3
简谈 Rust 与国密 TLS - 王江桐Algorithms and Protocols #2 国密算法与协议介绍 Huawei Ylong Rust Cryptographic Framework #4 华为 Ylong Rust 密码库 国密算法总览 Overview to Shangmi Cryptography Section #1 • 密码算法安全目标 • 密码算法分类 • 国密套件总览 密码算法安全目标 Security Study of Vulnerabilities in Cryptographic Libraries”,MIT; • 对于8个大型、通用、开源的 C 与 C++ 密码库进行调研; • 现有的问题在于: • 密码库导致的一些错误,除了本身包含的一些算法错误以及内存错误,其他的一些问题出在用户的使用错 误,即文档、API、等相关说明的缺失; • 37.2%的漏洞在于实现时的系统内存错误,其中19 Rust 社区中对于国密的支持较弱; • C 社区中 GmSSL 等库提供完整国密能力支持,提供对应优化;Rust 社区中,对于下载量超过 1W 且 半年内有更新、在维护期的国密套件库,仅有 RustCrypto 和 libsm,未审核,且缺少安全协议功能支 持,在性能上也可以进一步优化。 华为 Ylong Rust 密码库 Huawei Ylong Rust Cryptographic Framework0 码力 | 44 页 | 3.70 MB | 1 年前3
使用Rust与ClickHouse构建高效可靠的日志系统使用Rust与ClickHouse构建高 效可靠的日志系统 刘炜 腾讯云(专有云) • 自我介绍 • 系统介绍 • 整体架构 • 系统实现 • 遇到问题 大纲 自我介绍 • 大龄码农 • 做过嵌入式/CDN/数据库开发 • 从C/C++到Rust • 现在在腾讯云(专有云)从事日志系统的开发 自我介绍 PhoTto / image / chart 系统介绍 系统介绍 • 属于腾讯专有云PaaS平台(TCS) 属于腾讯专有云PaaS平台(TCS) • 承接TCS底座日志 • 从Loki=>Menicus • 提供日志的搜索/报警/处理等功能 系统介绍 • 为什么放弃 Loki • 资源占用过大 • 统计/计算能力比较弱 • 组件过多,排查问题比较困难 • 商业使用不友好的开源协议 • 为什么选择Mencius+ClickHouse • 存储计算与业务分离 • 计算/统计能力更强 • 资源占用更小,性能更好 • 更友好的开源协议 物化列 • Lowcardinality(Stri ng) • 加速查询 • Skipping Indexes • 日志全文索引 问题 • Rust • Lifetime侵入性比较强 • 库质量参差不齐 • ClickHouse • 可运维性弱 • 强Schema带来不够灵活的缺点 • 全文索引支持比较弱 Thank you!0 码力 | 19 页 | 2.66 MB | 1 年前3
共 35 条
- 1
- 2
- 3
- 4













