积分充值
 首页
前端开发
AngularDartElectronFlutterHTML/CSSJavaScriptReactSvelteTypeScriptVue.js构建工具
后端开发
.NetC#C++C语言DenoffmpegGoIdrisJavaJuliaKotlinLeanMakefilenimNode.jsPascalPHPPythonRISC-VRubyRustSwiftUML其它语言区块链开发测试微服务敏捷开发架构设计汇编语言
数据库
Apache DorisApache HBaseCassandraClickHouseFirebirdGreenplumMongoDBMySQLPieCloudDBPostgreSQLRedisSQLSQLiteTiDBVitess数据库中间件数据库工具数据库设计
系统运维
AndroidDevOpshttpdJenkinsLinuxPrometheusTraefikZabbix存储网络与安全
云计算&大数据
Apache APISIXApache FlinkApache KarafApache KyuubiApache OzonedaprDockerHadoopHarborIstioKubernetesOpenShiftPandasrancherRocketMQServerlessService MeshVirtualBoxVMWare云原生CNCF机器学习边缘计算
综合其他
BlenderGIMPKiCadKritaWeblate产品与服务人工智能亿图数据可视化版本控制笔试面试
文库资料
前端
AngularAnt DesignBabelBootstrapChart.jsCSS3EchartsElectronHighchartsHTML/CSSHTML5JavaScriptJerryScriptJestReactSassTypeScriptVue前端工具小程序
后端
.NETApacheC/C++C#CMakeCrystalDartDenoDjangoDubboErlangFastifyFlaskGinGoGoFrameGuzzleIrisJavaJuliaLispLLVMLuaMatplotlibMicronautnimNode.jsPerlPHPPythonQtRPCRubyRustR语言ScalaShellVlangwasmYewZephirZig算法
移动端
AndroidAPP工具FlutterFramework7HarmonyHippyIoniciOSkotlinNativeObject-CPWAReactSwiftuni-appWeex
数据库
ApacheArangoDBCassandraClickHouseCouchDBCrateDBDB2DocumentDBDorisDragonflyDBEdgeDBetcdFirebirdGaussDBGraphGreenPlumHStreamDBHugeGraphimmudbIndexedDBInfluxDBIoTDBKey-ValueKitDBLevelDBM3DBMatrixOneMilvusMongoDBMySQLNavicatNebulaNewSQLNoSQLOceanBaseOpenTSDBOracleOrientDBPostgreSQLPrestoDBQuestDBRedisRocksDBSequoiaDBServerSkytableSQLSQLiteTiDBTiKVTimescaleDBYugabyteDB关系型数据库数据库数据库ORM数据库中间件数据库工具时序数据库
云计算&大数据
ActiveMQAerakiAgentAlluxioAntreaApacheApache APISIXAPISIXBFEBitBookKeeperChaosChoerodonCiliumCloudStackConsulDaprDataEaseDC/OSDockerDrillDruidElasticJobElasticSearchEnvoyErdaFlinkFluentGrafanaHadoopHarborHelmHudiInLongKafkaKnativeKongKubeCubeKubeEdgeKubeflowKubeOperatorKubernetesKubeSphereKubeVelaKumaKylinLibcloudLinkerdLonghornMeiliSearchMeshNacosNATSOKDOpenOpenEBSOpenKruiseOpenPitrixOpenSearchOpenStackOpenTracingOzonePaddlePaddlePolicyPulsarPyTorchRainbondRancherRediSearchScikit-learnServerlessShardingSphereShenYuSparkStormSupersetXuperChainZadig云原生CNCF人工智能区块链数据挖掘机器学习深度学习算法工程边缘计算
UI&美工&设计
BlenderKritaSketchUI设计
网络&系统&运维
AnsibleApacheAWKCeleryCephCI/CDCurveDevOpsGoCDHAProxyIstioJenkinsJumpServerLinuxMacNginxOpenRestyPrometheusServertraefikTrafficUnixWindowsZabbixZipkin安全防护系统内核网络运维监控
综合其它
文章资讯
 上传文档  发布文章  登录账户
IT文库
  • 综合
  • 文档
  • 文章

无数据

分类

全部后端开发(23)Rust(23)

语言

全部中文(简体)(23)

格式

全部PDF文档 PDF(18)PPT文档 PPT(5)
 
