标签:
1. 可重入函数
(1)不使用静态变量和全局非const变量
(2)不使用锁
(3)不调用任何不可重入函数
(4)使用volatile防止寄存器缓存变量
See Aslo :
CPU的乱序执行,会使得对共享变量的访问变得不可知
2. 线程
用户使用的是用户态线程,Kernel运行的是内核态的线程
OS会限制内核线程的数量,内核线程上下文切换代价较高
3. 构建(build)
预编译:处理宏、条件编译、注释等
编译:把高级语言编译优化成汇编语言
汇编:把汇编翻译成机器指令
链接:
4. 编译:
(1)词法分析:把源代码分割成一系列Token
(2)语法分析:生成语法树
(3)语义分析:将语法树的表达式标识类型
(4)目标代码的生成与优化
标签:
原文地址:http://www.cnblogs.com/aoun/p/5794937.html