图书介绍

Linux C高级程序员指南2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

Linux C高级程序员指南
  • 毛曙福编著 著
  • 出版社: 北京:国防工业出版社
  • ISBN:7118024392
  • 出版时间:2001
  • 标注页数:403页
  • 文件大小:18MB
  • 文件页数:420页
  • 主题词:UNIX操作系统(学科: 程序设计) UNIX操作系统 程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Linux C高级程序员指南PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 Linux系统管理1

1.1 登录与注销1

1.1.1 登录Linux1

1.1.2 更改口令1

1.1.3 了解shell2

1.1.4 了解shell环境3

1.1.5 配置shell环境4

1.1.6 注销4

1.2 信息查询命令5

1.2.1 date命令5

1.2.3 du命令6

1.2.2 df命令6

1.2.4 file命令7

1.2.5 hostname命令7

1.2.6 id命令8

1.2.7 ps命令8

1.2.8 quota命令9

1.2.9 stty命令9

1.2.10 time命令10

1.2.11 ttY命令10

1.2.12 w命令10

1.2.13 whereis命令11

1.2.14 who命令11

1.4 管理用户12

1.3.2 使用LILO12

1.3 Linux装载程序LILO12

1.3.1 配置LILO12

1.4.1 添加用户13

1.4.2 使用adduser命令13

1.4.3 设置用户口令13

1.4.4 删除用户14

1.5 管理用户组14

1.5.1 添加用户组14

1.5.2 删除用户组15

1.6 管理文件系统15

1.6.1 安装文件系统15

1.6.2 卸下文件系统16

1.7.1 了解TCP/IP配置文件17

1.6.3 维护文件系统17

1.7 配置TCP/IP网络17

1.7.2 主机配置文件18

1.7.3 初始化以太网接口18

1.7.4 用ifconfig检查网络接口19

1.7.5 配置软件回送接口20

1.7.6 配置网络接口20

1.8 小结20

第2章 网络服务器的配置21

2.1 配置FTP服务器21

2.1.1 FTP服务器简介21

2.1.2 安装FTP服务器21

2.1.3 查看FTP服务器的设置22

2.1.4 配置访问控制文件ftpaccess23

2.1.5 配置用户控制文件ftpusers28

2.1.6 配置主机控制文件ftphosts29

2.1.7 测试服务器是否正常工作29

2.1.8 wu-ftp提供的几个程序30

2.2 配置WWW服务器30

2.2.1 WWW服务器简介30

2.2.2 Apache服务器介绍31

2.2.3 安装Apache服务器31

2.2.4 配置服务器控制文件httpd.conf31

2.2.5 配置访问控制文件access.conf37

2.2.6 配置资源控制文件srm.Conf38

2.2.7 运行服务器程序42

2.2.9 浏览个人主页43

2.2.8 测试服务器运行情况43

2.3 小结44

第3章 Linux文件系统45

3.1 目录45

3.1.1 目录结构45

3.1.2 getcwd函数46

3.1.3 读取目录47

3.2 文件49

3.2.1 文件的存储49

3.2.2 文件的存储权限50

3.2.3 stat和fstat函数51

3.2.4 得到用户的信息55

3.3.1 ustat函数58

3.3 文件系统信息58

3.3.2 statfs和fstatfs函数60

3.4 小结62

第4章 Linux文件系统调用63

4.1 文件描述符63

4.2 open和close函数63

4.3 read和write函数64

4.4 lseek函数67

4.5 link和unlink函数71

4.6 access函数72

4.7 chmod,chown和chdir函数74

4.8 mkdir和rmdir函数75

4.9 mknod函数75

4.10 dup和dup2函数76

4.11 小结77

第5章 Linux设备文件78

5.1 设备文件简介78

5.2 设备文件的创建78

5.3 终端设备文件78

5.3.1 终端设备文件的读写78

5.3.2 终端设备文件的控制80

