Linux编程基础(微课版)

Linux基础入门的教材,适合初学者
分享 推荐 0 收藏 8 阅读 512
黄继海 (作者) 978-7-115-69817-9

关于本书的内容有任何问题,请联系 张斌

1. 阶梯式知识架构,覆盖全层次学习需求
采用循序渐进的编排逻辑,内容由浅入深、层层递进。
2. 理论实践深度融合,强化工程应用能力
每章均设置项目实训环节,精心设计实战项目。第10章为综合案例,完整呈现全流程开发过程。
3. 追踪技术发展动态,拓展前沿技术视野
设置大数据与人工智能章节,通过对前沿技术的深入剖析,帮助读者及时掌握行业发展趋势,拓宽技术视野,提升职业竞争力。
4. 配套丰富资源,提升学习效率
为助力读者高效学习,本书提供了课件、答案、源代码、大纲、教案、视频等配套资源。
¥65.00 ¥55.25 (8.5 折)

内容摘要

本书面向 Linux 开发的学习者与从业者,构建从基础操作、系统编程到高级应用的完整知识体系,并融合大数据与人工智能等前沿技术,致力于衔接传统开发与现代技术生态。
全书以“理论+实践”为主线,通过大量示例与项目,帮助读者快速掌握Linux环境下的开发技能。本书内容分为4篇:基础篇涵盖系统安装、常用命令及开发环境配置等;进阶篇深入文件操作与多任务编程,包括文件I/O、进程管理、线程管理等核心机制;高阶篇聚焦Linux平台上的大数据编程与人工智能编程;实战篇通过综合项目“银行管理系统”,覆盖项目分析、业务实现等流程,强化读者的工程实践与系统开发能力。
本书既可作为高校计算机相关专业的教材,也可以作为相关工程技术人员和计算机爱好者学习Linux系统编程的参考书。

目录

第1篇 基础篇

第1章 Linux系统与Shell基础
1.1 Linux操作系统简介 2
1.1.1 Linux起源和发展历程 2
1.1.2 Linux发行版的多样性 3
1.1.3 Linux主要应用领域 4
1.2 Shell基础 5
1.2.1 Shell概述 5
1.2.2 目录的组织结构 6
1.2.3 用户主目录与文件路径 7
1.2.4 Linux命令的语法结构 7
1.2.5 Shell使用技巧 8
1.3 文件与目录管理 10
1.3.1 目录导航与文件列表查看 10
1.3.2 文件或目录的创建 12
1.3.3 文件或目录的复制、移动和重命名 12
1.3.4 文件或目录的删除 13
1.3.5 文件内容的查看与编辑 14
1.3.6 文件的搜索与统计 15
1.3.7 文件的硬链接与符号链接 16
1.4 文件属性与权限管理 17
1.4.1 文件属性详解 17
1.4.2 修改文件属性 19
1.4.3 Linux默认权限设置 20
1.5 用户与用户组管理 21
1.5.1 Linux用户 21
1.5.2 用户配置文件 21
1.5.3 用户账户管理命令 23
1.5.4 组账户基础 28
1.5.5 组管理命令 29
1.6 软件包管理 31
1.7 项目:Linux系统综合应用 33
1.7.1 项目分析与设计 33
1.7.2 项目实施 34
1.8 本章小结 37
习题 37

第2章 Linux下常见开发工具
2.1 概述 39
2.2 Vim文本编辑器 40
2.2.1 Vim简介 40
2.2.2 普通模式 40
2.2.3 插入模式 41
2.2.4 命令模式 41
2.3 GCC编译器 42
2.3.1 GCC编译器简介 42
2.3.2 GCC的编译过程 43
2.3.3 利用GCC开发C语言程序 44
2.4 GDB调试器 46
2.4.1 GDB简介 46
2.4.2 调试示例 46
2.5 make工具 48
2.5.1 项目示例 48
2.5.2 Make工作机制 50
2.5.3 Makefile变量 50
2.5.4 Makefile规则 52
2.6 项目:Makefile的编写 52
2.6.1 项目分析与设计 52
2.6.2 项目实施 53
2.7 本章小结 55
习题 55

第3章 Shell编程基础
3.1 Shell基础 57
3.1.1 Shell变量 57
3.1.2 Shell变量配置文件 58
3.1.3 Shell变量查看命令 59
3.1.4 Shell中常用的符号 61
3.2 Shell脚本 69
3.2.1 Shell脚本的概念 69
3.2.2 Shell脚本的变量 70
3.2.3 Shell脚本的逻辑 72
3.2.4 Shell脚本的循环 74
3.2.5 Shell脚本的参数 77
3.2.6 Shell脚本的执行 80
3.3 项目:日志管理系统 81
3.3.1 项目分析与设计 81
3.3.2 项目实施 82
3.4 本章小结 86
习题 86

第2篇 进阶篇

第4章 文件I/O操作
4.1 文件系统 89
4.1.1 Linux的VFS 89
4.1.2 文件存储方式 90
4.2 文件操作基础 90
4.2.1 文件描述符 91
4.2.2 文件的创建、打开与关闭 91
4.2.3 文件的读写操作 94
4.2.4 文件的定位 95
4.3 文件属性操作 97
4.3.1 获取文件属性信息 97
4.3.2 设置文件属性 98
4.4 目录操作 99
4.4.1 创建与删除目录 99
4.4.2 设置工作目录 100
4.5 标准I/O函数库 101
4.5.1 标准I/O函数库基础 101
4.5.2 文件的打开与关闭 101
4.5.3 文件的读写操作 102
4.5.4 文件的定位操作 105
4.5.5 直接输入/输出 105
4.6 项目:文件操作 107
4.6.1 项目分析与设计 107
4.6.2 项目实施 107
4.7 本章小结 112
习题 112

