我的地盘我做主! 博客:http://tester2test.cnblogs.com/   msn:win_soft@163.com

GCC 术语表

上一篇 / 下一篇  2007-04-24 12:11:06 / 个人分类:其他


#gm+j^4q.Sd0 absolute address (绝对地址)

yD)F|u9D.oJ0 51Testing软件测试网/XX9{aH^1?@Z

绝对地址是一个惟一的可用来指定某个内存字节的数字数值。参见相对地址。

o5pLs1}MWO B0

address (地址)

c(V&X(oGn5GyD@7EV0参见绝对地址和相对地址。 51Testing软件测试网Ox,|v jJ

aggregate (聚集)

51Testing软件测试网t5uNi t,^W

包含多于一个基本数据类型的数据类型。例如,数组是一种聚集, C 的结构( struct )也是。

"n+|:| j nw/t0

aliasing (别名机制)

c)\T:q6Y2^ h6`5p0同一内存地址可直接或间接地通过两个或多个不同名字(可能还有不同的数据结构)进行访问,这被叫做别名。由于在寄存器中保留数值是比较常见的做法,因此这是对于优化采取的特殊考虑。

hC4[4Ebz/y(v0

ANSI ( American National Standards Institute ,美国国家标准协会)

5T"s*}K8d,o_ZB En0管理和协调美国自发标准的组织。 51Testing软件测试网n/x.Y$z Ibp+w"YG.n8Q

archive (文档)

-`+|w0U A,V/x8h4B0参见库。 51Testing软件测试网S[;lv kQf0^

assembler (汇编器)

51Testing软件测试网2\%kV|(w,})U

一个平台相关的程序,它读取汇编语言源文件(机器代码的助记表示)并将其翻译为作为连接程序输入的二进制目标文件。

%Vn E-uNKC2q|^-k0

backtrace (回退跟踪)

51Testing软件测试网3eG+]9W1^-~2e0M&oC

GNU 调试器可以打印函数名和地址的列表,它会被调用以达到程序的当前执行点。这些信息,包括函数地址和参数值,称为回退跟踪。

R+q#GXBs5a0

BFD ( Binary File Descriptor ,二进制文件描述字 )

8HnPXO0C+A7wh0包含处理各种二进制文件格式完成各种底层操作的例程的库。

mBm [jD/? `0

BSD ( Berkeley Software/Standard Distribution , Berkeley 软件 / 标准发行)

51Testing软件测试网hh!GM b!K\-l1i

一种 UNIX 操作系统。它也是几种其他现代 UNIX 系统的基础。参见 SVR4 。 51Testing软件测试网*M.Hd*Z2J

bss

51Testing软件测试网[| p7X6x7D;SZ

由 UNIX 连接程序生成的可执行文件的未初始化数据段。它包含的数据只有地址但不包含任何空间。因此,直到程序被加载时才会分配空间。在可执行文件中, bss 变量只被赋以名字、尺寸和位置。参见 text 和 data 。

'd-Q-DR/Y0

built in function (内嵌函数)

51Testing软件测试网E+JCO9uk!fS

由编译程序所生成的函数体称为内嵌函数。一个内嵌函数可以是相应标准库函数的优化版本、编译程序的附加功能或是实现诸如变长参数列表等内部使用的函数。 51Testing软件测试网@1q6~9\\Q]w"W

bytecode (字节码)

V;keqN8K7T"A0编译 Java 程序所生成的目标代码的可移植形式。字节码由 Java 虚拟机解释以执行 Java 程序。 51Testing软件测试网t#Y8c3uf#E

C89

@7qMRf;K;`0b01989 ANSI C 标准。

I?}Z$U.jC ]0

C99

51Testing软件测试网 s&W(?nW V:P#H

1999 ANSI C 标准。 51Testing软件测试网HI3_kq/_

calling convention (调用规范)

.cq?~s0参见调用序列。

jJT Kf*u2k0EslY0

calling sequence (调用序列)

WU&ZY!V0用来调用函数的汇编语言的语句序列。该序列设置需要传递的参数、保存返回的地址以保证可以找到调用函数,执行调用并管理返回值(如果有的话)。也叫做调用规范。 51Testing软件测试网 ]dqLI6y1x@2K g*}y

