《Linux环境编程——从应用到内核》勘误表

238 views
Skip to first unread message

Gao Feng

unread,
Jul 10, 2016, 7:43:17 AM7/10/16
to linux...@googlegroups.com
  1. 序:“高峰负责第0123412131415章,李彬负责第5章至第11章。”更正为“高峰负责第012312131415章,李彬负责第4章至第11章。
  2. 第零章,0.4.5:mutex_thread函数遗漏"return NULL;";
  3. 第零章,0.4.5:sleep_thread函数遗漏"return NULL;"
  4. 第一章,1.4.5:需要增加三个头文件:"sys/types.h, sys/stat.h>, fcntl.h"
  5. 第一章,1.7.1:注释vfs_write时,“检查文件是否支持打开操作”更正为“检查文件是否支持操作”
  6. 第一章,1.11.3:前两个“Strick位”更正为“stick位”;
  7. 第一章,1.11.3:Stick标志位解析的源码中,“判断上级目录是否设置了stick标志位”;这里上级目录,其实想表达的是文件所处的目录,更正为“当前目录”;
  8. 第一章,1.12.3:将open("test.pid", OWRONLY)更正为open("test.pid", OWRONLY|O_CREAT, 0600);
  9. 第二章,2.10:P60,函数定义mkstemp和__gen_tempname前面多了一个“#”
  10. 第三章,3.4:P79,在“执行set_env_string”时,应该更正为“退出set_env_string”
  11. 第三章,3.5.2:将gcc -Wall -shared 4_5_2_dlib.c -o libdlib.so更正为3_5_2_dlib.c; 本节中后面的4_5_2都更正为3_5_2;
  12. 第三章,3.7.3:longjmp在C++代码中的问题,遗漏了func1的定义。完整的代码在这个位置:https://github.com/gfreewind/aple_codes/blob/master/chapter3/3.7.3/3_7_3_longjmp_trap2.c
  13. P133页,4.72.:示例程序第3行“waited”,更正为“waitpid
  14. P136页,“那么autoreaper就等于false”更正为“那么autoreap就等于false”
  15. 第五章,5.3,P181:“Linux是多任务系统,存在多个可运行进程的情况下,”—— 多了一个“在”字;
  16. 第八章,8.2.1, P340: 两个NTPL应该是NPTL;—— 感谢华贵斌
  17. 第十一章,P441:mmap(NULL,stat_buf.st_size+MB"在MB前少了一个1;—— 感谢彭东林

Gao Feng

unread,
Jul 12, 2016, 4:35:30 AM7/12/16
to 《linux环境编程》讨论组
高纳德老爷子,是悬赏一个错误1美元。

我没老爷子的高度,一个错误一人民币红包吧:) 
欢迎大家指正。第二个问题,就是一个网友指出的——红包已发。

华贵斌

unread,
Jul 22, 2016, 2:43:48 AM7/22/16
to 《linux环境编程》讨论组
Page 340: 两个 NTPL应该是NPTL

Gao Feng

unread,
Jul 22, 2016, 6:38:03 AM7/22/16
to linux...@googlegroups.com
呼唤 @李彬 大侠发红包1元~~~~ 

玩笑~,我已经发了

Li Bin

unread,
Jul 22, 2016, 8:36:01 PM7/22/16
to 《linux环境编程》讨论组
感谢,华贵斌。
感谢高峰代我发了红包。

话说怎么直接发红包啊,要读者的微信号吗。

Gao Feng

unread,
Jul 23, 2016, 1:06:35 AM7/23/16
to 《linux环境编程》讨论组
我已经拉你进微信群了?是我那个QQTCP/IP技术讨论群的微信版本

Message has been deleted

Donglin Peng

unread,
Oct 24, 2016, 11:08:52 AM10/24/16
to 《linux环境编程》讨论组
發現一處錯誤:

1.7.1 P32在註釋vfs_write的時候, 應該是“檢查文件是否支持寫操作”,而不是“檢查文件是否支持打開操作”。

Gao Feng

unread,
Oct 24, 2016, 9:15:25 PM10/24/16
to 《linux环境编程》讨论组
谢谢~,已在首页添加

彭東林

unread,
Oct 26, 2016, 10:57:09 AM10/26/16
to 《linux环境编程》讨论组
發現一處錯誤:

P63, 在函數mkstemp和__gen_tempname前面多了一個'#'號。

Gao Feng

unread,
Oct 26, 2016, 8:51:26 PM10/26/16
to 《linux环境编程》讨论组
多谢,已添加在首页

彭東林

unread,
Oct 27, 2016, 10:54:11 AM10/27/16
to 《linux环境编程》讨论组
發現一處錯誤:

P79  原話是“在執行set_env_string的時候,test_env已經不存在了”, 有誤, 應該是“在退出set_env_string的時候,test_env已經不存在了”。

彭東林

unread,
Oct 29, 2016, 6:49:01 AM10/29/16
to 《linux环境编程》讨论组
發現一處問題:

P119 4.6.1 原話“所以寫exit(-1)結束進程時”, 應該是“所以寫_exit(-1)結束進程時”。

彭東林

unread,
Nov 3, 2016, 11:01:01 AM11/3/16
to 《linux环境编程》讨论组
P136 發現一處問題:

原話“那麼autoreaper就等於false”, 應該是“那麼autoreap就等於false”。

zzz0...@gmail.com

unread,
Nov 14, 2016, 10:47:47 AM11/14/16
to 《linux环境编程》讨论组
回報疑似錯誤

4.7.2: Page 133的範例程式的第三行 -> wait
ed(....)函數statement,應該是waitid(...)的誤植

Li Bin

unread,
Nov 14, 2016, 8:51:33 PM11/14/16
to 《linux环境编程》讨论组
的确如此,此处是笔误。多谢指出。

Li Bin

unread,
Nov 14, 2016, 8:56:24 PM11/14/16
to 《linux环境编程》讨论组
你说的是对的,此处笔误了。

绝大多数代码片段是从可运行的程序中摘出来的,但是也有少量的小片段,觉得比较简单,
就没有写完整测试程序。

ching...@gmail.com

unread,
Jun 2, 2017, 1:48:58 AM6/2/17
to 《linux环境编程》讨论组
  1. 第一章,1.4.5:需要增加三个头文件:"sys/types.h, sys/stat.h>
  1. , fcntl.h"
    ↑紅色角括號是多打的字嗎?
Gao Feng於 2016年7月10日星期日 UTC+8下午7時43分17秒寫道:

Gao Feng

unread,
Jul 3, 2017, 12:53:41 AM7/3/17
to 《linux环境编程》讨论组
是的
Message has been deleted

Feng Gao

unread,
Sep 17, 2017, 8:30:21 PM9/17/17
to 彭東林, 《linux环境编程》讨论组
thanks

2017-09-16 19:51 GMT+08:00 彭東林 <dolinu...@gmail.com>:
> 第441页,第5行,应该是"stat_buf.st_size + 1MB",而不是"stat_buf.st_size+MB"
>
> --
> 您收到此邮件是因为您订阅了Google网上论坛上的“《linux环境编程》讨论组”群组。
> 要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到linux_aple+...@googlegroups.com
> 要在网络上查看此讨论,请访问https://groups.google.com/d/msgid/linux_aple/a003a840-fbd0-4774-8cc4-6796b1394152%40googlegroups.com
> 要查看更多选项,请访问https://groups.google.com/d/optout
Reply all
Reply to author
Forward
0 new messages