并行计算与安全编程(网络空间安全学科系列教材)
举报
正版全新
-
作者:
彭浩
-
出版社:
清华大学出版社
-
ISBN:
9787302716761
-
出版时间:
2022-12
售价
¥
46.64
6.7折
定价
¥69.90
品相
全新
上书时间2026-07-28
卖家超过10天未登录
-
-
商品描述:
-
【书 名】 并行计算与安全编程(网络空间安全学科系列教材)
【书 号】 9787302716761
【出 版 社】 清华大学出版社
【作 者】 彭浩
【出版日期】 2026-05-01
【开 本】 16开
【定 价】 69.90元
【编辑推荐】
本教材秉持理论与实践相结合、基础与前沿相融合的理念。以培养学生的实际编程能力和解决复杂问题的能力为目标,在内容编排上,从并行计算和安全编程的基本概念入手,逐步深入到具体的编程模型、技术和应用案例,遵循由浅入深、循序渐进的原则。注重引导学生理解并行计算和安全编程的核心原理,通过丰富的实例和习题,让学生在实践中巩固所学知识,提高动手能力。同时,关注行业*新发展动态,及时将前沿技术和研究成果融入教材内容,使学生能够接触到*先进的技术理念和方法。
【内容简介】
本书主要围绕并行计算技术和安全编程防护双核心,系统构建从基础理论到代码实践的知识体系。全书共11章,先讲解并行计算基础,内容涵盖并行计算的概念、并行程序设计模型及并行计算机分类等;再深入介绍并行编程技术,包括OpenMP、Win32API、Socket、MPI、CUDAGPU、MindSporeGPU等编程方法与实战;*后聚焦安全编程,剖析并行环境特有的安全风险,介绍安全编程原则、漏洞防御及专业工具应用,*后以实际编程中出现的安全风险作案例,帮助读者理解与应用。本书特色鲜明。一是场景化案例丰富,案例多源自分布式数据处理、多线程文件操作等实际场景,兼顾技术代表性与安全复杂性;二是跨领域融合紧密,打破了并行计算与安全编程的割裂,突出并行环境下的安全防护要点;三是实用性强,每个技术模块都配套代码示例与实验指导,助力读者将理论转化为实践能力。本书可作为高等院校计算机科学与技术、网络空间安全、软件工程等专业的本科生与研究生教材,也可供企业研发人员,如并行计算工程师、安全开发工程师及分布式系统运维人员参考,为其解决实际工作中的并行与安全问题提供指导。
【目录】
目录
第1章并行计算1
1.1并行计算概述1
1.1.1并行计算的定义及摩尔定律1
1.1.2并行计算的分类2
1.1.3并行计算的优势3
1.1.4并行计算的应用分类3
1.1.5应用系统的并行性3
1.1.6并行计算的研究内容4
1.2并行程序设计策略和模型4
1.2.1设计策略4
1.2.2设计模型5
1.3进程与线程6
1.3.1进程6
1.3.2线程6
1.3.3进程或线程同步互斥的控制方法7
1.4评价指标7
1.4.1基本评估7
1.4.2系统加速比8
1.4.3系统可扩展性8
1.5并行计算机的分类9
1.5.1并行计算机的控制结构9
1.5.2地址空间10
1.5.3并行计算机系统结构模型11
1.6并行计算机系统互联15
1.6.1静态互联网络15
1.6.2动态互联网络18
1.7习题19
第2章并行算法设计基础21
2.1并行程序设计概述21
2.1.1并行算法设计难的原因212.1.2并行层次与代码粒度22
2.1.3并行语言的构造方法24
2.1.4并行程序开发策略27
2.1.5并行编程范式28
2.2并行程序设计模型30
2.2.1隐式并行30
2.2.2数据并行30
2.2.3消息传递31
2.2.4共享变量31
2.2.53种显式并行程序设计模型的主要特性32
2.3并行程序设计过程32
2.3.1划分33
2.3.2通信33
2.3.3组合33
2.3.4映射33
2.4习题34
第3章OpenMP编程36
3.1OpenMP编程基础36
3.1.1OpenMP编程定义36
3.1.2OpenMP并行编程模型36
3.1.3OpenMP程序结构37
3.2编译指导语句39
3.2.1并行域结构40
3.2.2共享任务结构41
3.2.3同步结构48
3.2.4数据处理子句54
3.3运行时库函数63
3.3.1分类与功能63
3.3.2基本函数63
3.3.3运行时库函数的注意事项67
3.4环境变量68
3.5实例68
3.5.1数值求和68
3.5.2数值积分72
3.6习题77
第4章Windows编程79
4.1Windows线程库79
4.1.1线程基本概念与内核对象79
4.1.2线程创建与生命周期管理80
4.1.3临界区的实现与优化81
4.1.4线程本地存储的实现机制81
4.1.5线程高级操作与性能优化83
4.1.6内存模型85
4.2Win32 API多线程程序设计85
4.2.1线程创建的核心机制与底层实现86
4.2.2线程属性的精细化控制87
4.2.3线程同步原语88
4.2.4线程间通信的高级模式89
4.2.5多线程程序的资源管理与异常处理90
4.3MFC线程库93
4.3.1MFC线程模型的体系结构93
4.3.2工作线程的创建与参数传递94
4.3.3UI线程的定制与消息循环95
4.3.4线程同步原语的MFC封装97
4.3.5线程间通信的*佳实践98
4.3.6性能优化与常见陷阱100
4.3.7多线程文件处理器100
4.4.NET Framework线程库101
4.4.1Thread类101
4.4.2线程池103
4.4.3任务并行库105
4.4.4异步编程模型107
4.4.5线程同步108
4.4.6线程安全集合109
4.4.7多线程编程的*佳实践110
4.5习题110
第5章Socket编程113
5.1Socket编程基础113
5.1.1什么是Socket113
5.1.2Socket的类型113
5.1.3TCP与UDP的对比114
5.1.4Socket通信的基本流程114
5.2网络模型116
5.2.1循环服务器模型117
5.2.2并发服务器模型120
5.2.3多进程与多线程模型对比125
5.3Socket API125
5.3.1套接字创建125
5.3.2地址绑定127
5.3.3监听连接129
5.3.4接受连接130
5.3.5发起连接132
5.3.6数据传输133
5.3.7关闭套接字134
5.4网络通信模式135
5.4.1阻塞I/O与非阻塞I/O135
5.4.2多进程并发与多线程并发139
5.4.3通信模式的对比与选择143
5.5编程实践144
5.5.1文件传输程序144
5.5.2聊天室程序147
5.5.3分布式计算框架雏形151
5.6习题154
第6章MPI多进程编程156
6.1MPI编程基础156
6.1.1MPI简介156
6.1.2MPI程序特点156
6.1.3MPI简单程序实现157
6.2MPI常用函数介绍158
6.2.1环境管理函数158
6.2.2点对点通信158
6.2.3集体通信函数159
6.2.4高级功能函数159
6.3MPICH安装与MPI程序运行160
6.3.1MPICH简介160
6.3.2MPICH的安装和配置160
6.3.3简单程序运行168
6.4MPI的点对点通信169
6.4.1点对点通信介绍169
6.4.2阻塞通信169
6.4.3非阻塞通信172
6.4.4简单程序说明173
6.5MPI集体通信175
6.5.1集体通信介绍175
6.5.2数据分发175
6.5.3数据收集175
6.5.4数据散发176
6.5.5全交换176
6.5.6归约与扫描177
6.5.7同步177
6.6实例177
6.6.1矩阵转置177
6.6.2矩阵分解179
6.7习题180
第7章CUDA GPU编程183
7.1GPU技术183
7.1.1GPU简介183
7.1.2GPU与并行计算184
7.2CUDA架构185
7.2.1定义CUDA中的线程、块和网格185
7.2.2将函数交付内核执行188
7.2.3主机与CUDA设备间的通信188
7.2.4CUDA线程的同步与通信188
7.2.5内核和网格189
7.2.6块189
7.2.7线程189
7.2.8CUDA C语言扩展189
7.3环境搭建190
7.3.1检查显卡支持的CUDA版本190
7.3.2安装VS 2022190
7.3.3安装CUDA190
7.3.4检测CUDA是否安装成功192
7.3.5配置VS项目194
7.4核函数196
7.4.1核函数语句格式196
7.4.2线程组织197
7.4.3核函数注意事项197
7.4.4函数执行空间标识符197
7.5CUDA程序错误检测199
7.5.1检测运行时错误的宏函数199
7.5.2检查运行时API函数199
7.5.3检查核函数200
7.6并行编程案例201
7.6.1矩阵加法201
7.6.2用块并行计算矩阵乘法203
7.6.3一般的直方图统计字母频率206
7.6.4共享内存的直方图208
7.6.5better版归约209
7.7习题211
第8章MindSpore GPU编程214
8.1环境配置214
8.1.1获取安装命令214
8.1.2安装指南214
8.2基本介绍219
8.2.1昇思MindSpore219
8.2.2设计理念220
8.2.3华为昇腾AI全栈221
8.2.4快速入门221
8.2.5张量227
8.2.6数据加载与处理231
8.2.7网络构建239
8.2.8函数式自动微分243
8.2.9模型训练247
8.2.10保存与加载252
8.2.11Graph Mode加速254
8.3并行261
8.3.1分布式并行261
8.3.2分布式并行启动方式263
8.3.3数据并行263
8.3.4算子级并行266
8.3.5优化器并行277
8.3.6流水线并行280
8.3.7并行优化策略287
8.4基于双递归搜索的多维混合并行案例288
8.4.1概述288
8.4.2操作实践288
8.5习题291
第9章安全编程原则292
9.1安全编程基本原则和*佳实践292
9.1.1核心安全原则292
9.1.2跨平台通用*佳实践294
9.1.3并行计算特有的安全原则296
9.2常见编程错误与漏洞298
9.2.1内存安全漏洞298
9.2.2并发相关漏洞300
9.2.3网络与协议漏洞302
9.2.4漏洞防御的通用策略304
9.3安全编程工具和技术304
9.3.1静态分析工具305
9.3.2动态测试技术306
9.3.3加密与安全协议库308
9.3.4工具链的协同与集成310
9.4习题311
第10章并行编程中的安全问题313
10.1竞争条件与死锁313
10.1.1竞争条件原理与类型313
10.1.2死锁的形成与预防315
10.1.3并行框架中的死锁案例316
10.2数据竞争与同步问题319
10.2.1数据竞争的本质与影响319
10.2.2同步机制的安全使用320
10.2.3检测与修复工具322
10.3并行编程中的安全漏洞与攻击324
10.3.1分布式系统特有漏洞325
10.3.2并行服务面临的攻击类型327
10.3.3漏洞与攻击的防御与加固330
10.4习题331
第11章并行安全编程案例334
11.1竞态条件与线程安全计数器334
11.1.1互斥锁保护计数器334
11.1.2交易中的安全漏洞335
11.2死锁与资源互斥338
11.2.1哲学家换礼物338
11.2.2打印机与扫描机争夺340
11.2.3十字路口交通死锁342
11.3并行导致资源泄露348
参考文献350
【前言】
前言
“网络空间安全学科系列教材”编委会并行计算与安全编程出版说明并行计算与安全编程前言随着数字化技术的飞速发展,高性能计算与网络空间安全已成为信息技术领域的两大核心支柱。从分布式数据中心的海量数据处理,到人工智能训练中的GPU集群运算,再到工业控制系统的实时并行调度,并行计算技术已渗透到科研、产业、国防等各个关键领域,成为提升计算效率、突破算力瓶颈的核心手段。然而,并行架构的复杂性也带来独特的安全挑战——多线程资源竞争可能导致数据不一致,分布式节点通信存在数据泄露风险,多进程同步缺陷易引发系统崩溃,这些并行架构特有的安全漏洞往往成为攻击者突破系统防线的关键入口。
当前,多数并行计算教材侧重技术实现却忽视安全防护,安全编程书籍又多聚焦串行环境,二者的割裂导致不少开发者虽然掌握了并行加速能力,却因缺乏安全编程思维,而开发出高效却脆弱的系统。在此背景下,我们结合北京航空航天大学网络空间安全学科的教学积累与科研实践,编写了《并行计算与安全编程》这本书,旨在填补并行技术与安全防护的知识断层,培养兼具高性能计算能力与安全防御思维的复合型人才。
本书以并行计算技术为骨、以安全编程思想为魂,构建了理论奠基—技术实践—安全防护三位一体的知识体系,共分为11章。第1章从并行计算的基本概念入手,解析并行性原理、并行程序设计模型与并行计算机分类,为后续学习搭建理论框架;第2章聚焦并行算法设计基础,通过PCAM设计过程,引导读者掌握从问题拆解到任务分配的完整逻辑;第3~8章系统展开并行编程技术实战,涵盖共享内存编程(OpenMP)、Windows多线程开发、网络通信编程(Socket)、分布式计算(MPI)、GPU加速(CUDA)及深度学习框架(MindSpore),每个技术模块均配套完整代码示例,从环境搭建到核心功能实现,逐步引导读者落地并行程序开发;第9~11章主要讲述安全编程的理论概念和并行安全案例,深入剖析并行环境下的竞争条件、死锁、数据竞争等安全风险。
在内容编排上,本书坚持三大特色: 一是场景化案例驱动,所有案例均源自实际应用场景——分布式计算框架的节点通信加密、多线程文件处理器的临界区防护、聊天室程序的用户身份认证,既展现并行技术的工程价值,又凸显安全编程的必要性;二是跨平台与兼容性,覆盖Linux、Windows、分布式集群等多环境,适配OpenMP、MPI、CUDA等主流并行模型,满足不同学习与开发需求;三是理论与实践平衡,每个技术点先讲解核心原理,再通过案例展开实践,同时穿插安全编程意识,点明并行开发中的潜在风险与防御要点,让读者在掌握技术的同时建立安全意识。
本书可作为高等院校计算机科学与技术、网络空间安全、软件工程等专业的本科及研究生教材,适配“并行程序设计”“系统安全”“高性能计算”等课程,建议读者具备C/C++编程基础与操作系统基本概念。对于企业研发人员,本书可作为并行计算工程师、安全开发工程师的参考读物,尤其适合需要解决分布式系统安全、高性能计算防护等实际问题的技术人员。
由于并行计算与安全编程技术迭代迅速,书中难免存在疏漏之处,恳请广大读者、同行专家批评指正,以便编者在后续修订中不断完善,共同推动并行安全领域的教学与科研发展。
编者2026年1月
孔网啦啦啦啦啦纺织女工火锅店第三课
开播时间:09月02日 10:30
即将开播,去预约

直播中,去观看