CCP ( Conditional Code Propagation ,条件代码传播)

xv rOET ~0一种优化技术,可以发现某值对所有可能的执行路径均为常量,并用这一事实来探测和删除不可能被执行的代码。 51Testing软件测试网4Qa e'ewX#kp

cfront

51Testing软件测试网a+e@)n n3?7F2X+y4W

最初的 C++ 实现是一个称为 cfront 的 AT&T 程序,它将 C++ 源代码翻译为 C 源代码。 51Testing软件测试网0U0J!YGU'v"}

class (类)

51Testing软件测试网,bZb,Xe$zkH

1. 在面向对象编程中,一个类就是一个对象类型的定义。由它所生成的对象,由于它们具有相同的接口和行为集,称它们属于同一类。 2. 在 Java 中,包含已编译类的文件称为类文件,或简称为类。 51Testing软件测试网7_2Lf:]t`6H {

clobber (破坏)

Df)Ym9q0F|0如果存储位置(通常为一个寄存器)已经被用作一个临时工作区,它就不再保存所预期的数值,这个存储位置就称为被破坏( clobbered )了。

`oKjx Z0

CNI ( Cygnus Native Interface , Cygnus 本地接口)

T1P,s8s1d{R0在 C++ 中,用于编写本地 Java 方法的工具。参见 JNI 。

${:Z(D:Vc0

code (代码)

51Testing软件测试网5IS'Q C"poj O0ny

这个术语是指计算机上运行的任何形式的指令列表。代码可以是所有形式,从人可读的编程源码到机器可读的操作码的位模式。 51Testing软件测试网#U6m,zg Ow|

code propagation (代码传播)

0K&hN2Wzt r ~'s w0参见 CPP 。 51Testing软件测试网b+v|.z7?!w N

coercion (自动转换)

1e[%^M`0由一种基础数据类型到另一种的自动转换(没有强制类型转换或函数调用)。 51Testing软件测试网8o9kd^O;cESQpG;g

COFF ( Common Object File Format ,通用目标文件格式)

\E4BXmd y0一种可跨系统移植的并由各种不同的汇编器和连接程序所了解的目标文件的标准格式。参见 ECOFF 和 XCOFF 。 51Testing软件测试网d I3]N'`#Ps6TTN/E

COMDAT ( Common Data ,通用数据)

可以在不只一个目标文件中被复制的一种数据或可执行项(或项目的集合)。当将目标
`SQ3|erI"D0
Yd%v6h.C8mY&~1[0文件和库或可执行体组合起来时,连接程序会去掉所有通用数据,只留下其中一份数据。这也称为合拢或通用数据合拢。 51Testing软件测试网)K'^q o ~QZ,z5Bp

 51Testing软件测试网W ^)UnG4R2n$f$D

common (通用)

C8Xs"Q`0可为公用块分配的全局变量属性。 51Testing软件测试网;n P#Q [K

common block (公用块)

51Testing软件测试网;\ @8\:so,M#F^ ^i:`HS

GNU 连接程序创建一个公用块作为全局变量的分配空间。如果不同的目标文件多次声明了相同的全局变量,它们会被解析为公用块中单独的一个变量。参见 COMDAT 。 51Testing软件测试网6dz@ wF'gw8R]

compilation unit (编译单元)

51Testing软件测试网OA CC#\q

可被编译为单独目标文件的单独源代码单位。它通常就是单独的一个源文件,但也可以包含其他辅助编译的源代码(如 C 程序中 #include 文件)。也称为翻译单元。

Ic&m7o;U U$Z8X ~0

compiler (编译程序)

rQ.T{h\0读取计算机程序的源文件(或文本文件)的软件集合,可将指令翻译成计算机可执行的格式。编译程序也称为翻译器( translator )。 51Testing软件测试网6O1r-f;L8h y9D

copyleft (版权所属)

51Testing软件测试网-W,\$hW E6Y

同通用许可证,它声明程序是自由软件并且所有修改和扩展的软件版本均可以自由发行。参见 GPL 。 51Testing软件测试网iA%wfddk;@o

cross compile (交叉编译)

v8G(CD@0使用一种编译程序创建在完全不同平台上执行的可执行文件。 51Testing软件测试网,^S Z9RE|#UW

CPP ( C Preprocessor , C 预处理程序)

DN8i5O1e0预处理程序读取程序源码,并处理其中的指示字以产生源码的修改版本。 51Testing软件测试网,l&j)v7xk9n

cruft

51Testing软件测试网+Z XO#O:YB-P\-h

随着软件的发展,以及经历了修改 bug 和更新的若干周期,它的部分代码已不再使用但仍然保留在源码中。这种代码称为 cruft 。 cruft 的尺寸范围可由一两行无用代码到整个源文件模块。由于很难识别 cruft ,去除 cruft 往往很困难。

x)l W#u(~ M([3{0

CSE ( Common Subexpression Elimination ,通用子表达式消除)

.@:[X#^:HL(h-|&^0一种优化技术,它可以识别重复的表达式并重用它的值,而不是再次执行相应的计算。参见 GCSE 。

S,f$S5L)P$Fw~+G0

ctor

51Testing软件测试网.uEy uR9? DP x

构造函数 constructor 的通用缩写。参见 dtor 。 51Testing软件测试网l4L'w Fs p/Z z'p

CVS ( Concurrent Version System ,同步版本系统)

`$sb4M` s`:q0一种版本控制系统,它可以维护文本文件的版本历史信息。设计它是为使广泛分布于各地的不同开发者可同时访问。 51Testing软件测试网;K;[]oMMH)CjD

data

y:_:]4TB]"V%K1V0由 UNIX 连接程序生成的可执行文件的一部分,其中包含的数据具有初始值。该段包含的项具有名字、大小,且会分配相应的空间包含它的数值。参见 bss 和 text 。 51Testing软件测试网wB9\mi(KyQ

DBX

51Testing软件测试网b6Y&^BIm

一种交互式调试器,它可以用来一行行地跟踪程序的执行。 DBX 是一种命令行调试器,但在许多变体中它具有 X GUI 界面和 emacs 界面。 51Testing软件测试网md$L)b oH Y

DCE ( Dead Code Elimination ,不可达代码去除 )

kFPL7h5u0J*bd0一种删除不可能被执行的代码的优化技术。

p-JBy*K'v.Y4ZJ0

dead code (不可达代码)

.^3E r#A)t }0在优化期间,可能留下某些代码但从不会被执行。这些就是不可达代码。优化器应该去除这些代码。

:W)_k%C;s0DoG ?t0

demangle

51Testing软件测试网&uU9lcN$zB;v,M

解析出编码在已经拆分( mangle )了的函数名中的描述信息的过程。参见 mangle 。

8D]agPbQ){D0

deprecated (已废止的)

51Testing软件测试网aHZJr,~8[

任何不再需要的编译程序的选项或功能(或是因为某些原因而认为不再恰当的)被称为是已废止的。它仍然存在但在以后的编译程序版本中可能去除。 51Testing软件测试网NW ]7[2` |1u.~Q|

dereference (去引用)

51Testing软件测试网x&Iv(|[0^

表达式可能会涉及保存在指针中的地址。用这种方式使用的指针就称为是去引用的。

[,Udr:D:m(y9Y0

directive (指示字)

51Testing软件测试网4v,A$?,S RWrK2?+k

1. 源代码中使用井号 (#) 开头的命令,它由预处理程序处理。 2. 在汇编语言中,一条指示字就是一条针对汇编器的指令,而不是产生代码的操作码。汇编器指示字也称为伪操作。

OCcP-@/NK0

distention (膨胀)

\mlE,_*nC&K)B0该名字用于某些特定 Fortran 语言扩展,现在均认为非常“丑陋”而不该使用。通过 -fugly-* 标记, g77 可支持某些扩展。 51Testing软件测试网 C5`!S~&J

dtor

51Testing软件测试网 DK0H| _G,aO

析构函数 destructor 的通用缩写。参见 ctor 。

&c`0P'[&I:E[)T0

DWARF ( Debugging With Attribute Format ,带属性的调试格式)

P PDEo+tn0一种用来在目标代码中插入调试信息的格式。 51Testing软件测试网vn#x$afb ]+b

DWARF2 ( Debugging With Attribute Format 2 ,带属性的调试格式 2 )

51Testing软件测试网m)e1[Q~

DWARF 的更新版本,该格式用来在目标代码中插入调试信息。

%e!s"_:J0b}+}-r0

dynamic library (动态库)

7Y`f:Y|'K]0参见库。 51Testing软件测试网;G"S;r#^8w

ECOFF ( Extended Common Object File Format ,扩展通用目标文件格式)

51Testing软件测试网_n.Y0w0s'RG

目标文件的标准格式,它具备系统间的可移植性,且不同汇编器和连接程序均了解该格式使用。参见 COFF 和 XCOFF 。 51Testing软件测试网}/H%V%|&J3a,S9W

EH

gjS{&H8Cd8ui0异常处理( exception handling )的缩写。

xo/L%CmCB0

elaborate (详细阐述)

51Testing软件测试网 D{Y$Y^E

在 Ada 中,执行前的最后一步是通过插入必要的初始值和可执行指令来详细阐述代码,通常需要同一程序中其他编译单元的内容。参见可预阐述( preelaborable )。

7w.Q!_c4q:{x9y0

elaboration (详细阐述)

51Testing软件测试网-@5l.x-A9W,R

在 Ada 语言中,详细阐述是所需的详细阐述软件包的过程。

5o csll|j5lDF"o&[0

ELF ( Executable and Linkable Format ,可执行和可链接格式)

O&yo/cO&q ?M U?0Linux 二进制目标文件格式,它包含动态加载库和可执行代码的信息。 ELF 由 COFF 格式演变而来,与 COFF 非常近似。 51Testing软件测试网-J*S B,oa0W N0YUG

elide (省略)

51Testing软件测试网${'F`"F5q6f(qo

一个被省略的函数就是使用调用者返回位置作为工作空间(而非建立自己的内部工作空间)返回数值的函数,之后它会将返回值复制到返回地址中。优化器可以省略函数调用。 51Testing软件测试网wdc9[}:Kug

entry point (入口点)

51Testing软件测试网(_'c~ZD$Hd*c

可执行程序中的地址,程序从这里开始执行并称为入口点。 51Testing软件测试网V-Nh}*@ D0V9z5\_

fetch (读取)

W:W9P]"^ q9P G.p0当计算机由内存中的程序读取指令并加载到 CPU 执行时,这称为指令的读取。参见预取( prefetch )。 51Testing软件测试网)}N1B Gz7mX x#y$QH

FPU ( Floating Point Unit ,浮点处理单元)

&HXeR&OC1B0同 CPU 一起工作处理浮点操作的硬件处理器。没有 FPU 的计算机将需要软件来仿真浮点操作。 51Testing软件测试网'}4~&RVl

folding (合拢)

#g'nZ4x |R0参见 COMDAT 。 51Testing软件测试网G3Vjn%t5p0SS3O

frame (栈)

51Testing软件测试网Z,uV"zZyS.f.T

参见堆栈框架。

l,o{&g*J&oy0

function (函数)

51Testing软件测试网z@%\nbzN

函数是一块可执行代码,它被赋予一个名字并可以在其他位置调用。一个函数也可以被定义为带有参数,它指定一列由调用者传递的参数值。参见成员函数和方法。

g;Xw%dq(@0

garbage collection (无用信息收集)

}1y.h!V(~"g&oU'k+q?0一个运行的程序的过程,它可以自动恢复动态分配但不再使用的内存。实现该过程有许多机制,但所有这些均可以被认为是无用信息收集。 51Testing软件测试网b7qU f7F!L[0g5t|

GCSE ( Global Common Subexpression Elimination ,全局公用子表达式去除)

51Testing软件测试网G,A EG#CT T

一种优化技术,它可以识别重复的表达式并重用它的数值,而不是再次执行相应的计算。参见 CSE 。

;o"njk t#_0

GNAT ( GNU Ada Translator , GNU Ada 翻译器)

51Testing软件测试网^ v&DU1XTt

原 Ada 前端的名字,现已成为 GCC 的一部分。 51Testing软件测试网5NP&[(vu }0NZ I&\0z

GNATS ( GNU Bug Tracking System , GNU 错误跟踪系统)

用来跟踪 GCC 和其他 GNU 软件错误的在线系统。 51Testing软件测试网y L\"L7Mi&{W
51Testing软件测试网5ono|0w gP
GOT ( Global Offset Table ,全局偏移表) 51Testing软件测试网mae IgS3}

目标文件中包含一组偏移的表格,可用来重新定位可执行代码。参见 PIC 。 51Testing软件测试网2}!^+BWK2Kx

GPL ( General Public License ,通用公共许可证)

)h"q"J k}0aA#tS(KCAH0一种许可证,在其许可下软件被编写为 copyleft 格式的自由软件。

| w|;n4B0

header (头文件)

6kV)L+R!B%ZS%UZ;l;Q5Y1d0由预处理程序执行 include 指示字并被包含在源文本文件中的文件。在 C , C++ 和 Objective C 中,传统上它是后缀为 .h 的文件。 51Testing软件测试网} @%Y||i7S

Hollerith field ( Hollerith 字段)

51Testing软件测试网;u.xe+^cRo] r*w4? q

在 Fortran 中,引用的字串被保存为字符数,后面跟着的是字符本身。可以用 Hollerith 字段创建字符串,它是一个长度后跟一个 H 字母以及字符串(例如, 10HPhillips66 )。

~?XR/P6{^ \0

host (主机)

aY9t'Q-b4y0参见平台。

'Yzr,_&_X+J6C0

i18n

]*s(_4]&~,F0单词 internationalization 的简写形式,它由字母 i 开头,后跟 18 个字符,最后是字母 n 。参见 l10n 。 51Testing软件测试网5@|C,z#\1[ b p/g

if-conversion ( if- 转换)

51Testing软件测试网O:jiw i7r%?_

一种优化过程,它会修改已生成的代码,以便分支之后的最可能被采用的路径比不可能采用的路径更有效。 51Testing软件测试网2D o`AUB;W:J

immediate (立即数)

51Testing软件测试网.oM7P \V+wN

一个立即数值是一个常量,可以在汇编语言操作码中作为操作数使用。 51Testing软件测试网 b,KF1j#H8k3V l

include guard (包含文件防护)

W` C'_$n7v ])f2G8g0习惯上使用预处理程序条件编译命令来定义一个环境变量,它可以在头文件的最先部分进行检测,以防止头文件被再次编译。如果变量尚未定义,头文件就会被编译了。 51Testing软件测试网:jAq"oA4I

induction variable (归纳变量)

51Testing软件测试网;I3FE@T2b%^gO

一种在循环体内递增的变量。循环计数器。 51Testing软件测试网:S5z"{*Z3B2z(ru

inline (内联)

7M*WI(X+aV0一个函数的实体(或其他相似的语言成分)被包含在函数的调用点。就是说函数体将在代码中内嵌展开,而不是只作为对另一处函数体的一次调用。 51Testing软件测试网}d6gTq5O y{

insn

sw4X%@XJ.A6E9LLG0一种机器语言或 RTL 中间语言指令。该语言具有许多特殊用途的 insn ,但最重要的一些构成了一种元汇编语言,可被翻译为目标机器上的汇编语言指令。

g,Vm&N5oV0

instantiation (实例化)

l+W~w2k0由类定义创建对象实例。

M%yC5{ n0

intrinsic (特质)

l0GhPE3f)a.D W0在 Fortran 中,特质函数是一种内嵌函数,由于它可以不声明而直接使用,因此被视为语言的一部分。

E+{ j3ENIN8|0

invariant expression (不变表达式)

-YAs"B,V3KN0循环体内的表达式,每次循环时所计算的数值是不变量,在优化时可以转移到循环外。

h `%GXv!u)s0R0

ISO ( International Organization or Standardization ,国际标准化组织)

51Testing软件测试网TJD;`q_ t

一个成立于 1946 年的国际标准组织, ISO 的成员来自 75 个国家的标准组织,包括 ANSI 。 51Testing软件测试网6V^ kx7|0xteZ

jar

51Testing软件测试网 yN+QF2rRN T]X

一种包含一个或多个 Java 类文件的档案文件。该文件还包含一个清单,是一个包含 jar 文件中类名列表的文本文件。 51Testing软件测试网 sUb:Iwj

Java Virtual Machine ( Java 虚拟机)

,xv7kd+g)U ^.x~0参见 JVM 。 51Testing软件测试网DP]GF

JNI ( Java Native Interface , Java 本地接口)

/nNfW1VA]0一种标准编程接口,用于编写 Java 本地方法和将 JVM 嵌入到本地应用中。参见 CNI 。

4}| Ln.Sa0

JVM ( Java Virtual Machine , Java 虚拟机)

51Testing软件测试网Q|@h j'[6tD

一个程序,它可从标准 Java 字节码格式的文件中读取指令并执行。向一个平台上移植 JVM 和标准类库实际上就是向该平台移植了所有的 Java 程序。 51Testing软件测试网B Y.Kw6H2h-R V

l10n

eD Ls6R \E~'\0单词 localization 的简写,其起始字母是 l ,其后是 10 个字母,结尾字母是 n 。参见 i18n 。 51Testing软件测试网$Rv-[(yUW5t

lexical analysis (词法分析)

;S%BT*EA0也称为词法扫描,词法分析就是从程序源文件中读取输入字符流,并按照某种方式组合它们,形成名字、数字以及标点。由一些字符集合构成的单元称为一个 token 。 51Testing软件测试网'|{#RC!@ G2[D3g

LGPL ( Lesser General Public License ,次要的通用公共许可证)

't_9[}|Q0w9v*B0该许可证可用于某些(但不是全部) GNU 库。该许可证允许库函数用于某些私有程序,通常这是 GPL 所不允许的。 51Testing软件测试网tZL!U kR(T9h6a R)K}

library (库)

u k.Z&X*u+R6S0库是一个包含一个或多个目标文件的文件,它可以链接到其他目标文件组成可执行文件。静态库就是包含由连接程序永久链接到可执行程序的模块的库。静态库也称为文案。共享库就是包含可以临时链接到可执行程序并在执行时进行真正链接的模块的库。共享库也称为动态库。动态链接的程序就是包含到这些函数的引用的可执行程序,当程序执行时,它会从动态库中加载这些函数。参见静态库和相对地址。

f+H#lnCb0

life analysis (生命周期分析)

6E d0}%N$Oi0确定哪个数值应该留在寄存器中可供后用的过程,同时也确定哪个寄存器不会被使用,因为其中包含的数值不再使用。 51Testing软件测试网1H/a qhM2R3|"| v/s

