导读:
对微软技术比较了解的可能知道Windows的同一个版本号的build经常被分为chk和fre,chk表示Checked,fre表示Free。主要的区别在于,checked build有traces和asserts,而free build没有。
但是,checked和free是怎么出现的呢?因为传统的用词一般是debug和retail(或者release)。
当Windows NT还处在开发阶段的时候,开发组的人还在用“debug”和“retail”。Debug和Retail的不同在于编译时的选项:
Compiler Optimization:开、关
Debug Traces:开、关
Assertions:开、关
Sanity checks:开、关
传统来说,Debug是“Optimization:关,Traces:开,Assertions:开”,Retail是“O:开,T:关,A:关”。后来,NT团队加入了Sanity checks的选项。本来,Sanity check在内部版本中有,在发布的时候会移除掉。
于是,NT的团队就有了“O:开,T:开,A:开,S:开”,“O:开,T:关,A:关,S:开”和“O:开&#
对微软技术比较了解的可能知道Windows的同一个版本号的build经常被分为chk和fre,chk表示Checked,fre表示Free。主要的区别在于,checked build有traces和asserts,而free build没有。
但是,checked和free是怎么出现的呢?因为传统的用词一般是debug和retail(或者release)。
当Windows NT还处在开发阶段的时候,开发组的人还在用“debug”和“retail”。Debug和Retail的不同在于编译时的选项:
Compiler Optimization:开、关
Debug Traces:开、关
Assertions:开、关
Sanity checks:开、关
传统来说,Debug是“Optimization:关,Traces:开,Assertions:开”,Retail是“O:开,T:关,A:关”。后来,NT团队加入了Sanity checks的选项。本来,Sanity check在内部版本中有,在发布的时候会移除掉。
于是,NT的团队就有了“O:开,T:开,A:开,S:开”,“O:开,T:关,A:关,S:开”和“O:开&#