顶部
收藏

Linux应用编程技术


作者:
南京软件研究院中科院软件所卓越工程师项目教材编写组
定价:
38.00 元
版面字数:
390千字
开本:
特殊
装帧形式:
平装
版次:
1
最新版次
印刷时间:
2023年
ISBN:
978-7-04-054215-8
物料号:
54215-00
出版时间:
2020-08-07
读者对象:
高等教育
一级分类:
计算机/教育技术类
二级分类:
计算机科学与技术专业课程

本书着眼于Linux的基本操作、编程环境和编程基本开发等方面的内容,系统介绍Linux开发所需相关的基础知识,以培养学生的动手能力,进而加强对基本概念的认识。书中对主要概念和知识点都给出了实例分析。全书分为4部分,共8章。第一部分Linux入门介绍和基本概念(第1章),主要介绍 Linux的发展简史、开源许可证和版权制度Linux环境下软件的体系结构、常用开发调试工具等知识。第二部分Linux环境编程基础(第2—3章),主要介绍Shell编程、程序和编译链接以及静态库和共享库的概念。第三部分Linux环境编程核心(第4—6章),详细介绍在Linux环境下如何编写程序操作进程、线程、文件和目录编程以及操作系统相关背景知识。第四部分Linux环境编程提高(第7—8章),主要介绍Linux环境下的网络Socket编程以及如何编写安全的程序。

