From e29928af3da316bffe6e17da7d9ae6a4d3bf830c Mon Sep 17 00:00:00 2001 From: Unknown Date: Wed, 10 Apr 2013 02:44:22 -0400 Subject: [PATCH] 02.1.md --- eBook/02.1.md | 60 ++++++++++++++++++++++++++++++++++++++++ eBook/images/2.1.gc.jpg | Bin 0 -> 33332 bytes 2 files changed, 60 insertions(+) create mode 100644 eBook/images/2.1.gc.jpg diff --git a/eBook/02.1.md b/eBook/02.1.md index ced5967..0d8e32e 100644 --- a/eBook/02.1.md +++ b/eBook/02.1.md @@ -13,3 +13,63 @@ - [Golang中国](http://golang.tc) #2.1 平台与架构 +( ***译者注:由于 Go 语言版本更替,本节中的相关内容经原作者同意将被直接替换而不作另外说明*** ) + +Go 语言开发团队开发了适用于以下操作系统的编译器: + +- Linux +- FreeBSD +- Mac OS X(或者 Darwin) + +这里有2个版本的编译:Go 原生编译器 gc 和非原生编译器 gccgo,这两款编译器都是在类 Unix 系统下工作 。其中,gc 版本的编译器已经被移植到 Windows 平台上,并集成在主要发行版中。这两个编译器都是以单通道的形式工作。 + +你可以获取以下平台上的 Go 1.1 源码和二进制文件: + +- FreeBSD 7+:amd64 和 386 架构 +- Linux 2.6+:amd64、386 和 arm 架构 +- Mac OS X(Snow Leopard + Lion):amd64 和 386 架构 +- Windows 2000+:amd64 和 386 架构 + +对于非常底层的纯 Go 语言代码或者包而言,在各个操作系统平台上的可移植性是非常强的,只需要将源码拷贝到相应平台上进行编译即可,或者可以使用交叉编译来构建目标平台的应用程序(第2.2节)。但如果你打算只用 cgo 或者类似文件监控系统的软件,就需要根据实际情况进行相应地修改了。 + +1. Go 原生编译器 gc: + + 主要基于 Ken Thompson 先前在 Plan 9 操作系统上使用 C 工具链。 + + Go 语言的编译器和链接器都是使用 C 语言编写并产生本地代码,Go 不存在自我引导之类的功能。因此如果使用一个有不同指令集的编译器来构建 Go 程序,就需要针对操作系统和处理器架构(32 位操作系统或 64 位操作系统)进行区别对待。 + + 这款编译器使用不同代、无压缩和并行的方式进行编译,它的编译速度要比 gccgo 更快,产生更好的本地代码,但编译后的程序不能够使用 gcc 进行链接。 + + 编译器目前支持以下基于 Intel 或 AMD 处理器架构的程序构建。 + + ![](images/2.1.gc.jpg?raw=true) + + 图2.1 gc 编译器支持的处理器架构 + + 当你第一次看到这套命名系统的时候你会觉得很奇葩,不过这些命名都是来自于 Plan 9 项目。 + + g = 编译器:将源代码编译为项目代码(程序文本) + l = 链接器:将项目代码链接到可执行的二进制文件(机器代码) + + (相关的 C 编译器名称为 6c、8c 和 5c,相关的汇编器名称为 6a、8a 和 5a) + + **标记(Flags)**是指可以通过命令行设置可选参数来影响编译器或链接器的构建过程或得到一个特殊的目标结果。 + + 可用的编译器标记如下: + + flags: + -I DIR search for packages in DIR + -d print declarations + -e no limit on number of errors printed + -f print stack frame structure + -h panic on an error + -o file specify output file // see § 3.4 + -S print the generated assembly code + -V print the compiler version // see § 2.3 (7) + -u disable package unsafe + -w print the parse tree after typing + -x print lex tokens + + 在 Go 1.0.3 版本开始,不再使用 8g,8l 之类的指令进行程序的构建,取而代之的是统一的 `go build` 和 `go install` 等命令,而这些指令会自动调用相关的编译器或链接器。 + +2. 的 \ No newline at end of file diff --git a/eBook/images/2.1.gc.jpg b/eBook/images/2.1.gc.jpg new file mode 100644 index 0000000000000000000000000000000000000000..11a64eab18d40e312ea76abaa68984f2bb9bad32 GIT binary patch literal 33332 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 z zaX;nzd9$T=EWltm(utT@ZkSZmz+J?jl zLkYu!f|GMy@pPt)T+LHo{DQYHcvEwt{F8#z$>oX^8N9rf4_?O&tCcWyNLhFB>MYh#Q(#~ctoajq-L^VsKW+T zm+sT(%d0Ybo{qg6wLKVB1GH%%`^URUm&B${X94#uzM*11v-Lm(NaX!#WxwV9i|zdT zRo#DOXak}qT_Ef9$M!#3n%^%I|Fa3~_shipyf6N@l#%a<)ndI8Gm>8Cy2GkHZtT`P z=W#WpDJPsXZ)92eshJoZ9QPxeIsATW9d`K^lMeDo6C9$r|H6p=s`B@{(f|Le@WXxI zA1|UgGT|kHtxzYu@|xY}i8_hf@|7MxpY>N+xg0i^$-ADUky{{a#|0j2-| literal 0 HcmV?d00001