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写教学操作系统尝试用RUST写教学操作系统 向勇、陈渝 清华大学计算机系 20181123 1 背景 • 用什么语言写操作系统? – 汇编 – C – C++ – GO – RUST – … 2 3 各位老师所教的课程信息统计 计算机组成原理 编译原理 操作系统 其他 A B C D 提交 多选题 1分 此题未设答案 我们的尝试-教学操作系统ucore 7 我们的尝试-系统类课程的协调 8 用RUST写操作系统: 2018年春季操作系统课 http://os.cs.tsinghua.edu.cn/oscourse/OS2018spring/projects#A.2Bi.2F56C4u.2Bi6FbnpqMkAli6Q- 9 用RUST写操作系统: 2018年秋季操作系统专题训练课 18 RUST对Linux安全漏洞的安全性增强(2) 19 正在进行的工作 • 形成一组基于RustOS的操作系统课实验 https://rucore.gitbook.io/rust-os-docs/bootloader 20 后续工作 • 适合操作系统开发的语言剪裁 – 汇编 – C – Rust – … – 什么是适合内核开发的语言特征? 21 220 码力 | 23 页 | 1.53 MB | 1 年前3
.NET玩转音视频操作 FFmpeg.NET Conf China 2022 .NET玩转音视频操作 FFmpeg 周杰 (来自长沙) Handshakes by DC Frontiers https://github.com/sdcb/Sdcb.FFmpeg 扫码下载代码示例和PPT 命令行 优点:容易学习、入门方便、不与GPL开源协议冲突 基于进程互操作,依赖于标准流重定向管理状态 输入和输出依赖于文件,很难精细控制0 码力 | 14 页 | 1.43 MB | 1 年前3
2.3 用golang写一个操作系统系 统 复睿:李四保 ⽤用Golang ⾃自我介绍 l 开发过银⾏行设备 l 同花顺移动证券 l 前后参与创⽴立过多家公司 l ⽤用Golang写了⼀一个云操作系统 电⼒力、⽯石化、银⾏行、证券、⼲⼴广电、电商 研发、产品、运营、公司运营 l 多种职业 l 喜欢各种宗教 l 喜欢在虚⽆无中创造⼀一个世界 l 多个⾏行业 ⾃自我介绍 说⼀一万句,不如做⼀一件事:⽤用Golang写⼀一个操作系统 来份硬菜:⽤用Golang写⼀一个操作系统 l 操作系统 相对完整的控制系统资源,有应⽤用体系 Unix,CP/M,dos、windows, l ⽣生态操作系统 在原有操作系统内核基础上,构建新的应⽤用体系及应⽤用⽣生态 ios、android l 云操作系统 chrome chrome os和阿⾥里云os。在上⼀一层操作系统基础之上和⾃自家的云系统进⾏行整合 l 去中⼼心化的云操作系统 Leither 架构基本和chrome os类似,只是将后端的云系统去中⼼心化,使之脱离巨头的控制 操作系统历史 l 互联⺴⽹网正在整合各个⾏行业,对各个传统⾏行业进⾏行重构 l 互联⺴⽹网的格局正在固化 ⾏行业巨头垄断互联⺴⽹网资源,全⾯面压制创新空间0 码力 | 33 页 | 1014.12 KB | 1 年前3
Rust OS 开源操作系统训练营的教与学-0615-李明第三届中国Rust开发者大会 Rust OS 开源操作系统训练营的教与学 李明 清华大学 2023-6-17 Rust China Conf 2023 Rust OS 开源操作系统训练营的教与学 1 Rust OS 开源训练营的起因和发展 Title Title Title 开源操作系统训练营的起源(2020年) 陈渝老师 向勇老师 OS Tutorial Summer 训练营的愿景和目标 目标 愿景 核心产出 探索新一代安全高性能操作系统的设计与构建 影响并培养更多的人学会写操作系统 每年为高校和企业培养1000名操作系统开发人才 参加训练营要回答的三个问题 你为什么要来参加这个活动? 为什么要以开源 的方式来参与? 我们如何能把这些 知识技能学到? Rust OS 开源操作系统训练营的教与学 2 开源训练营的总体规划和教学实践 教什么?怎么学? RISC-V体系结构 一阶段 完成94道Rustlings编程题 (2周) OS 大实验 rCore/uCore 内核 二阶段 完成5个OS编程大实验 (2周) ArceOS 组件化 操作系统 三阶段 Hypervisor 虚拟化技术 四阶段 完成1个OS组件或驱动 (4周) 完成1个硬件虚拟化适配 (4周) 台阶式向上迈进 训练营的教学/实习安排 • 春夏季训练营0 码力 | 26 页 | 2.62 MB | 1 年前3
在Solana合约链实现IBC协议跨链互操作 - 苏胤榕第三届中国Rust开发者大会 @DaviRain 在Solana合约链 实现IBC协议跨链互操作 简单介绍下IBC协议是什么,及其生态 简介 > 介绍IBC协议和其在跨链互操作中的作用 IBC协议中的角色和参与者 1. 客户端 2. 连接 3. 通道 4. 包 4. 中继器 解释为什么选择在Rust合约链中实现IBC协议 - I Hermes的开发实现: https://github.com/DaviRain-Su/hermes 展望IBC协议在跨链互操作中的未来发展 1. 基于IBC协议的全链去中心化交易所(已经有了), 衍生资产市场等。 2. 基于IBC协议的全链应用(类似WeChat 或许会出 现) 3. 更加高效的支持跨链互操作,随着协议的不断发展 与进化。 4. 更多的区块链平台的支持。(例如这里的这套方案, 可以将任何链的共识看作0 码力 | 29 页 | 3.05 MB | 1 年前3
RISC-V 开放架构设计之道 1.0.0将变革世界,本书将助您成为这次变革的一部分。 ——迈克尔·贝德福特·泰勒(Michael B. Taylor),华盛顿大学教授 本书对于 RISC-V ISA 的所有从业人士来说是十分宝贵的参考。操作码按几种有 用的格式呈现,便于快速查阅,也易于汇编代码的开发和解释。此外,书中关于 如何使用 RISC-V 的阐释和示例能让程序员的工作更轻松。书中 RISC-V 和其他 ISA 的对比很有趣,也展示了 求无符号余数 R REMU rd,rs1,rs2 跨步取数 R VLDS rd,rs1,rs2 索引取数 R VLDX rd,rs1,rs2 类别 名称 类型 RV32A (原子操作) 存数 S VST rs2,imm(rs1) 取数 预订取数 R LR.W rd,(rs1) 跨步存数 R VSTS rd,rs1,rs2 AMOSWAP.W rd,rs2,(rs1) 原子交换 R AMOSWAP rd,rs1,rs2 加 加 R AMOADD.W rd,rs2,(rs1) 原子加 R AMOADD rd,rs1,rs2 逻辑 异或 R AMOXOR.W rd,rs2,(rs1) 原子异或 R AMOXOR rd,rs1,rs20 码力 | 223 页 | 15.31 MB | 1 年前3
RISC-V 手册 v2(一本开源指令集的指南)......................................................................................... 62 第六章 原子指令 ................................................................................................ ............. 76 8.4 向量的 Load 和 Store 操作 ...................................................................................................... 78 8.5 向量操作期间的并行性 .................................. 嵌入式系统中的用户模式和进程隔离 ............................................................................ 104 10.5 现代操作系统的监管者模式 ..........................................................................................0 码力 | 164 页 | 8.85 MB | 1 年前3
现代C++ 教程:高速上手C++11/14/17/20. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 元组基本操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 运行期索引 . . . . . . . . . . . . . . . . . . . . . . 66 7.5 原子操作与内存模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 原子操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 9.2 noexcept 的修饰和操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 9.3 字面量 . . . . .0 码力 | 83 页 | 2.42 MB | 1 年前3
Golang 101(Go语言101 中文版) v1.21.a如何编译和运行Go程序 Go编程入门 第4章:程序源代码基本元素介绍 第5章:关键字和标识符 第6章:基本类型和它们的字面量表示 第7章:常量和变量 - 顺便介绍了类型不确定值和类型推断 第8章:运算操作符 - 顺便介绍了更多的类型推断规则 第9章:函数声明和调用 第10章:代码包和包引入 第11章:表达式、语句和简单语句 第12章:基本流程控制语法 第13章:协程、延迟函数调用、以及恐慌和恢复 第34章:值复制成本 第35章:边界检查消除 并发编程 第36章:并发同步概述 第37章:通道用例大全 第38章:如何优雅地关闭通道 第39章:其它并发同步技术 - 如何使用sync标准库包 第40章:原子操作 - 如何使用sync/atomic标准库包 第41章:Go中的内存顺序保证 第42章:一些常见并发编程错误 内存相关 第43章:内存块 第44章:关于Go值的内存布局 第45章:一些可能的内存泄漏场景 o代码结构 有一个大概的印象。 编程和程序代码元素 简单来讲,编程可以看作是以各种方式控制和组合计算机运行中的各种操作,以达 到各种各样的目的。 一个操作可能从一个硬件设备读取、或者向一个硬件设备写入 一些数据,从而完成一个特定的任务。 对于现代计算机来说,最基本的操作是底层 计算机指令,比如CPU和GPU指令。 常见的硬件设备包括内存、磁盘、网卡、显卡, 显示器、键盘和鼠标等。 直接操0 码力 | 591 页 | 21.40 MB | 1 年前3
共 483 条
- 1
- 2
- 3
- 4
- 5
- 6
- 49













