赞
踩
购买链接:https://3.cn/1ZIF-JAp
推荐大家购买原版书籍观看
第一章主要介绍Rust标准库的体系,让我们从整体上对Rust标准库有一个全面的了解。
Rus标准库的构成组件被开发者精细设计,这是由Rust的设计目标和现代编程语言的特征决定的。在这些组件中,CORE库是基础,ALLOC库及 STD库都是基于CORE库的。
Rust完美地实现了对各种CPU架构及OS平台的兼容。
// 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.实现网络通信。
///
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。