介绍

从计算机组成原理了解到操作系统,当一个程序开始运行的时候,不论是可执行程序还是命令行,都会从创建进程,申请进程资源开始,再到堆栈(stack/heap) 的使用,申请与释放资源。这一系列操作对于编程来说重要性不言而喻,只不过根据编程语言的高级程度不同,开发者需要掌握的知识也有不同。

而在rust语言编程中,内存的管理方式及其重要。所以这一层主要先介绍虚拟内存管理以及相关出现的内容安全问题,接着介绍rust是如何通过所有权、作用域和生命周期,引申出借用、移动语义、复制语义等一系列内容来解决内存安全问题。

Rust语言架构


  
  
  
    
  
  Ownership SystemProgramming ParadigmType SystemMemory ManagementLanguage Architecture

Rust语言版本说明

image-20220728101929348

Rust编译步骤


  
  
  
    
  
  Rust CodeUTF-8TokensASTHIRMIRLLVMIR101010101010TokenizationParsingDowngradeDowngradeOptimizeOptimize2018 Edition Code2015 Edition Code

Rust编译过程与宏展开

这里主要参考下列内容


  
  
  
    
  
  cratesproc_macroproc_macro2SynQuoteProcedural MacrosTokenStreamproc_macro2::TokenStreamASTTokenStreamRust Macro ExplainerCode TextTokenStreamASTHIRLLVM IRRustc Compile FrontendMIRmachineinstruction codeLLVM Compile BackendDeclarative MacrosTokenStreamRustc Macro ExplainerexpandexpandRust Compile Process and Macro Expand

参考资源

online-book

fragment

local