本书可作为应用型高校本科计算机类专业Linux相关课程教材,也可供技术人员阅读参考。

  • 目录
    • 前辅文
      • 第1章 Linux系统及开发调试工具
        • 1.1 Linux发展历史
          • 1.1.1 UNIX系统
            • 1.1.2 Linux系统简介
              • 1.1.3 Linux发行版谱系
                • 1.1.4 Linux桌面环境
                • 1.2 许可证和版权
                  • 1.3 软件的体系结构
                    • 1.4 Linux下常见开发工具
                      • 1.4.1 VIM编辑器
                        • 1.4.2 GCC编译器
                          • 1.4.3 Makefile
                            • 1.4.4 程序调试工具GDB
                            • 【本章小结】
                              • 【研讨与思考】
                                • 【练习与实践】
                                • 第2章 Shell与Shell编程
                                  • 2.1 Shell简介
                                    • 2.1.1 初识Shell
                                      • 2.1.2 Shell脚本的作用
                                      • 2.2 Shell基本知识
                                        • 2.2.1 Linux基本命令
                                          • 2.2.2 输入/输出重定向
                                            • 2.2.3 管道
                                              • 2.2.4 系统管理
                                                • 2.2.5 权限管理
                                                  • 2.2.6 作业管理
                                                  • 2.3 Shell脚本
                                                    • 2.3.1 变量
                                                      • 2.3.2 函数
                                                        • 2.3.3 结构化控制
                                                          • 2.3.4 跟踪调试
                                                            • 2.3.5 Shell安全编程
                                                            • 2.4 正则表达式、AWK/GAWK和SED
                                                              • 2.4.1 正则表达式
                                                                • 2.4.2 AWK/GAWK
                                                                  • 2.4.3 SED
                                                                  • 【本章小结】
                                                                    • 【研讨与思考】
                                                                      • 【练习与实践】
                                                                      • 第3章 程序和库
                                                                        • 3.1 程序的概念
                                                                          • 3.1.1 目标文件
                                                                            • 3.1.2 程序的加载和运行
                                                                            • 3.2 静态库
                                                                              • 3.2.1 静态库的概念
                                                                                • 3.2.2 静态库的创建和使用
                                                                                • 3.3 共享库
                                                                                  • 3.3.1 共享库的概念
                                                                                    • 3.3.2 共享库的创建和使用
                                                                                      • 3.3.3 运行库
                                                                                      • 3.4 静态链接与动态链接
                                                                                        • 【本章小结】
                                                                                          • 【研讨与思考】
                                                                                            • 【练习与实践】
                                                                                            • 第4章 进程
                                                                                              • 4.1 进程的概念
                                                                                                • 4.1.1 什么是进程
                                                                                                  • 4.1.2 进程的模式
                                                                                                    • 4.1.3 进程的状态
                                                                                                    • 4.2 进程控制
                                                                                                      • 4.2.1 进程控制块
                                                                                                        • 4.2.2 Linux进程管理操作
                                                                                                          • 4.2.3 进程的一生
                                                                                                            • 4.2.4 进程组、会话和控制终端
                                                                                                            • 4.3 进程间通信
                                                                                                              • 4.3.1 无名管道
                                                                                                                • 4.3.2 有名管道
                                                                                                                  • 4.3.3 信号
                                                                                                                    • 4.3.4 消息队列
                                                                                                                      • 4.3.5 信号量
                                                                                                                        • 4.3.6 共享内存
                                                                                                                        • 【本章小结】
                                                                                                                          • 【研讨与思考】
                                                                                                                            • 【练习与实践】
                                                                                                                            • 第5章 线程
                                                                                                                              • 5.1 线程的概念
                                                                                                                                • 5.1.1 什么是线程
                                                                                                                                  • 5.1.2 线程的状态
                                                                                                                                    • 5.1.3 线程的分类
                                                                                                                                    • 5.2 多线程编程基础
                                                                                                                                      • 5.2.1 线程的创建与终止
                                                                                                                                        • 5.2.2 线程的属性
                                                                                                                                        • 5.3 线程同步
                                                                                                                                          • 5.3.1 互斥锁
                                                                                                                                            • 5.3.2 条件变量
                                                                                                                                              • 5.3.3 读写锁
                                                                                                                                                • 5.3.4 自旋锁
                                                                                                                                                • 5.4 多线程的调试
                                                                                                                                                  • 【本章小结】
                                                                                                                                                    • 【研讨与思考】
                                                                                                                                                      • 【练习与实践】
                                                                                                                                                      • 第6章 Linux文件及目录编程
                                                                                                                                                        • 6.1 Linux文件系统简述
                                                                                                                                                          • 6.1.1 Linux文件系统与传统文件系统的区别
                                                                                                                                                            • 6.1.2 Linux虚拟文件系统
                                                                                                                                                              • 6.1.3 文件系统操作命令
                                                                                                                                                              • 6.2 Linux文件编程
                                                                                                                                                                • 6.2.1 Linux文件分类
                                                                                                                                                                  • 6.2.2 文件操作API
                                                                                                                                                                  • 6.3 Linux目录编程
                                                                                                                                                                    • 6.3.1 当前工作目录
                                                                                                                                                                      • 6.3.2 读取目录
                                                                                                                                                                        • 6.3.3 读取文件信息
                                                                                                                                                                        • 【本章小结】
                                                                                                                                                                          • 【研讨与思考】
                                                                                                                                                                            • 【练习与实践】
                                                                                                                                                                            • 第7章 Linux Socket 网络编程
                                                                                                                                                                              • 7.1 TCP/IP 协议
                                                                                                                                                                                • 7.1.1 TCP/IP体系结构的层次
                                                                                                                                                                                  • 7.1.2 TCP/IP协议通信模型
                                                                                                                                                                                    • 7.1.3 IP地址和端口号
                                                                                                                                                                                    • 7.2 套接字概述
                                                                                                                                                                                      • 7.2.1 套接字基本概念
                                                                                                                                                                                        • 7.2.2 套接字地址结构
                                                                                                                                                                                          • 7.2.3 套接字基本操作
                                                                                                                                                                                          • 7.3 TCP套接字编程XE"Administration"
                                                                                                                                                                                            • 7.3.1 TCP套接字编程基本流程
                                                                                                                                                                                              • 7.3.2 关键函数讲解
                                                                                                                                                                                                • 7.3.3 TCP套接字编程
                                                                                                                                                                                                  • 7.3.4 异常情况
                                                                                                                                                                                                  • 7.4 UDP套接字编程
                                                                                                                                                                                                    • 7.4.1 UDP套接字编程基本流程
                                                                                                                                                                                                      • 7.4.2 关键函数
                                                                                                                                                                                                        • 7.4.3 UDP套接字编程
                                                                                                                                                                                                          • 7.4.4 TCP和UDP比较
                                                                                                                                                                                                          • 【本章小结】
                                                                                                                                                                                                            • 【研讨与思考】
                                                                                                                                                                                                              • 【练习与实践】
                                                                                                                                                                                                              • 第8章 Linux安全编程
                                                                                                                                                                                                                • 8.1 安全编程的重要性
                                                                                                                                                                                                                  • 8.2 编程中常见的安全问题
                                                                                                                                                                                                                    • 8.2.1 缓冲区溢出
                                                                                                                                                                                                                      • 8.2.2 返回值安全检查
                                                                                                                                                                                                                        • 8.2.3 临时文件安全
                                                                                                                                                                                                                          • 8.2.4 注入漏洞问题
                                                                                                                                                                                                                            • 8.2.5 竞争条件问题
                                                                                                                                                                                                                              • 8.2.6 接口封装漏洞
                                                                                                                                                                                                                              • 8.3 代码安全性检测
                                                                                                                                                                                                                                • 8.3.1 静态分析
                                                                                                                                                                                                                                  • 8.3.2 动态分析
                                                                                                                                                                                                                                  • 8.4 用户鉴别与验证
                                                                                                                                                                                                                                    • 8.4.1 Linux登录器GDM
                                                                                                                                                                                                                                      • 8.4.2 Linux用户验证模块PAM
                                                                                                                                                                                                                                      • 【本章小结】
                                                                                                                                                                                                                                        • 【研讨与思考】
                                                                                                                                                                                                                                          • 【练习与实践】
                                                                                                                                                                                                                                          • 参考文献
                                                                                                                                                                                                                                          课程网址: null

                                                                                                                                                                                                                                          相关图书