注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络操作系统LinuxLinux系统编程

Linux系统编程

Linux系统编程

定 价:¥109.00

作 者: [瑞典]杰克-本尼·佩尔松(Jack-Benny Persson) 著
出版社: 机械工业出版社
丛编项:
标 签: 暂缺

购买这本书可以去


ISBN: 9787111716617 出版时间: 2023-01-01 包装: 平装-胶订
开本: 16开 页数: 字数:  

内容简介

  Linux是世界上最流行的开源操作系统。Linux系统编程技术将使你能够使用自己的系统程序扩展Linux操作 系统,并与系统上的其他程序进行通信。 本书探讨了Linux文件系统及其基本命令、内置手册页、GNU编译器集合(GCC)和Linux系统调用;讲述了如何处理程序中的错误,以及如何捕获错误并打印错误相关信息;介绍了在系统上读写文件的多种方法,包括使用流和文件描述符。随着学习的不断深入,你将深入研究创建进程、创建僵尸进程和守护进程,并学习使用systemd处理守护进程的方法;了解如何创建共享库,并探索不同类型的进程间通信(IPC);还将学习如何使用POSIX线程编写程序,以及如何使用GNU调试器(GDB)和Valgrind调试程序。 学完本书,你将能够在Linux系统中开发自己的系统程序,包括守护进程、工具、客户端和过滤器。 通过阅读本书,你将: ◎ 了解如何使用各种系统调用为Linux系统编写程序。 ◎ 深入研究POSIX函数的工作原理。 ◎ 理解并学会使用信号、管道、IPC和流程管理等关键概念。 ◎ 了解如何集成程序与Linux系统。 ◎ 探索高级主题,例如,文件系统操作、创建共享库和调试程序。 ◎ 全面了解如何使用Valgrind调试程序。

作者简介

  Jack-Benny Persson是一位来自瑞典的技术顾问和作家。他撰写了多本Linux和编程方面的书籍。他对Linux和其他类UNIX系统的热情始于20年前的一个爱好。从那时起,他就把大部分业余时间都花在了阅读Linux技术资料、完善Linux服务器以及撰写Linux管理相关的书籍上。如今,他在瑞典拥有自己的IT和媒体公司,该公司主要聚焦于Linux技术。

图书目录

第1章 获取必要的工具并编写
第一个Linux程序 1
1.1 技术要求 1
1.2 安装GCC和GNU Make 2
1.2.1 准备工作 3
1.2.2 实践步骤 3
1.2.3 它是如何工作的 4
1.3 安装GDB和Valgrind 5
1.3.1 准备工作 5
1.3.2 实践步骤 5
1.3.3 它是如何工作的 6
1.4 在Linux中编写一个简单的
C程序 7
1.4.1 准备工作 7
1.4.2 实践步骤 7
1.4.3 它是如何工作的 8
1.4.4 更多 9
1.5 编写一个解析命令行选项
的程序 10
1.5.1 准备工作 10
1.5.2 实践步骤 10
1.5.3 它是如何工作的 12
1.6 在内置手册页中查找信息 13
1.6.1 准备工作 13
1.6.2 实践步骤 14
1.6.3 它是如何工作的 14
1.6.4 更多 15
1.7 搜索手册以获取信息 15
1.7.1 准备工作 15
1.7.2 实践步骤 15
1.7.3 它是如何工作的 15
1.7.4 更多 16
第2章 使你的程序易于脚本化 17
2.1 技术要求 18
2.2 返回值以及如何读取它们 18
2.2.1 准备工作 18
2.2.2 实践步骤 18
2.2.3 它是如何工作的 20
2.2.4 更多 21
2.2.5 参考 21
2.3 使用有意义的返回值退出程序 21
2.3.1 准备工作 21
2.3.2 实践步骤 21
2.3.3 它是如何工作的 24
2.3.4 更多 25
2.4 重定向标准输入、标准输出
和标准错误 25
2.4.1 准备工作 25
2.4.2 实践步骤 25
2.4.3 它是如何工作的 27
2.4.4 更多 28
2.5 使用管道连接程序 28
2.5.1 准备工作 28
2.5.2 实践步骤 28
2.5.3 它是如何工作的 29
2.5.4 更多 30
2.5.5 参考 30
2.6 写入标准输出和标准错误 30
2.6.1 实践步骤 30
2.6.2 它是如何工作的 32
2.6.3 更多 32
2.7 从标准输入读取 33
2.7.1 准备工作 33
2.7.2 实践步骤 33
2.7.3 它是如何工作的 34
2.7.4 更多 35
2.8 编写一个管道友好的程序 36
2.8.1 准备工作 36
2.8.2 实践步骤 36
2.8.3 它是如何工作的 38
2.8.4 更多 39
2.9 将结果重定向到文件 39
2.9.1 准备工作 40
2.9.2 实践步骤 40
2.9.3 它是如何工作的 43
2.9.4 更多 44
2.10 读取环境变量 44
2.10.1 准备工作 44
2.10.2 实践步骤 45
2.10.3 它是如何工作的 46
2.10.4 更多 47
第3章 深入探索Linux中的C语言 48
3.1 技术要求 49
3.2 使用GNU编译器套件
链接库 49
3.2.1 准备工作 49
3.2.2 实践步骤 49
3.2.3 它是如何工作的 52
3.2.4 更多 53
3.3 切换C标准 54
3.3.1 准备工作 54
3.3.2 实践步骤 54
3.3.3 它是如何工作的 56
3.3.4 更多 57
3.4 使用系统调用 57
3.4.1 准备工作 58
3.4.2 实践步骤 58
3.4.3 它是如何工作的 60
3.4.4 更多 61
3.5 获取Linux和类UNIX头
文件信息 61
3.5.1 准备工作 61
3.5.2 实践步骤 62
3.5.3 它是如何工作的 63
3.5.4 更多 63
3.6 定义功能测试宏 63
3.6.1 准备工作 64
3.6.2 实践步骤 64
3.6.3 它是如何工作的 67
3.6.4 更多 68
3.7 编译过程的4个步骤 68
3.7.1 准备工作 68
3.7.2 实践步骤 68
3.7.3 它是如何工作的 71
3.8 使用Make编译 72
3.8.1 准备工作 72
3.8.2 实践步骤 73
3.8.3 它是如何工作的 74
3.9 使用GCC选项编写一个
通用的Makefile 74
3.9.1 准备工作 74
3.9.2 实践步骤 75
3.9.3 它是如何工作的 75
3.9.4 更多 75
3.10 编写一个简单的Make file 76
 3.10.1 准备工作 76
 3.10.2 实践步骤 76
 3.10.3 它是如何工作的 77
3.11 编写一个更高级的Makefile 77
 3.11.1 准备工作 78
 3.11.2 实践步骤 78
 3.11.3 它是如何工作的 82
第4章 处理程序中的错误 84
4.1 技术要求 85
4.2 为什么错误处理在系统编程
中很重要 85
4.2.1 准备工作 85
4.2.2 实践步骤 85
4.2.3 它是如何工作的 87
4.3 处理常见的错误 87
4.3.1 准备工作 87
4.3.2 实践步骤 88
4.3.3 它是如何工作的 90
4.4 错误处理和errno 90
4.4.1 准备工作 91
4.4.2 实践步骤 91
4.4.3 它是如何工作的 92
4.5 处理更多errno宏 93
4.5.1 准备工作 93
4.5.2 实践步骤 93
4.5.3 它是如何工作的 94
4

本目录推荐