图书介绍
Linux编程宝典【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

- (美)John Goerzen著;魏永明等译 著
- 出版社: 北京:电子工业出版社
- ISBN:7505362100
- 出版时间:2000
- 标注页数:748页
- 文件大小:36MB
- 文件页数:764页
- 主题词:
PDF下载
下载说明
Linux编程宝典PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
前言1
第1部分 Shell和基本工具7
第1章 Linux编程环境简介9
1.1 Linux编程基本概念9
1.2 Linux设计10
1.3 Linux文档10
1.4 手册页11
1.5 Info页12
1.6 Perl文档14
1.8 Internet资源15
1.7 程序文档15
1.9 小结16
第2章 Shell编程简介17
2.1 Bash简介17
2.1.1 创建脚本18
2.1.2 启动Bash19
2.1.3 返回值20
2.1.4 简单命令组合21
2.1.5 通配符26
2.1.6 引号和转义26
2.1.7 注释29
2.2 重定向和管道30
2.2.1 输出重定向31
2.2.2 输入重定向35
2.2.3 管道37
2.2.4 命令置换40
2.3 变量40
2.3.1 环境变量42
2.3.2 特殊变量44
2.4 函数46
2.5 条件和循环50
2.5.1 if50
2.5.2 使用[...]测试51
2.5.3 case53
2.5.4 while55
2.5.5 for56
2.6 Shell应用58
2.7 小结59
第3章 使用正则表达式61
3.1 正则表达式简介61
3.1.1 模式62
3.1.2 正则表达式语法63
3.1.3 egrep简介67
3.1.4 sed简介69
3.1.5 Perl中的正则表达式70
3.2 理解字符类73
3.3 使用量词75
3.4 备选与分组80
3.5 在Linux下对正则表达式的支持81
3.5.1 Perl81
3.5.2 sed和awk85
3.5.3 C/C++85
3.6 小结86
第4章 Emacs简介87
4.1 Emacs入门87
4.1.1 Emacs键盘操作符号87
4.1.2 浏览89
4.1.3 搜索90
4.1.4 Emacs区域91
4.1.5 缓冲区91
4.1.6 窗口91
4.1.7 框架93
4.1.8 语法和括弧高亮显示93
4.2 主模式94
4.2.1 C模式95
4.2.2 Perl模式97
4.2.3 其他模式98
4.3 Emacs是一个IDE98
4.3.2 调试99
4.3.1 编译程序99
4.3.3 使用标记100
4.3.4 在Emacs中的Sehll101
4.3.5 Term模式103
4.3.6 Dired104
4.3.7 w3105
4.3.8 Gnus107
4.3.9 版本控制107
4.4 获取帮助108
4.5 小结109
5.1 基本概念111
第5章 理解Linux数据文件和脚本111
5.2 文件系统层次112
5.2.1 根目录112
5.2.2 /dev:设备文件114
5.2.3 /etc:配置和启动文件115
5.2.4 /usr:标准系统程序115
5.2.5 /var:变量数据115
5.3 passwd和shadow文件116
5.3.1 从Shell中获取账号信息117
5.3.2 从C中获取账号信息118
5.3.3 从Perl中获取账号信息120
5.4 组文件121
5.5 init文件122
5.6.1 DNS文件126
5.6 网络文件126
5.6.2 安全性文件127
5.6.3 超级服务器文件128
5.7 小结129
第2部分 C环境131
第6章 使用gcc133
6.1 使用gcc编译程序133
6.1.1 警告134
6.1.2 优化gcc135
6.1.3 产生调试标记139
6.2.2 C++编译器:g++143
6.2.1 C编译器:gcc143
6.2 gcc编译流程简介143
6.2.3 C预处理器:cpp144
6.2.4 程序员“礼品店”147
6.3 管理大型项目148
6.4 使用高级gcc选项150
6.4.1 指定查找路径151
6.4.2 连接库151
6.4.3 使用管道加速编译过程152
6.4.4 使用gcc的-v选项152
6.4.5 使用ANSIC155
6.5 小结155
7.1 CNU make简介157
第7章 使用GNU Make管理项目157
7.1.2 一个简单的Makefile文件158
7.1.1 Makefile规则158
7.1.3 更巧妙的Makefile文件161
7.2 使用智能的Makefile166
7.2.1 两种变量类型166
7.2.2 通配符:问题和解决办法167
7.2.3 依赖性计算169
7.3 创建其他文件181
7.4 使用递归make187
7.5 小结194
8.1.1 静态分配内存195
第8章 内存管理195
8.1 静态与动态内存195
8.1.2 动态分配内存197
8.2 安全性和设计着眼点201
8.3 高级指针203
8.3.1 解析数据214
8.3.2 代码分析223
8.4 发现问题225
8.5 小结226
第9章 库和连接227
9.1 库简介227
9.2 创建和使用静态库228
9.3 创建和使用共享库232
9.4 使用高级共享库特性234
9.4.1 ldd工具234
9.4.2 soname234
9.4.3 共享库装载器236
9.4.4 使用LD_PRELOAD236
9.4.5 使用dlopen239
9.5 小结239
第10章 使用gdb调试241
10.1 gdb需求241
10.2.1 调试指南242
10.2 调试步骤242
10.2.2 调试其他进程249
10.3 显示数据253
10.3.1 使用print和display命令253
10.3.2 内存检查259
10.3.3 使用Printf命令260
10.3.4 使用set命令261
10.4 使用断点和观察窗口261
10.4.1 设置断点261
10.4.2 设置观察窗口264
10.5 core dump分析268
10.6 命令小结275
10.7 小结278
第3部分 Linux模型279
第11章 文件、目录和设备281
11.1 文件的实质281
11.1.1 系统调用stat( )和lstat( )282
11.1.2 opendir( )、readdir( )及其相关函数292
11.2 I/O方法299
11.2.1 基于流的I/O方法299
11.2.2 系统调用I/O方法300
11.3 特殊文件303
11.4 小结304
12.2 进程基础知识305
12.1 理解进程模型305
第12章 Linux系统中的进程305
12.3 启动和终止进程307
12.3.1 派生的基本原理307
12.3.2 执行其他程序308
12.3.3 等待进程310
12.3.4 一起使用318
12.4 使用返回代码320
12.5 进程的同步措施323
12.5.1 原子操作和非原子操作324
12.5.2 死锁325
12.5.3 竞争条件325
12.5.4 自旋和忙等待326
12.6 了解安全性327
12.6.1 安全性的基本知识327
12.6.2 安全性秘密327
12.6.3 setuid和setgid329
12.6.4 setuid和setgid的负效应339
12.6.5 保证setuid和seteid的安全340
12.7 小结343
第13章 了解信号345
13.1 信号的使用345
13.2 信号处理程序346
13.2.1 基本信号处理程序346
13.2.2 阻塞信号351
13.2.3 高级信号处理程序357
13.3 信号发送363
13.4 信号和系统调用372
13.5 信号处理程序带来的危险373
13.6 小结373
第14章 Linux的I/O系统简介375
14.1 程序库和系统调用375
14.1.1 基于流的I/O方法376
14.1.1 系统调用I/O方法379
14.2 错误情况386
14.2.1 使用封装的函数库387
14.2.2 在读者自己的程序中使用封装函数库395
14.3 高级I/O399
14.3.1 稀疏文件399
14.3.2 非阻塞I/O方式401
14.4 内存映射的I/O402
14.5 函数调用select( )和poll( )406
14.5.1 select( )函数406
14.5.2 poll( )函数411
14.6 咨询锁定414
14.7 小结419
第15章 终端编程421
15.1 终端属性422
15.2 伪终端425
15.3 Ncurses429
15.4 小结456
第4部分 与世界交流457
第16章 共享内存和信号量459
16.1 使用共享内存459
16.2 使用信号量同步460
16.3 利用共享内存通信470
16.4 小结487
第17章 使用管道和FIFO489
17.1 建立管道490
17.2 实现重定向499
17.4 使用FIFO504
17.3 解决通信问题504
17.5 小结509
第18章 Internet套接字511
18.1 TCP/IP简介511
18.1.1 问题511
18.1.2 解决方案512
18.1.3 术语注解513
18.2 TCP/IP的独特挑战513
18.3 协议514
18.4 寻址515
18.5 客户端连接516
18.6 服务器端连接519
18.7 一个网络函数库529
18.8 小结542
第19章 高级ICP/IP套接字543
19.1 服务器设计和多工化543
19.2 用户数据报协议552
19.3 小结552
第5部分 利用Perl协同工作553
第20章 Perl简介555
20.1 Perl的设计思想555
20.1.1 变量556
20.1.2 数组557
20.1.3 哈希表558
20.2 第一步559
20.3 数据结构565
20.3.1 引用565
20.3.2 匿名引用566
20.3.3 符号引用567
20.3.4 数组567
20.3.5 嵌套哈希表572
20.4 子例程和作用域577
20.5 流控制579
20.6 OOP特征580
20.7 小结588
21.1 读取数据589
第21章 利用Perl操作数据589
21.2 分析和处理数据591
21.2.1 使用split593
21.2.2 使用grep595
21.3 保存数据596
21.3.1 使用数据库596
21.3.2 使用Data Dumper607
21.3.3 Data Dumper选项611
21.4 输出和特别考虑的问题612
21.4.1 基本输出612
21.4.3 open的选项613
21.4.2 输出到文件或命令613
21.4.4 传递文件句柄614
21.4.5 文件句柄的作用域614
21.5 小结615
第22章 CGI编程617
22.1 CGI与Web617
22.2 编写CGI脚本618
22.3 处理无连接问题630
22.4 解决性能问题632
22.5 小结632
23.1 数据库简介633
第23章 利用DBI访问SQL数据库633
23.2 使用DBI的第一步634
23.3 使用SQL638
23.3.1 创建表638
23.3.2 插入数据639
23.3.3 读取数据640
23.3.4 更新表643
23.3.5 删除信息644
23.3.6 连接表645
23.4 在应用程序中使用数据库648
23.4.1 DBI和命令行648
23.4.2 DBI和CGI652
23.5 小结666
第6部分 使用X的图形界面667
第24章 利用Perl/TK的GUI669
24.1 Linux中的CUI编程669
24.1.1 X Window系统基础670
24.1.2 位置无关性670
24.2 客户解剖670
24.2.1 Xlib671
24.2.2 构件集671
24.2.3 层次化窗口671
24.2.4 配置671
24.4 使用Perl/TK的第一步672
24.3 基于事件的编程672
24.5 对象属性674
24.6 特殊对象679
24.6.1 窗框679
24.6.2 菜单679
24.6.3 文本和画布684
24.7 几何管理器686
24.8 特别考虑的问题691
24.9 SpecTcl/SpecPerl691
24.10 小结694
第25章 利用GNOME建立GUI695
25.1 使用GNOME组件695
25.2 第一步696
25.3 绘制窗口699
25.4 其他GNOME注解703
25.5 小结704
第7部分 将一切组织起来705
第26章 利用CVS管理归档和协作707
26.1 CVS简介707
26.2 建立仓库708
26.3 CVS的日常使用709
26.4 使用标记和分支713
26.4.1 标记714
26.4.2 分支715
26.5.2 生成ssh键717
26.5 访问网络717
26.5.1 设置服务器717
26.5.3 境变量718
26.6 技巧和诀窍719
26.6.1 关键词719
26.6.2 二进制文件720
26.6.3 使用子目录721
26.6.4 CVSROOT文件721
26.7 小结722
第27章 理解安全性和代码723
27.1 好代码的重要性723
27.2.2 访问控制724
27.2 Linux安全性概览724
27.2.1 验证724
27.3 安全性的指导方针726
27.3.1 安全性原则726
27.3.2 常见问题728
27.3.3 编写安全代码729
27.4 小结732
第28章 优化性能733
28.1 更快代码的原则733
28.1.1 三种度量733
28.1.2 循环733
28.1.5 重新编写时间关键代码块736
28.1.6 增加块大小736
28.1.3 帮助优化器736
28.1.4 避免浮点数736
28.2 高价操作和廉价操作737
28.2.1 系统调用737
28.2.2 fork737
28.2.3 exec737
28.2.4 system737
28.3 编译器优化738
28.4 使用gprof738
28.5 小结748
热门推荐
- 126003.html
- 1030038.html
- 2417447.html
- 2794851.html
- 1933560.html
- 2109676.html
- 2487951.html
- 932326.html
- 1083255.html
- 968521.html
- http://www.ickdjs.cc/book_544721.html
- http://www.ickdjs.cc/book_1413964.html
- http://www.ickdjs.cc/book_3526929.html
- http://www.ickdjs.cc/book_1441051.html
- http://www.ickdjs.cc/book_1329641.html
- http://www.ickdjs.cc/book_2233541.html
- http://www.ickdjs.cc/book_82390.html
- http://www.ickdjs.cc/book_2892531.html
- http://www.ickdjs.cc/book_960932.html
- http://www.ickdjs.cc/book_822424.html