《高等院校计算机技术与应用系列规划教材 Linux程序设计 第3版》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:金国庆,刘加海,谢井等编著
  • 出 版 社:杭州:浙江大学出版社
  • 出版年份:2017
  • ISBN:9787308171489
  • 页数:588 页
图书介绍:Linux程序设计一书总共分13章,主要内容为:Linux常用命令、SHELL程序设计、Linux C程序设计基础、Linux环境下系统函数的使用、文件I/O操作、进程控制、进程间的通信、线程、Linux的图形编程、设备驱动程序设计基础、终端I/O通信、程序设计应用实例. 该教材供本科院校以及行业参考。

第1章 Linux常用命令 1

1.1 帮助命令 2

1.2 文件系统命令 4

1.3 系统管理常用命令 19

1.4 网络操作常用命令 22

1.5 网络安全常用命令 25

1.6 字符串显示命令 32

1.7 Shell的环境变量 34

1.8 文本编辑器vi/vim 37

1.9 命令行的执行方式 41

1.10 安装rpm形式的软件包 42

1.11 图形化安装软件 43

思考与实验 44

第2章 Shell编程 47

2.1 Bash脚本的建立和运行 48

2.1.1 Shell命令行 48

2.1.2 Bash脚本的建立 48

2.2 Shell程序的位置参数与变量 50

2.2.1 Shell程序的位置参数 51

2.2.2 环境变量和用户定义变量 54

2.2.3 变量声明和赋值 54

2.2.4 变量引用和单双引号使用 56

2.2.5 命令替换 57

2.2.6 变量的输入 57

2.3 控制结构语句 58

2.3.1 顺序结构的语句 59

2.3.2 if-then-elif-else-fi语句 59

2.3.3 for语句 64

2.3.4 while语句 68

2.3.5 until语句 70

2.3.6 case语句 71

2.4 其他几个常用语句 75

2.4.1 break和continue语句 75

2.4.2 exit语句 75

2.4.3 printf语句 76

2.5 数值处理 77

2.5.1 let命令 78

2.5.2 $((expression))扩展 78

2.5.3 expr命令 80

2.6 数 组 82

2.7 函 数 86

2.8 综合实例 89

思考与实验 101

第3章 Linux系统C语言开发工具 104

3.1 第一个Linux环境下的C语言程序 105

3.2 编译C语言程序 106

3.2.1 gcc编译器 106

3.2.2 gcc编译流程 108

3.2.3 gcc编辑器的主要参数 111

3.2.4 函数库 116

3.3 make工程文件 121

3.3.1 make命令 121

3.3.2 make规则 122

3.3.3 编写makefile文件 123

3.3.4 Makefile 中的变量 127

3.4 gdb调试工具 130

思考与实验 137

第4章 Linux环境下系统函数的使用 140

4.1 数学函数的使用 141

4.2 字符函数的使用 144

4.3 系统时间与日期函数的使用 147

4.4 环境控制函数 154

4.5 内存分配函数 156

4.6 数据结构中常用函数 162

思考与实验 166

第5章 文件I/O操作 170

5.1 Linux系统文件和文件系统 171

5.1.1 Linux文件类型 171

5.1.2 Linux文件权限 174

5.1.3 Linux文件的其他属性 177

5.2 不带缓存的文件I/O操作 181

5.2.1 文件的创建 181

5.2.2 文件的打开和关闭 182

5.2.3 文件的读写操作 184

5.2.4 文件的非阻塞操作 187

5.2.5 函数fcntl应用及文件上锁 190

5.3 带缓存的流文件I/O操作 195

5.3.1 流文件的打开和关闭 196

5.3.2 流文件的读写操作 198

5.3.3 文件的定位 203

5.4 特殊文件的操作 206

5.4.1 目录文件的操作 206

5.4.2 链接文件的操作 210

思考与实验 213

第6章 进程控制 217

6.1 进程简介 218

6.2 Linux进程控制 219

6.2.1 进程的相关函数 221

6.2.2 进程创建 221

6.2.3 进程终止 228

6.2.4 僵尸进程 230

6.3 Linux守护进程 240

6.3.1 守护进程及其特性 240

6.3.2 编写守护进程的要点 241

6.3.3 守护进程的编写 242

思考与实验 252

第7章 进程通信 253

7.1 进程间通信 255

7.2 信号 256

7.2.1 信号及其使用简介 256

7.2.2 信号操作的相关函数 258

7.3 管道 270

7.3.1 无名管道操作 271

7.3.2 命名管道 275

7.3.3 高级管道操作 284

7.4 消息队列 289

7.5 共享内存 297

7.5.1 内存映射 298

7.5.2 UNIX System V共享内存 301

思考与实验 310

第8章 线程 314

8.1 线程概述 315

8.2 线程创建 316

8.3 线程同步与互斥 322

8.3.1 互斥锁 323

8.3.2 条件变量 332

8.3.3 信号量 342

思考与实验 351

第9章 网络程序设计 356

9.1 TCP/IP简介 357

9.1.1 TCP/IP概述 357

9.1.2 TCP/IP模块结构 357

9.1.3 TCP/UDP传输方式 358

9.2 网络编程 358

9.2.1 端 口 358

9.2.2 socket端口 359

9.2.3 socket套接口 359

9.2.4 socket套接口的数据结构 360

9.2.5 基于TCP协议的客户端/服务器程序的常用函数 361

9.2.6 TCP编程 361

9.2.7 UDP编程 379

9.3 网络高级编程 385

思考与实验 396

第10章 Linux的图形编程 408

10.1 Linux的图形编程简介 409

10.2 安装和使用SDL图形开发库 410

10.3 初始化图形模式 410

10.4 基本绘图函数的应用 416

10.5 图片与文字显示 429

10.6 动画程序设计 437

10.7 三维绘图 447

10.8 游戏程序设计初步 454

思考与实验 463

第11章 设备驱动程序设计基础 482

11.1 设备驱动程序的概念 483

11.2 驱动程序的设计流程 485

11.2.1 字符驱动程序设计流程 485

11.2.2 驱动程序流程设计举例 486

11.3 Linux字符设备驱动程序设计 489

11.3.1 字符设备驱动程序数据结构 489

11.3.2 字符设备驱动程序的基本框架 493

11.4 字符设备驱动程序实例——虚拟字符设备 494

思考与实验 500

第12章 串行通信 508

12.1 串行通信概述 509

12.1.1 同步通信 509

12.1.2 异步通信 509

12.2 串行通信程序的设计 510

12.2.1 串行通信程序设计流程 510

12.2.2 打开通信端口 511

12.2.3 设置串口属性 512

12.2.4 串口通信程序设计 515

思考与实验 521

第13章 程序设计实例 524

13.1 Shell程序设计实例 525

13.2 系统函数的应用实例 528

13.3 文件操作 533

13.4 进程控制实例 537

13.5 进程通信 541

13.6 网络程序设计 551

13.7 图形程序设计 566

13.8 驱动程序设计 580

13.9 串口通信程序设计 582

附录 585