本次搜索耗时 0.099 秒,为您找到相关结果约 23 个.
  • 全部
  • 后端开发
  • Rust
  • 全部
  • 中文(简体)
  • 全部
  • PDF文档 PDF
  • PPT文档 PPT
  • 默认排序
  • 最新排序
  • 页数排序
  • 大小排序
  • 全部时间
  • 最近一天
  • 最近一周
  • 最近一个月
  • 最近三个月
  • 最近半年
  • 最近一年
  • pdf文档 基于静态分析的Rust内存安全缺陷检测研究

    基于静态分析的Rust内存安全缺陷检测研究 报告人:徐辉 报告日期:2022.11.25 复旦大学 大纲 一、问题背景 二、Rust指针缺陷检测方法 三、实验结论 四、论文发表心得 大纲 一、问题背景 二、Rust指针缺陷检测方法 三、实验结论 四、论文发表心得 Rust语言 ❑ 系统级安全编程语言 ▪ 内存安全 ▪ 并发安全 ▪ 效率 2006年 2011年 Mozilla… Rust如何保障内存安全? ❑ 内存安全问题产生的主要原因之一是指针别名导致悬空指针 ▪ 手动释放内存或调用析构函数 ▪ 函数返回时发生的自动析构或内存释放 ❑ Rust设计的目标之一是编译时检查指针别名(共享可变引用) ▪ 但一般意义上的指针分析是NP-hard问题 ▪ 智能指针可行,但作为运行时方案,效率低 ▪ Rust在语法设计中引入所有权机制,简化指针分析问题 handling drop(_0) 返回值 Auto Memory Reclaim问题:示例2 创建未初始化的变量foo Panic将导致访问未初始化内存 大纲 一、问题背景 二、Rust指针缺陷检测方法 三、实验结论 四、论文发表心得 研究挑战和思路 ❑ 研究挑战:指针分析是NP-hard问题 ▪ 准确性:应采用路径敏感的指针分析算法,避免过多误报 ▪ 分析效率:应基于Rust MIR的特点对算法进行优化,使其可行
    0 码力 | 28 页 | 1.55 MB | 1 年前
    3
  • pdf文档 Rust 语言学习笔记

    掌握的基础知识,并且重新调整了目录结构。 我个人对 Rust 语言设计的看法主要是:重大创新,却又博采众长。 Rust 为了解决内存安全问题重新设计了类型系统,提出了所有权的概念,同时 为了能够解决当前大多数语言无法检测到的运行时错误,rust 创造性地设计了 无畏并发。Rust 借鉴了很多优秀语言的设计理念,以及快速迭代的社区,这些 都是 Rust 受到赞赏的重要因素。 Rust 是一门系统级编程语言,被设计为保证内存和线程安全,并防止段错误。 “零开销抽象”。理论上来说,它的速 度与 C / C++ 同级。 Rust 可以被归为通用的、多范式、编译型的编程语言,类似 C 或者 C++。与 这两门编程语言不同的是,Rust 是线程安全的! Rust 编程语言的目标是,创建一个高度安全和并发的软件系统。它强调安全性、 并发和内存控制。尽管 Rust 借用了 C 和 C++ 的语法,它不允许空指针和悬 挂指针,二者是 C 和 C++ 中系统崩溃、内存泄露和不安全代码的根源。 却不再让你担心内存安全问题,也不用再操心内存管理的麻烦,那 Rust 是如何做到这一点的?通过所有权。 3.1 所有权 3.1.1 绑定 首先必须强调下,准确地说 Rust 中并没有变量这一概念,而应该称为标识符, 目标资源(内存,存放 value)绑定到这个标识符。 { let x: i32; // 标识符 x, 没有绑定任何资源 let y: i32 = 100; // 标识符
    0 码力 | 117 页 | 2.24 MB | 1 年前
    3
  • pdf文档 Comprehensive Rust(简体中文) 202412

    https://google.github.io/comprehensive-rust/。如果您 在其他地方阅读,请在那里查看更新。 The course is also available as a PDF. 本课程的目标是教会你使用 Rust。假设你对 Rust 一无所知,本课程可以: • 帮助你全面理解 Rust 的语法和语言。 • 让你可以用 Rust 修改现有程序和编写新程序。 • 为你展示常见的 Rust 处理器。 • 并发:为期一天的课程,介绍 Rust 中的并发性。我们将涵盖传统并发(使用线程和互斥锁进行抢占 式调度)和 async/await 并发(使用 futures 进行协作式多任务处理)。 非目标 Rust 是一门庞大的语言,短短几天的课程无法覆盖其全部内容。本课程不包括以下内容: • 学习如何开发宏:请参阅 Rust Book 的第 19.5 章 和 Rust by Examples 对应章节。 C、C++ 和 Java 的互操作性。 你需要检出 AOSP。在同一机器上检出课程库,然后将 src/android/ 目录移至所检出的 AOSP 的根 目录。这将确保 Android 构建系统能检测到 src/android/ 中的 Android.bp 文件。 确保 adb sync 适用于你的模拟器或实际设备,并使用 src/android/build_all.sh 预构建所有 Android
    0 码力 | 359 页 | 1.33 MB | 10 月前
    3
  • pdf文档 Rust 程序设计语言 简体中文版 1.85.0

    将高级语言特性编 译成底层代码,并且与手写的代码运行速度同样快。Rust 努力确保代码又安全又快速。 这里提到的只是几个较大的受益群体,Rust 语言也希望能支持更多其他用户。总的来说, Rust 最重要的目标是消除数十年来程序员习以为常的取舍,让安全和高效、速度和易读易用 可以兼得。试试看 Rust,说不定它的选择就适合你。 本书适合哪些人 本书假设你已经有其他编程语言的经验,任何语言均可,我们力求让各种语言背景的人都能读 Rust 用来表明程 序因错误而退出。第九章 “panic! 与不可恢复的错误” 部分会详细介绍 panic。 使用 --release flag 在 release 模式中构建时,Rust 不会检测会导致 panic 的整型溢 出。相反发生整型溢出时,Rust 会进行一种被称为二进制补码 wrapping(two’s complement wrapping)的操作。简而言之,比此类型能容纳最大值还大的值会回绕 dollars of pain and damage in the last forty years. 我称之为我十亿美元的错误。当时,我在为一个面向对象语言设计第一个综合性的面 向引用的类型系统。我的目标是通过编译器的自动检查来保证所有引用的使用都应该 是绝对安全的。不过我未能抵抗住引入一个空引用的诱惑,仅仅是因为它是这么的容 易实现。这引发了无数错误、漏洞和系统崩溃,在过去四十年里可能造成了价值十亿
    0 码力 | 562 页 | 3.23 MB | 25 天前
    3
  • pdf文档 刘用涛 CnosDB时序数据库的Rust实践

    流式处理 3.2 流式处理 3.3 Rust 的锁 2. 异步死锁检测 https://github.com/tokio-rs/async-backtrace 1. sync rwlock parking_lot async rwlock tokio 1. 找出目标系统的三元组 {arch}-{vendor}-{sys}-{abi}
    0 码力 | 26 页 | 3.28 MB | 1 年前
    3
  • pdf文档 Rust 程序设计语言简体中文版

    将高级语言特性编 译成底层代码,并且与手写的代码运行速度同样快。Rust 努力确保代码又安全又快速。 这里提到的只是几个较大的受益群体,Rust 语言也希望能支持更多其他用户。总的来说, Rust 最重要的目标是消除数十年来程序员习以为常的取舍,让安全和高效、速度和易读易用 可以兼得。试试看 Rust,说不定它的选择就适合你。 本书适合哪些人 本书假设你已经有其他编程语言的经验,任何语言均可,我们尽可能让各种语言背景的人都能 Rust 用来表明程序因错误而退出。第九章 “panic! 与不可恢复的错误” 部分会详细介 绍 panic。 使用 --release flag 在 release 模式中构建时,Rust 不会检测会导致 panic 的整型 溢出。相反发生整型溢出时,Rust 会进行一种被称为二进制补码 wrapping(two’s complement wrapping)的操作。简而言之,比此类型能容纳最大值还大的值会回绕 dollars of pain and damage in the last forty years. 我称之为我十亿美元的错误。当时,我在为一个面向对象语言设计第一个综合性的面 向引用的类型系统。我的目标是通过编译器的自动检查来保证所有引用的使用都应该 是绝对安全的。不过我未能抵抗住引入一个空引用的诱惑,仅仅是因为它是这么的容 易实现。这引发了无数错误、漏洞和系统崩溃,在之后的四十多年中造成了数十亿美
    0 码力 | 600 页 | 12.99 MB | 1 年前
    3
  • pdf文档 Rust并行编译的挑战与突破

    用优秀的设计消减数据同步代价 读写分离 限制作用范围 COPY-WRITE机制 优化并行粒度 任务粒度与并行效率的关系 rayon库中的粒度控制函数 死锁的检测和处理 基于rayon线程池的自动触发式死锁检测 通过有向图环路检测移除死锁 Rust社区与并行编译 Rust社区与并行编译 18年1月由编译器团队成员提出 成立社区工作组 陷入技术阻塞,人员逐渐流失 编译器Roadmap寻求帮助
    0 码力 | 25 页 | 4.60 MB | 1 年前
    3
  • pdf文档 Hello 算法 1.1.0 Rust版

    一个国家,小 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 本书旨在通过清晰易懂的动画图解和可运行的代码示例,使读者理解算法和数据结构的核心概念,并能够通 过编程来实现它们。在此基础上,本书致力于揭示算法在复杂世界中的生动体现,展现算法之美。希望本书 具有可行性,能够在有限步骤、时间和内存空间下完成。 ‧ 各步骤都有确定的含义,在相同的输入和运行条件下,输出始终相同。 1.2.2 数据结构定义 数据结构(data structure)是计算机中组织和存储数据的方式,具有以下设计目标。 ‧ 空间占用尽量少,以节省计算机内存。 第 1 章 初识算法 hello‑algo.com 14 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 两者的详细对应关系如表 1‑1 所示。 表 1‑1 将数据结构与算法类比为拼装积木 数据结构与算法 拼装积木 输入数据 未拼装的积木 数据结构 积木组织形式,包括形状、大小、连接方式等 算法 把积木拼成目标形态的一系列操作步骤 输出数据 积木模型 值得说明的是,数据结构与算法是独立于编程语言的。正因如此,本书得以提供基于多种编程语言的实现。 约定俗成的简称 在实际讨论时,我们通常会将“数据结构与算法”简称为“算法”。比如众所周知的
    0 码力 | 388 页 | 18.50 MB | 1 年前
    3
  • pdf文档 Hello 算法 1.2.0 简体中文 Rust 版

    一个国家,小 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 本书旨在通过清晰易懂的动画图解和可运行的代码示例,使读者理解算法和数据结构的核心概念,并能够通 过编程来实现它们。在此基础上,本书致力于揭示算法在复杂世界中的生动体现,展现算法之美。希望本书 各步骤都有确定的含义,在相同的输入和运行条件下,输出始终相同。 1.2.2 数据结构定义 数据结构(data structure)是组织和存储数据的方式,涵盖数据内容、数据之间关系和数据操作方法,它具 有以下设计目标。 第 1 章 初识算法 www.hello‑algo.com 14 ‧ 空间占用尽量少,以节省计算机内存。 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 两者的详细对应关系如表 1‑1 所示。 表 1‑1 将数据结构与算法类比为拼装积木 数据结构与算法 拼装积木 输入数据 未拼装的积木 数据结构 积木组织形式,包括形状、大小、连接方式等 算法 把积木拼成目标形态的一系列操作步骤 输出数据 积木模型 值得说明的是,数据结构与算法是独立于编程语言的。正因如此,本书得以提供基于多种编程语言的实现。 约定俗成的简称 在实际讨论时,我们通常会将“数据结构与算法”简称为“算法”。比如众所周知的
    0 码力 | 387 页 | 18.51 MB | 10 月前
    3
  • pdf文档 Hello 算法 1.0.0 Rust版

    间下完成。 ‧ 各步骤都有确定的含义,在相同的输入和运行条件下,输出始终相同。 1.2.2 数据结构定义 「数据结构 data structure」是计算机中组织和存储数据的方式,具有以下设计目标。 ‧ 空间占用尽量少,以节省计算机内存。 第 1 章 初识算法 hello‑algo.com 14 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 两者的详细对应关系如表 1‑1 所示。 表 1‑1 将数据结构与算法类比为拼装积木 数据结构与算法 拼装积木 输入数据 未拼装的积木 数据结构 积木组织形式,包括形状、大小、连接方式等 算法 把积木拼成目标形态的一系列操作步骤 输出数据 积木模型 值得说明的是,数据结构与算法是独立于编程语言的。正因如此,本书得以提供基于多种编程语言的实现。 � 约定俗成的简称 在实际讨论时,我们通常会将“数 在算法设计中,我们先后追求以下两个层面的目标。 1. 找到问题解法:算法需要在规定的输入范围内可靠地求得问题的正确解。 2. 寻求最优解法:同一个问题可能存在多种解法,我们希望找到尽可能高效的算法。 也就是说,在能够解决问题的前提下,算法效率已成为衡量算法优劣的主要评价指标,它包括以下两个维 度。 ‧ 时间效率:算法运行速度的快慢。 ‧ 空间效率:算法占用内存空间的大小。 简而言之,我们的目标是设计“既快又省
    0 码力 | 383 页 | 17.61 MB | 1 年前
    3
共 23 条
  • 1
  • 2
  • 3
前往
页
相关搜索词
基于静态分析Rust内存安全缺陷检测研究语言学习笔记Comprehensive简体中文简体中文202412程序设计程序设计文版中文版简体中文版1.85刘用涛rustconf0615并行编译挑战突破Hello算法1.11.21.0
IT文库
关于我们 文库协议 联系我们 意见反馈 免责声明
本站文档数据由用户上传或本站整理自互联网,不以营利为目的,供所有人免费下载和学习使用。如侵犯您的权益,请联系我们进行删除。
IT文库 ©1024 - 2025 | 站点地图
Powered By MOREDOC AI v3.3.0-beta.70
  • 关注我们的公众号【刻舟求荐】,给您不一样的精彩
    关注我们的公众号【刻舟求荐】,给您不一样的精彩