当前位置:   article > 正文

《深入Rust标准库》阅读第一章笔记_深入rust标准库 pdf

深入rust标准库 pdf

购买链接:https://3.cn/1ZIF-JAp
在这里插入图片描述
推荐大家购买原版书籍观看

第一章主要介绍Rust标准库的体系,让我们从整体上对Rust标准库有一个全面的了解。

Rus标准库的构成组件被开发者精细设计,这是由Rust的设计目标和现代编程语言的特征决定的。在这些组件中,CORE库是基础,ALLOC库及 STD库都是基于CORE库的。
Rust完美地实现了对各种CPU架构及OS平台的兼容。

  • Rust标准库文档:https://doc.rust-lang.org/std/index.html
  • The Rust Programming Language: https://editor.csdn.net/md?not_checkout=1&spm=1011.2124.3001.6192&articleId=139129457
  • Rust Atomics and Locks:https://marabos.nl/atomics/

// CORE库是基础,ALLOC库及 STD库都是基于CORE库
/// rust标准库分为3个部分:
/// 1. CORE:语言核心库,可用于OS内核编程与用户态编程,是与硬件CPU架构无关的可移植性库
///     1.1.编译器内置固有(intrinsic)函数:编译器包括内存操作函数、数学函数、位操作函数、原子变量操作函数等。这些函数通常与CPU硬件架构紧密相关,且一般需要使用汇编代码来提供最佳性能。固有函数是由编译器实现的,提供给程序调用的函数,因此也实现了对不同CPU架构的适配。
///     1.2.基本特征(Trait):CORE库的基本特征包括运算符(OPS)Trait、编译器Marker Trait、选代器(Iterator) Trait、类型转换Trait 等。
///     1.3.Option/Result类型:不是编译器的内嵌类型,与其他类型相比,也毫无特别之处,但它们通常被认为是Rust 中不可或缺的语法组成部分
///     1.4.基本数据类型:包括整数类型、浮点类型、布尔类型、字符类型和单元类型,重点对这些类型实现基本特征及一些特有函数。例如,字符类型实现了Unicode 及ASCII不同编码的处理雨数;整数类型及浮点类型实现了数学函数及字节序变换函数。
///     1.5.数组、切片及Range类型:包括对这些类型实现基本特征及一些特有函数
///     1.6.内存操作:内存操作包括 alloc模块、mem模块、pt模块。Rust中90%的不安全(unsafe)语法都可归结到这3个模块。
///     1.7.字符串及格式化:字符串及格式化包括对字符串类型实现基本特征及一些特有函数。在这些实现中,格式化需要重点关注。
///     1.8.内部可变性类型:内部可变性类型包括UnsafeCell<T>、Cell<T>、RefCell<T>等,同样对这些类型实现基本特征及一些特有函数。
///     1.9.其他:其他内容包括FFI、时间、异步库等。
/// 2.ALLOC:ALLOC库的所有类型都基于堆内存,包括智能指针类型、集合类型、容器类型。这些类型与为这些类型实现的函数和Trait组成了ALLOC库的主体。ALLOC库仅依赖于CORE,适用于OS内核编程与用户态编程。
///     2.1.内存申请与释放:Allocator Trait 及其实现者 Global 单元类型
///     2.2.基础智能指针类型:Box<T>、RC<T>
///     2.3.动态数组智能指针类型:RawVec<T>、Vec<T>
///     2.4.字符串智能指针类型:String
///     2.5.并发安全基础智能指针类型:Arc<T>
///     2.6.集合类型:LinkList<T>、VecQueue<T>、BTreeSet<T>、BtreeMap<T>等
/// 3.STD:STD库建立在OS的系统调用(SYSCALL)基础上,只适用于用户态编程。STD库最主要的工作是针对OS资源设计RRust的类型、Trait 及函数
///     3.1.对CORE库及ALLOC库的内容进行映射。
///     3.2.实现进程管理与进程问通信。
///     3.3.实现线程管理、线程间临界区/互斥锁、消息通信及其他线程相关内容
///     3.4.实现文件、目录及OS环境。
///     3.5.实现输入、输出。
///     3.6.实现网络通信。
///

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/702670
推荐阅读
相关标签
  

闽ICP备14008679号