第5章 进程管理
5.1 进程概述 114
5.1.1 进程的概念 114
5.1.2 进程的结构 114
5.1.3 进程的内存映像 115
5.1.4 进程的属性 117
5.2 进程控制 118
5.2.1 进程创建 118
5.2.2 进程等待 120
5.2.3 进程终止 123
5.2.4 system()函数 124
5.2.5 执行新程序 124
5.3 信号 125
5.3.1 信号的概念及分类 125
5.3.2 信号的捕获 126
5.4 守护进程 127
5.4.1 守护进程概述 127
5.4.2 创建守护进程 128
5.5 项目:系统日志 130
5.5.1 项目分析与设计 130
5.5.2 项目实施 130
5.6 本章小结 132
习题 133

第6章 线程管理
6.1 线程的本质 135
6.2 线程基本操作 136
6.2.1 线程标识 136
6.2.2 线程创建 136
6.2.3 线程终止 138
6.3 线程的同步 139
6.3.1 互斥锁 140
6.3.2 条件变量 142
6.4 项目:线程应用 144
6.4.1 项目分析与设计 144
6.4.2 项目实施 145
6.5 本章小结 148
习题 148

第7章 进程间通信
7.1 进程间通信的核心方法 150
7.2 共享内存 151
7.2.1 共享内存及其工作原理 151
7.2.2 共享内存相关函数 152
7.2.3 共享内存示例 153
7.3 信号量 155
7.3.1 基于信号量的进程同步与互斥机制 156
7.3.2 信号量相关函数 158
7.3.3 信号量示例 158
7.4 管道通信 160
7.4.1 管道的创建和关闭 160
7.4.2 管道的读写操作 160
7.5 命名管道 161
7.5.1 命名管道的创建 162
7.5.2 命名管道的使用 162
7.6 项目:信号量的应用 164
7.6.1 项目分析与设计 164
7.6.2 项目实施 165
7.7 本章小结 169
习题 169

第3篇 高阶篇

第8章 大数据编程基础
8.1 大数据概述 172
8.1.1 大数据的特点 172
8.1.2 大数据的应用场景 174
8.2 大数据编程核心技术 175
8.2.1 分布式存储与计算 175
8.2.2 数据处理框架 175
8.2.3 Linux环境下常用的大数据开发语言 176
8.3 Linux下的Hadoop的安装和配置 176
8.3.1 创建Hadoop用户 177
8.3.2 更新apt 177
8.3.3 安装SSH和配置SSH无密码登录 178
8.3.4 搭建Java环境 178
8.3.5 安装与配置Hadoop 179
8.3.6 配置伪分布式模式 179
8.3.7 启动集群 182
8.3.8 集群功能测试 182
8.4 本章小结 184
习题 184

第9章 人工智能编程基础
9.1 面向人工智能的Linux编程准备 186
9.1.1 Linux与人工智能编程 186
9.1.2 Python开发基础 187
9.2 机器学习入门 187
9.2.1 分类问题示例 187
9.2.2 机器学习的核心思想 189
9.2.3 Python代码实现 190
9.3 机器学习Linux环境配置 191
9.3.1 系统环境更新 191
9.3.2 包管理工具 192
9.3.3 实战演练 194
9.4 深度学习 194
9.4.1 高维数据挑战 194
9.4.2 深度神经网络 197
9.4.3 CNN改进方案 199
9.4.4 GPU加速与工程实践 200
9.5 深度学习Linux环境配置 201
9.5.1 显卡驱动的安装与相关配置 202
9.5.2 CUDA和cuDNN配置 203
9.5.3 深度学习框架安装 205
9.5.4 综合实战 206
9.6 本章小结 210
习题 210

第4篇 实战篇
第10章 综合项目
10.1 项目分析 213
10.1.1 开发环境 213
10.1.2 项目概述 213
10.1.3 模块结构 214
10.2 效果展示 214
10.2.1 银行管理系统客户端界面 214
10.2.2 银行管理系统服务端界面 215
10.3 银行管理系统业务实现 215
10.3.1 银行开户系统功能实现 215
10.3.2 银行注销系统功能实现 218
10.3.3 银行存款系统功能实现 222
10.3.4 银行取款系统功能实现 225
10.3.5 银行查询系统功能实现 229
10.3.6 银行转账系统功能实现 232
10.3.7 银行初始化系统功能实现 236
10.3.8 银行密码系统功能实现 240
10.3.9 银行管理系统设计总结 246
10.4 本章小结 246

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

黄继海,教授,郑州工程技术学院信息工程学院副院长,硕士研究生导师,河南省人工智能大模型技术及应用工程研究中心常务副主任,郑州市人工智能开源技术重点实验室主任,郑州市学术技术带头人,河南省教育厅学术技术带头人,河南省人工智能学会常务理事。主要从事车联网技术、分布式计算、智能信息处理等方面的理论研究与软件开发工作,先后主持(参与)完成了多个项目,主持获得河南省科技进步奖1项,主持省级科研、教研项目和生产服务项目10余项;发表科研教研论文30余篇;主、参编教材6部。

购买本书用户

相关图书

人邮微信
本地服务
教师服务
教师服务
读者服务
读者服务
返回顶部
返回顶部