5.4 软盘设备文件87

5.4.1 软盘设备文件的读写87

5.4.2 软盘的外挂和sync函数90

5.5 小结93

6.1.1 task-struct结构94

6.1 Linux中的进程94

第6章 Linux进程管理94

6.1.2 进程状态95

6.1.3 进程标识96

6.1.4 进程调度96

6.1.5 Linux进程调度算法97

6.2 Linux进程系统调用97

6.2.1 fork与vfork函数97

6.2.2 exec函数101

6.2.3 exit与_exit函数104

6.2.4 wait与waitpid函数104

6.3 小结105

7.2 信号类别106

7.1 信号简介106

第7章 信号处理106

7.3 关于信号的系统调用107

7.3.1 kill命令及kill函数107

7.3.2 有关信号集合的调用108

7.3.3 signal与sigaction函数110

7.3.4 信号处理的另外一些调用112

7.3.5 pause与sigsuspend函数113

7.3.6 siglongimp与sigsetjmp函数118

7.4 小结120

第8章 基本进程间通信121

8.1 管道通信121

8.1.1 普通管道与pipe函数121

8.1.2 命名管道与mknod函数124

8.2 消息129

8.2.1 msgget函数129

8.2.2 msgctl函数129

8.2.3 msgsnd和msgrcv函数130

8.3 小结134

第9章 临界区与高级进程间通信135

9.1 竞争现象与临界区135

9.2 信号量136

9.2.1 简介136

9.2.2 信号量集137

9.2.3 semget函数137

9.2.4 semctl函数138

9.2.5 semop函数139

9.3 共享内存142

9.3.1 shmget函数142

9.3.2 shmat函数142

9.3.3 shmdt函数143

9.3.4 shmctl函数143

9.3.5 生产者/消费者问题144

9.4 小结151

第10章 Linux线程152

10.1 线程简介152

10.1.1 传统进程的局限性152

10.1.2 线程的动机152

10.1.4 线程概念153

10.1.5 用户线程与内核线程153

10.1.3 多线程和多处理器153

10.2 线程管理155

10.2.1 pthread_create函数155

10.2.2 pthread_self函数156

10.2.3 pthread_exit函数156

10.2.4 pthread_join函数156

10.2.5 线程的例子156

10.3 线程属性159

10.3.1 线程属性对象的初始化和销毁160

10.3.2 线程堆栈的大小161

10.3.3 线程堆栈的地址161

10.3.4 线程的拆卸状态161

10.3.7 线程的调度策略162

10.3.5 线程的作用域162

10.3.6 线程的继承性162

10.3.8 线程的调度参数163

10.3.9 得到线程的属性163

10.4 小结166

第11章 TCP/IP简介167

11.1 网络简介167

11.2 TCP/IP及相关协议167

11.2.1 IP协议167

11.2.2 ICMP协议169

11.2.3 ARP协议171

11.2.4 TCP协议172

11.2.5 UDP协议175

11.2.6 DNS协议176

11.3 小结179

第12章 各种转换180

12.1 网络字节序转换函数180

12.2 IP地址的转换180

12.2.1 inet_aton与inet_addr函数180

12.2.2 inet_pton与inet_ntop函数181

12.3 名字地址的转换182

12.3.1 gethostbyname函数与gethostbyname2函数182

12.3.2 gethostbyaddr函数183

12.3.3 uname和gethostname函数183

12.3.4 得到主机的信息184

12.4 服务名的转换186

12.4.2 getservbyport函数187

12.4.1 getservbyname函数187

12.5 高级地址转换188

12.5.1 getaddrinfo函数188

12.5.2 getnameinfo函数190

12.6 小结190

第13章 套接字编程191

13.1 套接字简介191

13.2 套接字编程调用191

13.2.1 socket函数192

13.2.2 connect函数193

13.2.3 bind函数193

13.2.4 listen函数194

13.2.5 accept函数194

13.2.7 recv函数195

