图书介绍
Linux操作系统环境下C语言程序设计pdf电子书版本下载
- 王继业主编 著
- 出版社: 北京:中央民族大学出版社
- ISBN:9787811087024
- 出版时间:2009
- 标注页数:264页
- 文件大小:53MB
- 文件页数:276页
- 主题词:C语言-程序设计
PDF下载
下载说明
Linux操作系统环境下C语言程序设计PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一章 什么是LINUX 1
1.1 LINUX的历史 1
1.1.1 Linux的诞生 1
1.1.2 Linux的吉祥物 1
1.1.3 Linux的发行版 2
1.1.4 自由软件基金会和GNU版权 3
1.2 LINUX特点 3
1.2.1 多用户系统 4
1.2.2 登录 5
1.2.3 文件系统的层次结构 6
1.2.4 一般linux系统的文件树结构 7
思考和练习 8
第二章 LINUX系统的安装 9
2.1 FEDORA CORE 6.0的安装过程 9
2.1.1 安装前的准备工作 9
2.1.2 开始安装FC6 10
2.1.3 硬盘分区 12
2.1.4 接下来的安装 14
2.1.5 安装后的配置 17
2.2 UBUNTU 8.04的安装 20
2.2.1 安装前的准备 20
2.2.2 开始安装 21
2.2.3 安装后的设置 25
思考和练习 26
第三章 LINUX的命令行操作 27
3.1 初识LINUX 27
3.1.1 登录Linux 27
3.1.2 几个有趣的命令 28
3.1.3 在文件系统中遨游 32
3.1.4 显示目录内容 33
3.2 常用LINUX命令 34
3.2.1 Linux系统中目录的层次结构 35
3.2.2 文件系统 36
3.2.3 处理文件 38
3.2.4 目录和文件的属性 40
3.2.5 其他命令 41
思考和练习 43
第四章 VI的使用 44
4.1 编辑方式 44
4.1.1 光标定位 45
4.1.2 搜索字符串 45
4.1.3 替换、删除 45
4.1.4 剪切和粘贴 46
4.1.5 撤消和重复 46
4.2 插入方式 46
4.3 命令方式 47
4.3.1 退出命令 47
4.3.2 文件 47
4.3.3 行号使用 47
4.3.4 字符串搜索 47
4.4 规则表达式 48
4.4.1 正文替换 48
4.4.2 删除正文 48
4.5 编辑程序的选项和运行系统命令 48
思考和练习 49
第五章 SHELL环境和程序设计 50
5.1 BASH 50
5.1.1 bash shell的基本特点 50
5.1.2 bash高级属性 52
5.2 管道中的过滤器 54
5.2.1 基本过滤命令 54
5.2.2 awk编程 59
5.3 SHELL程序设计 64
5.3.1 建立和运行shell程序 65
5.3.2 shell程序变量 65
5.3.3 语句和表达式 68
5.3.4 子函数及其他 74
思考和练习 78
第六章 C语言编程环境简介 79
6.1 第一个C程序 79
6.2 GNU C编译和连接 80
6.2.1 gcc命令行选项 80
6.2.2 函数库和头文件 81
6.2.3 GNU C扩展 82
6.3 GNU MAKE项目管理 84
6.3.1 编写make文件 84
6.3.2 伪目标 85
6.3.3 变量 85
6.3.4 隐含规则和规则模式 87
6.3.5 make命令行参量 87
思考和练习 87
第七章 文件系统操作 89
7.1 文件操作 89
7.1.1 文件的打开和关闭 89
7.1.2 文件的输入输出 90
7.1.3 设置打开文件的位置 91
7.1.4 文件描述符和文件指针 92
7.1.5 文件控制 92
7.1.6 一个例子 93
7.2 目录操作 94
7.2.1 工作目录 94
7.2.2 操作目录结构 95
7.2.3 目录、文件的属性 97
7.2.4 文件的其他操作 98
7.2.5 一个例子 98
7.3 设备文件 100
7.3.1 设备文件控制函数 100
7.3.2 串行口的编程 101
7.3.3 声卡的编程 104
思考和练习 110
第八章 进程管理 112
8.1 进程执行环境 112
8.1.1 程序的参数 112
8.1.2 环境变量 117
8.2 进程 118
8.2.1 获得进程号 118
8.2.2 创建进程 118
8.2.3 运行程序 119
8.2.4 进程的终止 120
8.2.5 进程的完成状态 121
8.2.6 进程创建的完整例子——执行外部命令 122
思考和练习 124
第九章 信号 125
9.1 信号的基本概念 125
9.1.1 信号的种类 125
9.1.2 信号的发生 125
9.1.3 信号的传递与响应 126
9.2 一些标准的信号 127
9.2.1 程序出错信号 127
9.2.2 程序终止信号 128
9.2.3 闹钟信号 129
9.2.4 异步I/O信号 130
9.2.5 作业控制信号 130
9.2.6 操作错误信号 131
9.2.7 外围信号 131
9.2.8 信号消息 132
9.3 特定信号的反应 132
9.3.1 信号的控制的基本方法 132
9.3.2 信号的控制的高级方法 134
9.3.3 signal()函数和sigaction()函数的关系 134
9.3.4 sigaction函数举例 135
9.3.5 sigaction函数的标志 136
9.3.6 初始化信号回调 136
9.4 定义信号句柄 137
9.4.1 能够返回的信号句柄 137
9.4.2 结束进程的信号句柄 138
9.4.3 信号函数中的非局域转移 139
9.4.4 信号函数执行时到达的信号 140
9.4.5 时间相近信号的合并 141
9.4.6 信号句柄和非重入函数 143
9.4.7 数据的原子操作和信号 145
9.4.8 非原子操作带来的问题 145
9.4.9 原子类型 146
9.4.10 原子类型应用范式 146
9.5 被信号中断的原始操作 146
9.6 信号的产生 147
9.6.1 进程自己产生 147
9.6.2 其他进程产生信号 148
9.6.3 使用kill的权限 149
9.6.4 利用kill函数进行进程通讯 149
9.7 信号的阻塞 150
9.7.1 阻塞信号的作用 151
9.7.2 信号集 151
9.7.3 进程的信号掩码 152
9.7.4 举例:禁止关键代码时信号到达 152
9.7.5 在信号句柄中阻塞信号 153
9.7.6 查找阻塞的信号 154
9.7.7 信号阻塞的代替方法 154
9.8 等待信号 155
9.8.1 用pause()函数 155
9.8.2 pause()函数产生的问题 156
9.8.3 用sigsuspend()函数 156
思考和练习 157
第十章 进程间通讯 158
10.1 管道和命名管道 158
10.1.1 管道 158
10.1.2 命名管道 162
10.2 系统VIPC机制 162
10.2.1 一般概念 163
10.2.2 消息队列 164
10.2.3 信号量 167
10.2.4 共享内存 173
思考和练习 177
第十一章 SOCKET通讯 178
11.1 SOCKET的基本概念 178
11.1.1 什么是Socket 178
11.1.2 网络协议 179
11.1.3 数据结构 180
11.2 IP地址和域名 181
11.2.1 IP地址 181
11.2.2 域名系统 183
11.3 SOCKET相关系统调用 186
11.3.1 socket() 186
11.3.2 bind() 186
11.3.3 connect() 188
11.3.4 accept()和listen() 189
11.3.5 send()和recv() 190
11.3.6 sendto()和recvfrom() 191
11.3.7 close()和shutdown() 192
11.3.8 getpeername()函数 192
11.3.9 gethostname()函数 192
11.3.10 原始格式通讯的一个例子 193
思考和练习 199
第十二章 非连接通讯—UDP 200
12.1 UDP服务器 200
12.1.1 建立UDP监听套接口 201
12.1.2 UDP应用协议举例 203
12.2 接收UDP 206
12.2.1 UDP客户机 206
12.2.2 UDP客户举例 207
思考和练习 211
第十三章 面向连接的通讯—TCP 212
13.1 服务器程序 212
13.1.1 守护进程 212
13.1.2 使用TCP连接的服务器 214
13.1.3 一些额外的处理 216
13.1.4 使用TCP的服务器程序样例 217
13.2 客户程序 219
思考和练习 223
第十四章 使用GTK进行图形界面设计 224
14.1 GTK的基本概念和机制 224
14.1.1 Linux下的图形系统 224
14.1.2 Gtk和gnome 225
14.1.3 gtk基本实现机制 225
14.2 使用GTK进行基本的图形界面设计 226
14.2.1 最简单的gtk程序 226
14.2.2 添加按钮 227
14.2.3 更多信号相关的操作 229
14.2.4 部件的布局 229
14.2.5 常用的窗口部件 234
14.3 使用GLADE进行界面设计 235
14.3.1 glade简介 235
14.3.2 简单的实例 235
14.3.3 进一步改进 238
14.3.4 简单的计算器 240
思考和练习 243
附录A GNU通用公共许可证(GPL)中文版 244
附录B GNU通用公共授权(第三版) 249
附录C LINUX课程上机实验 258
插图、表格和示例程序目录 261
参考书目 264