link editor (链接编辑器)

51Testing软件测试网8?"dc!Q/{6y8s%i

与连接程序相同。

ZC8m+w8v&C7r]0

linkage (链接)

51Testing软件测试网0r5T]`G

当调用函数时,必须用标准方法来存储和读取传递给函数的参数以及函数所返回的数值。这种协议称为链接,而且是混合两种语言时要解决的主要问题。 51Testing软件测试网2JR-j9T`w6L%k6c

linker (链接程序)

51Testing软件测试网B%[8X*H X.U;Xd

一种平台相关的程序,可将一组目标文件(某些必须由库中析取)组合在一起生成一个可执行程序。

fo2x[8w0W/i0

lvalue (左值)

51Testing软件测试网0j1m:A8G*{w

一种任意类型的表达式,可以解析为内存单元的某个地址。这个术语源于 left value ,就是指赋值语句中左边的部分的值。参见右值( rvalue )。 51Testing软件测试网Rm-uj+Lcfu+` G


+x E Gg gbEKe0
G b@'SN0G9pM0
测试者家园 2006-11-27 22:39 发表评论

^'NG?i0
9~\r]8~x0Link URL: http://www.cnblogs.com/tester2test/archive/2006/11/27/574447.html

TAG:

 

评分:0

我来说两句

Open Toolbar