13.2.6 read函数195

13.2.8 recvfrom函数196

13.2.9 write函数196

13.2.10 send函数196

13.2.11 sendto函数196

13.2.12 close函数197

13.2.13 getsockname和getpeername函数197

13.3 gettime程序198

13.4 ourhead.h文件200

13.5 小结202

14.1 TCP套接字编程203

14.1.1 简介203

第14章 客户机服务器编程203

14.1.2 客户机程序的简化204

14.1.3 服务器程序的并发205

14.1.4 ECHO客户机程序的TCP版本207

14.1.5 ECHO服务器程序的TCP版本208

14.2 UDP套接字编程211

14.2.1 简介211

14.2.2 客户机程序的简化211

14.2.3 ECHO客户机程序的UDP版本1213

14.2.4 ECHO客户机程序的UDP版本2215

14.2.5 ECHO服务器程序的UDP版本218

14.3 小结219

15.1.2 select函数220

15.1.1 多协议服务器简介220

15.1 多协议服务器220

第15章 复杂服务器设计220

15.1.3 ECHO服务器的TCP/UCP合并版221

15.1.4 ECHO客户机的TCP/UCP合并版225

15.2 多服务服务器227

15.2.1 多服务服务器简介227

15.2.2 ECHO,DAYTIME多服务服务器程序227

15.2.3 ECHO,DAYTIME多服务客户机程序231

15.2.4 多协议多服务服务器程序233

15.2.5 多协议多服务客户机程序239

15.3 小结241

第16章 远程过程调用242

16.1 简介242

16.2.2 初始化XDR流246

16.2.3 释放XDR流246

16.2 外部数据表示(XDR)246

16.2.1 XDR工作原理246

16.2.4 整数的XDR表示247

16.2.5 无符号整数的XDR表示247

16.2.6 枚举型的XDR表示248

16.2.7 布尔量的XDR表示248

16.2.8 浮点数的XDR表示248

16.2.9 双精度浮点数的XDR表示249

16.2.10 字符的XDR表示249

16.2.11 字符串的XDR表示250

16.2.12 定长数组的XDR表示250

16.2.13 变长数组的XDR表示251

16.2.14 XDR的例子252

16.3 小结255

第17章 RPC编程256

17.1 RPC编程简介256

17.1.1 RPC程序号、版本号和过程号256

17.1.2 网络选择256

17.1.3 rpcbind设施258

17.2 RPC调用259

17.2.1 clnt_create函数259

17.2.2 clnt_call函数260

17.2.3 svcudp_create函数260

17.2.4 svctcp_create函数260

17.2.7 svc_sendreply函数261

17.2.5 svc_register函数261

17.2.6 svc_run函数261

17.3 远程计算器262

17.3.1 头文件xdr_math.h262

17.3.2 客户机程序263

17.3.3 服务器程序265

17.3.4 程序的编译和运行267

17.4 小结268

第18章 用rpcgen生成分布式程序269

18.1 rpcgen简介269

18.2 rpcgen的输入和输出269

18.3.2 运行rpcgen270

18.3.1 建立.x文件270

18.3 rpcgen编程步骤270

18.3.3 rpcgen生成的math.h文件271

18.3.4 rpcgen生成的math_xdr.c文件272

18.3.5 rpcgen生成的math_clnt.c文件273

18.3.6 rpcgen生成的math_svc.c文件274

18.3.7 rpcgen生成的math_server.c文件276

18.3.8 rpcgen生成的math_client.c文件277

18.3.9 rpcgen生成的makefile.math文件280

18.4 小结281

第19章 RPC认证282

19.1 简介282

19.2 取得客户机的认证风格282

19.3 AUTH_NONE认证286

19.4 AUTH_SYS认证287

19.4.1 设置AUTH_SYS认证287

19.4.2 AUTH_SYS认证的例子287

19.5 AUTH_DES认证293

