1) 第9页图1.5中main()函数内的“foo((short *)module_id);”应为“foo((short *)&module_id);”。(感谢wordswroth指正)
2) 第9页图1.6左下角图中0x1001地址处的值应为0,而不是1(感谢51cto博友fec_flying指正)。
3) 第11页的图1.9不严谨,因为没有指出b_变量的字节序。当b_变量的字节序是b_3、b_2、b_1、b_0时,图是错的;当字节序是b_0、b_1、b_2、b_3时,图是对的。(感谢xiemo011指正)
4) 第13页的第一段应放在其下“alignment restrictions”之后。
5) 第25页图3.1之下的那段文字在最后的句号前少了一个引号。
6) 第40页图3.51关于bar变量输出值应是y而不是x。(感谢xiemo011指正)
7) 第44页图3.67中的“main.c”应改为“foo.c bar.c baz.s”。(感谢黄少雄指正)
8) 第67页图3.122中的“prerequisite of rule”应在“command of rule”之前。(感谢yang fan指正)
9) 第68页图3.123中huge目录下少了一个src目录。(感谢李祥平指正)
10) 第75页第9行的“huge/code/foo/inc/foo.c”应为“huge/code/foo/src/foo.c”。(感谢李祥平指正)
11) 第82页第15行的“$(root)/code/foo/inc”应为“$(root)/code/bar/inc”。(感谢李祥平指正)
12) 第175页的图10.6应更正为如下:(感谢朱振华指正)
13) 第181页图10.15中的“subl $80, �p”应为“subl $80, %esp”。(感谢51cto博友gaoqiang362指正)
14) 第190页图11.4中的“./ptrmodel.exe”应为“./arraymodel.exe”。(感谢51cto博友eeleon指正)
15) 第194页图11.13中的“gcc define1.c wrong1.c -o wrong1.exe”应为“gcc define.c wrong.c -o wrong.exe”。(感谢51cto博友eeleon指正)
16) 第220页图13.16中的“proecess”应为“process”。
17) 第294页图20.16中的“task_start() timeout”应改为“task_sleep() timeout”。(感谢肖雪峰指正)
18) 第539页第一段中的“114~115”应为“144~145”。(感谢黄少雄指正)
19) 图29.4中,cat main.c.gcov应该改为foo.c.gcov。(感谢diy534指正)
20) 第583页最后一段中的全部.gcna应该改为.gcda。(感谢diy534指正)
21) 第606页图31.8中的“main<.c”应为“main.c”。