1.作者经验丰富,实践性较强。作者从事多年的Linux编程的教学,了解目前学生在学习Linux编程方面的难。 2.理论与实际结合,应用性较强。从事过多个科研及企业项目,对如何将理论与实际相联系有着较为深刻的认识。 3.案例与理论结合。有丰富详细的实例介绍基本概念。 4.配有习题,便于学习。有基本的习题供学生动手实践。 5.提供了32学时课堂的实验指导手册。
售 价:¥
纸质售价:¥28.00购买纸书
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
内容提要
前言
第1章 Linux基础
1.1 什么是Linux?
1.1.1 Linux操作系统特点
1.1.2 Linux操作系统组成部分
1.2 Linux版本及Fedora操作系统
1.2.1 Linux内核版本
1.2.2 Linux发行版
1.2.3 Fedora操作系统
1.2.4 Fedora发行方式
1.2.5 Fedora系统安装基本要求
1.3 Fedora 20的安装
1.3.1 虚拟机下的Fedora 20的安装准备
1.3.2 Fedora 20安装
1.4 Linux常用命令
1.4.1 Linux命令执行方法
1.4.2 Linux常用各种命令
1.5 VI编辑器的使用
1.6 POSIX标准和LSB标准
总结
习题
第2章 Linux编程环境
2.1 GCC编译器的使用
2.1.1 GCC编译器简介
2.1.2 GCC常用选项:预处理控制
2.1.3 GCC常用选项:编译及警告信息控制选项
2.1.4 GCC常用选项:C语言标准控制选项和程序调试及优化选项
2.1.5 GCC常用选项:搜索路径控制和GCC链接选项
2.1.6 利用GCC创建库文件
2.2 GDB调试器的使用
2.2.1 GDB调试器的使用
2.2.2 GDB调试器使用实例
2.3 Make工具
2.3.1 第一个Makefile文件
2.3.2 Makefile编写规则
2.3.3 Make的基本工作原理及过程
2.3.4 Makefile文件
总结
习题
第3章 Shell编程
3.1 Shell基础
3.1.1 Shell交互方式
3.1.2 Shell基本功能
3.2 Bash编程
3.3 Shell中的特殊字符
3.3.1 转义符“\”
3.3.2 单引号
3.3.3 双引号
3.3.4 命令替换符号
3.4 Shell变量
3.4.1 Shell用户变量定义
3.4.2 Shell环境变量
3.4.3 Shell内部变量
3.4.4 Shell参数扩展
3.4.5 Shell变量的算术扩展
3.4.6 条件表达式
3.4.7 Shell字符串操作
3.5 Shell控制语句
3.5.1 条件语句
3.5.2 循环语句
3.6 Shell其他命令
3.6.1 管道命令
3.6.2 重定向命令
3.6.3 echo命令
3.6.4 shift命令
3.7 Shell函数
3.8 Shell数组
3.9 Shell中Dialog工具
3.10 Bash调试
总结
习题
第4章 文件I/O操作
4.1 概述
4.2 文件I/O操作
4.2.1 文件的创建
4.2.2 文件的打开及关闭
4.2.3 文件的读取/写入
4.2.4 文件的定位
4.2.5 文件删除
4.2.6 文件描述符属性控制fcntl
4.2.7 文件操作实例
4.3 目录
4.3.1 目录概述
4.3.2 Linux文件系统ext2基本结构
4.3.3 与目录有关的系统调用
4.4 文件与目录的属性
4.4.1 获得文件或目录属性
4.4.2 文件或目录的模式
4.4.3 符号链接
4.4.4 文件属性的更改
4.5 标准文件I/O
4.6 处理系统调用中的错误
总结
习题
第5章 Linux进程管理
5.1 进程基本概念
5.2 进程创建和命令执行
5.3 进程退出
5.3.1 守护进程
5.3.2 僵尸进程
5.3.3 进程退出状态
5.4 进程开发实例
总结
习题
第6章 信号及信号处理
6.1 信号的基本概念
6.1.1 信号的使用和产生
6.1.2 信号的状态
6.2 信号的分类
6.2.1 可靠与不可靠信号
6.2.2 实时信号与非实时信号
6.3 信号的处理
6.3.1 signal信号处理机制
6.3.2 sigaction信号处理机制
6.4 信号发送函数
6.5 可重入函数
6.6 父子进程的信号处理
6.7 信号处理机制的应用
6.8 系统定时信号
6.8.1 睡眠函数
6.8.2 计时器
总结
习题
第7章 进程间通信
7.1 进程间通信基本概念
7.1.1 进程通信的作用
7.1.2 进程通信的实现和方法
7.2 管道通信
7.2.1 无名管道
7.2.2 管道与重定向
7.2.3 popen的介绍
7.2.4 命名管道
7.3 System V信号量
7.3.1 信号量的用法
7.3.2 信号量实例
7.4 POSIX有名信号量
7.4.1 POSIX有名信号量的使用
7.4.2 有名信号量实例
7.5 共享内存
7.5.1 共享内存步骤
7.5.2 System V共享内存API
7.5.3 共享内存实例
7.5.4 mmap共享内存机制
7.6 消息队列
7.6.1 消息队列的实现原理
7.6.2 消息队列系统调用
7.6.3 消息队列实例
总结
习题
第8章 多线程编程
8.1 多线程概念
8.2 线程状态与线程编程
8.2.1 线程的创建和参数传递
8.2.2 线程终止pthread_exit
8.2.3 线程挂起 pthread_join
8.2.4 线程其他相关系统调用
8.3 线程的同步与互斥
8.3.1 互斥量
8.3.2 互斥量的使用
8.3.3 信号量
8.3.4 信号量的使用方法
8.3.5 条件变量
8.3.6 条件变量的使用
总结
习题
第9章 Linux网络编程
9.1 计算机网络概述
9.1.1 计算机网络的组成及特点
9.1.2 计算机网络协议
9.1.3 网络协议分层
9.1.4 TCP/IP
9.1.5 Client/Server模型
9.1.6 Linux网络编程概述
9.1.7 网络协议栈
9.2 Socket编程
9.2.1 什么是Socket?
9.2.2 Socket编程基本系统调用
9.2.3 socket stream服务
9.2.4 Socket数据包服务
9.2.5 Socket原始套接字服务
9.3 Linux网络编程高级I/O
9.3.1 Socket阻塞/非阻塞方式
9.3.2 非阻塞Socekt用法
9.3.3 Socket与多路复用
9.4 Linux网络并发编程
总结
习题
第10章 Linux下的数据库编程
10.1 My SQL数据库简介
10.1.1 Linux数据库编程应用
10.1.2 My SQL API的两种形式
10.1.3 My SQL C API的使用
10.2 Linux数据库编程基本方法
10.3 My SQL数据库数据结构及API
10.3.1 数据结构
10.3.2 My SQL操作API
10.4 My SQL数据库编程实例
总结
习题
附录 Linux编程基础实验
实验一 Linux基本命令使用(验证性实验)
实验二 Linux Shell编程(设计性实验)
实验三 Makefile实验(验证性和设计性)
实验四 GCC/GDB实验
实验五 Linux文件系统编程
实验六 Linux多进程与进程间通信
参考文献
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