19.5.1 设置AUTH_DES认证293

19.5.2 AUTH_DES认证的例子295

19.6 小结298

第20章 GTK图形界面编程299

20.1 CTK简介299

20.2 第一个GUI应用程序299

20.2.1 初始化300

20.2.2 建立窗口300

20.2.4 设置窗口大小301

20.2.5 设置边框301

20.2.3 设置标题301

20.2.6 第一个GTK程序302

20.2.7 程序的编译和执行302

20.2.8 增加对信号的处理303

20.3 增加一个按钮305

20.4 小结307

第21章 按钮与封装308

21.1 按钮308

21.1.1 建立按钮308

21.1.2 按钮信号处理308

21.1.3 一个按钮的例子309

21.2 双态按钮310

21.3 复选按钮313

21.4 单选按钮313

21.5 封装构件315

21.5.1 封装简介315

21.5.2 用盒子封装构件316

21.5.3 盒子封装的例子316

21.5.4 用表格封装构件318

21.5.5 表格封装的例子320

21.6 图像按钮322

21.7 小结324

22.1.2 设置标签正文325

22.1.1 创建标签325

22.1.3 得到标签正文325

22.1 标签325

第22章 GTK常用构件325

22.2 编辑框326

22.2.1 创建编辑框326

22.2.2 得到编辑框正文326

22.2.3 改变编辑框正文326

22.2.4 设置编辑框属性326

22.2.5 编辑框的信号327

22.2.6 编辑框的例子327

22.3 列表框330

22.3.1 创建列表框330

22.3.2 操作列表框330

22.4 复合框331

22.3.3 列表框的信号331

22.4.1 创建和操作复合框332

22.4.2 复合框的信号332

22.5 进度条332

22.5.1 建立进度条333

22.5.2 用定时器测试进度条333

22.6 框架336

22.6.1 创建框架336

22.6.2 框架的例子337

22.7 小结338

第23章 状态条、工具条和菜单340

23.1 状态条340

23.1.1 创建状态条340

23.1.2 向状态条添加表项340

23.1.3 从状态条移走表项340

23.1.4 状态条的例子341

23.2 工具条342

23.2.1 创建工具条343

23.2.2 向工具条增加按钮343

23.2.3 向工具条上添加像元图344

23.2.4 工具条的例子345

23.3 菜单346

23.3.1 手工建立菜单347

23.3.2 用套件建立菜单351

23.3.3 检查菜单项355

23.3.4 选择菜单项357

23.4 小结359

24.1 初步建立对话框361

第24章 对话框361

24.2 两种类型的对话框362

24.2.1 无模式对话框362

24.2.2 模式对话框366

24.3 文件选择对话框369

24.3.1 创建文件选择对话框369

24.3.2 文件选择对话框的例子369

24.3.3 结构GtkFileSelection的定义372

24.4 小结372

第25章 GTK式样373

25.1 简介373

25.2 颜色373

25.2.1 从系统分配颜色373

25.2.2 创建颜色选择对话框374

25.2.3 颜色选择对话框的例子375

25.3 字体379

25.3.1 创建字体选择对话框380

25.3.2 字体选择对话框的例子380

25.4 小结385

第26章 高级GTK构件386

26.1 树构件386

26.1.1 树构件的创建386

26.1.2.树构件的信号387

26.1.3 树构件的例子387

26.2 列表构件391

26.2.1 创建列表构件391

26.2.4 删除行392

26.2.5 提高插入和删除速度392

26.2.3 修改列表构件中的数据392

26.2.2 向列表构件增加数据392

26.2.6 行与列参数393

26.2.7 标题栏393

26.2.8 插入像元图394

26.2.9 列表构件的例子394

26.3 笔记本构件397

26.3.1 创建笔记本构件397

26.3.2 操作页397

26.3.3 增加和删除页398

26.3.4 笔记本构件的例子399

26.4 小结402

参考文献403

热门推荐