Skip to content

Commit

Permalink
1
Browse files Browse the repository at this point in the history
  • Loading branch information
YiRanCN committed Oct 19, 2023
1 parent 9f79739 commit 89783d6
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 0 deletions.
4 changes: 4 additions & 0 deletions docs/study/program/C/构建工具.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,10 @@

在 linux 上编译一个工程需要先调用./configure,大部分 linux 开源项目都使用 autotools 编译架构来生成 configure 这个脚本文件。通过在执行./configure,产生 Makefile,src/Makefile,config.h,为下一步编译做准备。随后调用 make 进行编译。

GNU 构建系统,是利用脚本和 make 程序在特定的平台上构建软件的过程。一般过程是 configure,make,make install 三部曲。这种方式成为一种习惯,被广泛使用。
为了简化可移植构建的难度,早期有一套 AutoTools 的工具帮助程序员构建软件。configure,make,make install 三部曲,大多都是基于 Auto Tools 来构建的。Auto Tools 是 GNU 程序的标准构建系统。

### 参考

- [CSDN-Autotools 笔记](https://blog.csdn.net/qq_27870421/article/details/99621737)
- [简书-Autotools 工具](https://www.jianshu.com/p/b3b0a090a01e)
30 changes: 30 additions & 0 deletions docs/study/program/Rust/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Rust

一门赋予每个人构建可靠且高效软件能力的语言。

创建这个新语言的目的是为了解决一个顽疾:软件的演进速度大大低于硬件的演进,软件在语言级别上无法真正利用多核计算带来的性能提升。Rust 是针对多核体系提出的语言,并且吸收一些其他动态语言的重要特性,比如不需要管理内存,比如不会出现 Null 指针等等。

Rust 致力于成为优雅解决高并发和高安全性系统问题的编程语言 ,适用于大型场景,即创造维护能够保持大型系统完整的边界。这就导致了它强调安全,内存布局控制和并发的特点。标准 Rust 性能与标准 C++性能不相上下。

### 为什么选择 Rust

#### 高性能

Rust 速度惊人且内存利用率极高。由于没有运行时和垃圾回收,它能够胜任对性能要求特别高的服务,可以在嵌入式设备上运行,还能轻松和其他语言集成。

#### 可靠性

Rust 丰富的类型系统和所有权模型保证了内存安全和线程安全,让您在编译期就能够消除各种各样的错误。

#### 生产力

Rust 拥有出色的文档、友好的编译器和清晰的错误提示信息, 还集成了一流的工具——包管理器和构建工具, 智能地自动补全和类型检验的多编辑器支持, 以及自动格式化代码等等。

### 内存管理

Rust 不像 Go,Java 以及.NET Framework 那样使用自动垃圾回收系统。不同的是 Rust 通过 RAII 来管理内存和资源,还可选引用计数。Rust 以低开销提供资源确定性管理。Rust 也支持值的栈分配并不表现暗箱。

### 参考

- [官方网站](https://www.rust-lang.org/zh-CN)
- [百度百科-Rust 语言](https://baike.baidu.com/item/Rust%E8%AF%AD%E8%A8%80/9502634)

0 comments on commit 89783d6

Please sign in to comment.