嵌入式Linux系统工程师实训教程PDF电子书下载
- 电子书积分:17 积分如何计算积分?
- 作 者:庄严,王光宇,杨海峰编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2012
- ISBN:9787302280446
- 页数:556 页
第一篇 开发基础篇 3
第1章 嵌入式基础知识 3
1.1 知识结构 4
1.1.1 应用软件开发 4
1.1.2 系统与驱动开发 4
1.1.3 硬件开发 5
1.2 嵌入式系统 5
1.2.1 概念 6
1.2.2 构成 7
1.2.3 特点 7
1.2.4 知识结构 8
1.3 嵌入式Linux 9
1.3.1 ARMLinux简介 10
1.3.2 uCLinux简介 12
1.3.3 实时Linux 13
1.4 ARM Linux开发需要的知识基础 15
1.5 素质培养 15
1.6 学习建议 17
1.7 本章小结 17
1.8 课后习题 17
第2章 嵌入式完全实例 19
2.1 ARMLinux项目概述 20
2.1.1 软硬件环境及其搭建 20
2.1.2 嵌入式Linux系统开发 20
2.2 ARMLinux项目流程 22
2.2.1 整体架构 22
2.2.2 启动加载程序Bootloader 22
2.2.3 操作系统内核 22
2.2.4 根文件系统 22
2.2.5 驱动程序 22
2.2.6 应用程序 22
2.3 完全实例介绍 23
2.3.1 搭建交叉开发环境 24
2.3.2 烧写Bootloader 24
2.3.3 烧写内核 24
2.3.4 烧写根文件系统 24
2.3.5 发布应用程序 24
2.4 技能训练 24
2.4.1 完全安装流程 24
2.4.2 运行结果 25
2.5 本章小结 25
2.6 课后习题 25
第3章 Linux操作系统 27
3.1 Linux的介绍 28
3.1.1 概述 28
3.1.2 主流版本 28
3.1.3 Linux的选择 30
3.2 Linux的基本组成与操作 30
3.2.1 Linux的基本组成 30
3.2.2 Linux的基本操作 31
3.3 编辑工具Vi 34
3.3.1 Vi的简介 34
3.3.2 基本命令 34
3.4 命令列表 36
3.5 Shell命令 38
3.5.1 Shell的介绍 38
3.5.2 Shell的常用命令 39
3.5.3 Shell的配置文件 41
3.5.4 Shell的语法结构 41
3.5.5 命令脚本 42
3.6 常用主机服务配置 43
3.6.1 配置Samba 43
3.6.2 配置DHCP 44
3.6.3 配置TFTP 46
3.6.4 配置NFS 47
3.7 技能训练 48
3.7.1 Vi使用举例 48
3.7.2 压缩和解压缩 48
3.7.3 常用服务配置 49
3.8 案例特训——Linux启动设置 49
3.9 本章小结 50
3.10 课后习题 50
第4章 Shell程序设计 51
4.1 Shell编程概述 52
4.1.1 为何要进行Shell编程 52
4.1.2 简单Shell程序示例 52
4.1.3 Shell的一般结构 52
4.1.4 Shell程序的编写和执行过程 53
4.1.5 Shell程序除错 53
4.2 Shell编程详解 53
4.2.1 变量 53
4.2.2 运算符 54
4.2.3 条件判断 54
4.2.4 控制结构 55
4.2.5 函数 56
4.3 高级Shell命令 56
4.3.1 正则表达式 56
4.3.2 Grep 57
4.3.3 Sed 57
4.3.4 Awk 58
4.4 技能训练 58
4.4.1 Grep使用举例 58
4.4.2 Sed使用举例 58
4.4.3 Awk使用举例 58
4.5 案例特训 59
4.5.1 单文件Shell版本计算器实例 59
4.5.2 多文件Shell版本计算器实例 59
4.6 本章小结 60
4.7 课后习题 60
第5章 Linux下的程序设计 63
5.1 Linux环境软件开发概述 64
5.1.1 GNU计划 64
5.1.2 GNU Tools 65
5.1.3 代码编辑——Vi 65
5.2 工程管理——Makefile 65
5.2.1 Make命令 67
5.2.2 隐含规则 69
5.3 编译器集合——GCC的使用 69
5.3.1 GCC的用法 70
5.3.2 GCC选项 71
5.4 工具链——Binutils 75
5.4.1 Binutils简介 75
5.4.2 Ar命令举例 75
5.4.3 Nm命令 76
5.4.4 Objcopy命令 76
5.4.5 Objdump命令 76
5.4.6 Readelf命令 76
5.4.7 Gprof命令 76
5.5 库文件——Glibc 76
5.5.1 库文件命名 77
5.5.2 库文件操作 77
5.5.3 库文件升级 78
5.5.4 库文件的使用 79
5.6 调试工具GDB 80
5.6.1 Kdb使用 80
5.6.2 GDB使用 83
5.7 交叉开发工具 86
5.7.1 交叉编译 86
5.7.2 制作工具链 86
5.7.3 安装交叉工具链 87
5.7.4 系统配置 87
5.7.5 调试程序 87
5.8 专业级工具 88
5.8.1 UlraEdit 88
5.8.2 Source Insight 88
5.8.3 SecureCRT 89
5.8.4 CuteFTP 89
5.8.5 SVN 89
5.8.6 仿真器 89
5.9 技能训练 90
5.9.1 GCC使用 90
5.9.2 GDB调试 90
5.9.3 Binutils使用 90
5.9.4 交叉编译工具链的安装 91
5.9.5 交叉编译工具链的使用 91
5.10 案例特训 92
5.10.1 Linux环境C程序设计举例 92
5.10.2 ARMLinux环境C程序设计举例 93
5.11 本章小结 93
5.12 课后习题 93
第二篇 系统开发篇 97
第6章 开发基础 97
6.1 硬件开发基础 98
6.1.1 需求分析 98
6.1.2 方案确定 99
6.1.3 原理图绘制 100
6.1.4 PCB板图绘制 107
6.1.5 制板与调试 108
6.2 ARM体系结构与编程 108
6.2.1 ARM体系结构特点 109
6.2.2 ARM体系结构的版本 109
6.2.3 ARM存储系统概述 111
6.2.4 ARM微处理器工作状态 111
6.2.5 ARM处理器模式 112
6.2.6 ARM异常中断 113
6.2.7 ARM指令集 113
6.2.8 AMBA规范 114
6.2.9 AAPCS规范 115
6.2.10 S3C2410/2240/6410处理器概述 116
6.2.11 基于ARM Cortex-A8的S5PC100和S5PV210处理器 116
6.3 软件开发基础 118
6.3.1 高效的C编程 118
6.3.2 软件设计技巧 119
6.4 案例特训 119
6.4.1 LED驱动系统介绍 119
6.4.2 需求分析 120
6.4.3 开发板电路原理图分析 120
6.4.4 数据手册分析 121
6.4.5 编码设计 122
6.4.6 调试与测试 123
6.4.7 部署 123
6.5 本章小结 123
6.6 课后习题 123
第7章 启动加载Bootloader 125
7.1 Bootloader简介 126
7.1.1 概念 126
7.1.2 功能 128
7.2 Bootloader流程 128
7.2.1 Stage1:汇编阶段 129
7.2.2 Stage2:C语言阶段 131
7.3 Vivi移植开发 133
7.3.1 工程简介 133
7.3.2 目录结构 134
7.3.3 Makefile分析 135
7.3.4 执行流程分析 135
7.3.5 配置编译 137
7.3.6 移植开发 139
7.3.7 常用命令 139
7.4 U-Boot移植开发 139
7.4.1 工程简介 139
7.4.2 目录结构 140
7.4.3 Makefile分析 142
7.4.4 流程分析 142
7.4.5 配置编译 143
7.4.6 移植开发 146
7.4.7 调试测试 149
7.4.8 常用命令 149
7.4.9 环境变量 151
7.5 Bootloader的烧写 153
7.5.1 Vivi环境烧写根文件系统 153
7.5.2 U-Boot环境烧写根文件系统 153
7.6 技能训练 153
7.6.1 Vivi的Makefile分析 153
7.6.2 U-Boot代码执行流程分析 158
7.7 案例特训-自制Bootloader 159
7.8 本章小结 159
7.9 课后习题 159
第8章 系统内核 161
8.1 系统内核概述 162
8.1.1 内核简介 162
8.1.2 命名规则 162
8.1.3 发展历史 163
8.1.4 内核模块 163
8.1.5 内核特点 165
8.2 嵌入式Linux 2.4移植浅析 165
8.2.1 目录结构 165
8.2.2 嵌入式ARM Linux 2.4Makefile导读 166
8.2.3 执行流程 177
8.2.4 配置编译 180
8.3 嵌入式Linux 2.6移植浅析 182
8.3.1 内核新特点 182
8.3.2 Makefile导读 184
8.3.3 执行流程 185
8.3.4 配置编译 186
8.4 Linux内核启动流程分析 186
8.4.1 内核启动流程 186
8.4.2 内核启动控制脚本 187
8.5 系统调用 189
8.5.1 原子操作 189
8.5.2 系统调用 189
8.5.3 进程原理 190
8.6 Linux Kernel 3.0概述 190
8.6.1 概述 190
8.6.2 新特性 190
8.6.3 其他 191
8.7 技能训练 191
8.7.1 嵌入式Linux 2.6编译 191
8.7.2 内核烧写 193
8.8 案例特训-内核移植实例 194
8.9 本章小结 194
8.10 课后习题 194
第9章 文件系统 197
9.1 文件系统概述 198
9.1.1 文件系统的概述 198
9.1.2 Linux环境文件系统 198
9.1.3 基本概念 199
9.2 Linux常见文件系统 201
9.2.1 Extfs与Ext2fs 201
9.2.2 Ext3fs 202
9.2.3 Cramfs 202
9.2.4 Jffs2 203
9.2.5 Yaffs 204
9.2.6 其他文件系统 205
9.3 文件系统结构 206
9.3.1 VFS 206
9.3.2 MTD 209
9.4 根文件系统 211
9.4.1 根文件系统概述 211
9.4.2 根文件系统组成 211
9.4.3 制作根文件系统 212
9.5 “瑞士军刀”Busybox 212
9.5.1 Busybox介绍 212
9.5.2 代码简要分析 213
9.5.3 配置编译 213
9.6 根文件系统制作 213
9.6.1 制作Ramdisk 214
9.6.2 制作Ext2fs 214
9.6.3 制作Cramfs 215
9.6.4 制作Jffs2 215
9.6.5 制作Yaffs2 217
9.7 根文件系统烧写 217
9.7.1 Vivi环境烧写根文件系统 217
9.7.2 U-Boot环境烧写根文件系统 217
9.8 技能训练 218
9.8.1 用Busybox制作根文件系统 218
9.8.2 只读根文件系统Cramfs制作 218
9.8.3 Yaffs2根文件系统制作 218
9.9 案例特训 218
9.9.1 Vivi+ARM Linux 2.4+Cramfs实践 218
9.9.2 U-Boot+ARM Linux 2.6+Yaffs实践 219
9.10 本章小结 219
9.11 课后习题 219
第三篇 应用开发篇 223
第10章 任务管理 223
10.1 进程控制 224
10.1.1 Linux进程概述 224
10.1.2 Linux进程调度 224
10.2 系统调用及例程 227
10.2.1 getpid 228
10.2.2 fork/vfork/clone 229
10.2.3 Exit/_exit 230
10.2.4 exec 233
10.2.5 wait/waitpid 236
10.2.6 sleep 237
10.3 进程间通信 237
10.3.1 概述 237
10.3.2 信号 239
10.3.3 管道 240
10.3.4 消息队列 242
10.3.5 信号灯 243
10.3.6 共享内存 244
10.4 多线程应用 246
10.4.1 线程概述 246
10.4.2 POSIX线程库 249
10.4.3 线程编程实例 265
10.5 技能训练 268
10.5.1 多进程管道通信 268
10.5.2 多进程共享内存通信 270
10.5.3 多进程信号通信 272
10.5.4 多进程消息队列通信 273
10.6 案例特训 276
10.6.1 线程间信号量通信 276
10.6.2 多线程编程综合实例 277
10.7 本章小结 283
10.8 课后习题 283
第11章 文件I/O与串口通信编程 285
11.1 基本概念 286
11.1.1 文件的基本概念 286
11.1.2 文件操作基本元素 286
11.2 文件I/O 286
11.2.1 文件描述符 286
11.2.2 系统调用文件I/O 287
11.2.3 C库函数文件I/O 288
11.2.4 函数选择 289
11.2.5 文件属性 289
11.3 目录操作API 291
11.3.1 遍历目录 291
11.3.2 指针定位 291
11.3.3 目录项匹配 291
11.3.4 目录排序 291
11.4 串口通信编程 292
11.4.1 串口简介 292
11.4.2 常用串口 292
11.4.3 串口设备文件 293
11.4.4 打开串口 294
11.4.5 设置串口 294
11.4.6 发送数据 295
11.4.7 接收数据 295
11.4.8 串口与Modem 296
11.5 技能训练 296
11.5.1 文件读写综合实例 296
11.5.2 目录读写综合实例 298
11.6 案例特训-串口转发网络程序 301
11.7 本章小结 303
11.8 课后习题 303
第12章 网络通信编程 305
12.1 基于网络的应用开发 306
12.1.1 网络概述 306
12.1.2 套接字Socket 308
12.1.3 套接字类型 309
12.2 客户机/服务器(Client/Server)模式 309
12.2.1 基于连接的网络通信 310
12.2.2 基于无连接的网络通信 311
12.2.3 基于Socket的API 312
12.3 多路复用编程 314
12.3.1 多路复用 314
12.3.2 select模型 315
12.3.3 pselect模型 315
12.3.4 poll模型 316
12.3.5 epoll模型 316
12.4 技能训练 318
12.4.1 TCP程序实例 318
12.4.2 UDP协议实例 321
12.4.3 select开发实例 325
12.5 案例特训-epoll开发实例 325
12.6 本章小结 325
12.7 课后习题 325
第13章 开源软件移植 327
13.1 开源工程介绍 328
13.1.1 发展历史 328
13.1.2 开源特点 328
13.2 图形用户界面 329
13.2.1 X Window桌面环境 329
13.2.2 Qt与KDE 330
13.2.3 GTK与GNOME 330
13.2.4 MiniGUI 331
13.2.5 Microwindows 331
13.3 网络开源 332
13.3.1 简单网管协议SNMP 332
13.3.2 嵌入式浏览器Konqueror 334
13.3.3 嵌入式Web服务器GoAhead 335
13.3.4 服务器Boa 336
13.3.5 WebKit 336
13.4 数据库 337
13.4.1 MySQL 337
13.4.2 SQLite 337
13.5 多媒体 337
13.5.1 MPlayer 337
13.5.2 FFmpeg 339
13.6 Google-Android系统 340
13.6.1 Android系统介绍 340
13.6.2 Android S3C6410移植 341
13.7 3G移动通信 345
13.7.1 3G移动通信简介 345
13.7.2 会话发起协议SIP 345
13.8 开源软件移植 346
13.8.1 移植简介 346
13.8.2 移植过程 347
13.9 技能训练 347
13.9.1 SQLite移植 347
13.9.2 MPlayer及其移植 348
13.10 案例特训-Android及其移植 348
13.11 本章小结 348
13.12 课后习题 348
第14章 Qt软件设计 349
14.1 Qt及其使用 350
14.1.1 简介 350
14.1.2 程序库 350
14.1.3 界面 351
14.1.4 信号与槽 351
14.1.5 实践-窗口程序 352
14.2 Qt核心技术 352
14.2.1 Qt多线程设计 352
14.2.2 以Qt实现计算器 356
14.2.3 Qt动态曲线程序设计 358
14.2.4 Qt网络编程 359
14.2.5 Qt数据库编程 361
14.2.6 Qt多媒体编程 362
14.2.7 Qt中文显示 363
14.3 Qtopia及其移植 364
14.3.1 简介 364
14.3.2 移植 365
14.4 技能训练 370
14.4.1 FTP应用开发 370
14.4.2 Qtopia移植 371
14.5 案例特训 371
14.5.1 项目背景 371
14.5.2 硬件系统 371
14.5.3 程序设计 372
14.5.4 项目测试 372
14.5.5 项目部署 373
14.5.6 用户手册编写 373
14.6 本章小结 373
14.7 课后习题 373
第四篇 驱动程序篇 377
第15章 驱动基础 377
15.1 设备管理 378
15.1.1 设备文件 379
15.1.2 设备识别 379
15.1.3 设备分类 381
15.1.4 字符设备 382
15.1.5 块设备 383
15.1.6 网络设备 383
15.1.7 总线设备 384
15.2 驱动程序 384
15.2.1 驱动概述 384
15.2.2 接口关系 386
15.2.3 驱动功能 387
15.2.4 驱动特点 387
15.2.5 驱动架构 387
15.3 内核模块LKM 389
15.3.1 LKM概述 389
15.3.2 LKM编程 390
15.4 Linux 2.6驱动模型 391
15.4.1 devfs文件系统 391
15.4.2 sysfs文件系统 392
15.4.3 kobject 393
15.4.4 kset 393
15.4.5 subsystem 394
15.4.6 热插拔的实现 394
15.4.7 设备模型元素 394
15.4.8 Platform总线 396
15.5 系统资源 398
15.5.1 内存 398
15.5.2 IO端口 398
15.5.3 DMA 399
15.5.4 中断 404
15.5.5 时钟 404
15.6 字符设备驱动 405
15.6.1 编写流程 405
15.6.2 设备号 405
15.6.3 注册注销 406
15.6.4 数据结构 406
15.6.5 驱动实例 410
15.7 块设备驱动概述 415
15.7.1 block_device_operations 415
15.7.2 gendisk 415
15.7.3 request 416
15.7.4 bio 417
15.7.5 注册与注销 418
15.7.6 驱动实例 418
15.8 网络设备驱动概述 418
15.8.1 基本结构 418
15.8.2 基本方法 420
15.8.3 数据结构 422
15.8.4 CS8900A驱动实例 427
15.9 USB驱动 431
15.9.1 USB体系介绍 431
15.9.2 USB体系工作流程 432
15.9.3 USB驱动程序框架 432
15.9.4 主机驱动结构 433
15.9.5 Linux环境USB驱动 433
15.9.6 基于USB的WIFI网卡移植 434
15.10 技能训练-Linux 2.6内核模块编程 435
15.11 案例特训 435
15.11.1 Linux 2.6字符设备驱动编程 435
15.11.2 Linux 2.6块设备驱动编程 436
15.11.3 Linux 2.6网络设备驱动编程 436
15.11.4 Linux 2.6环境USB设备驱动编程 436
15.12 本章小结 436
15.13 课后习题 436
第16章 机制与策略 437
16.1 概述 438
16.2 中断 438
16.2.1 中断基础 439
16.2.2 ARM中断 442
16.2.3 处理架构 443
16.2.4 下半部 445
16.2.5 软中断 447
16.2.6 Tasklet 449
16.2.7 工作队列 451
16.3 时钟 452
16.3.1 定时器 452
16.3.2 时钟定时器实现 453
16.3.3 看门狗 455
16.4 并发 456
16.4.1 资源共享规则 456
16.4.2 原子操作 456
16.4.3 信号量 458
16.4.4 互斥量 458
16.4.5 自旋锁 459
16.5 阻塞与非阻塞 461
16.5.1 阻塞与非阻塞 461
16.5.2 等待队列 461
16.5.3 轮询 462
16.6 同步与异步 463
16.6.1 信号 463
16.6.2 AIO 463
16.7 可移植化(Portability) 464
16.7.1 自定义数据类型 464
16.7.2 字节序 466
16.7.3 对齐 466
16.8 技能训练 468
16.8.1 Tasklet实验 468
16.8.2 工作队列实验 469
16.9 案例特训-Linux环境多定时器实现 469
16.10 本章小结 471
16.11 课后习题 471
第17章 驱动实例 473
17.1 驱动程序开发架构 474
17.1.1 需求分析 474
17.1.2 详细设计 474
17.1.3 编码设计 475
17.1.4 调试测试 475
17.1.5 结案与归档 475
17.2 字符设备LED驱动设计实例 475
17.2.1 需求分析 475
17.2.2 详细设计 475
17.2.3 Linux 2.4驱动编码设计 477
17.2.4 Linux 2.6驱动编码设计 480
17.2.5 调试与测试 483
17.2.6 结案与归档 483
17.3 复杂字符设备-触摸屏驱动移植 483
17.3.1 需求分析 483
17.3.2 S3C2410-Linux2.6详细设计 483
17.3.3 调试与测试 485
17.3.4 结案与归档 485
17.4 复杂字符设备-LCD(DMA)驱动分析 485
17.4.1 需求分析 485
17.4.2 S3C6410-Linux2.6-LCD详细设计 486
17.4.3 S3C2440-Linux2.6-LCD详细设计 490
17.4.4 调试与测试 492
17.4.5 结案与归档 492
17.5 块设备开发-NandFlash驱动移植 492
17.5.1 需求分析 492
17.5.2 NandFlash驱动移植 493
17.5.3 Yaffs2文件系统移植 494
17.5.4 调试与测试 495
17.5.5 结案与归档 495
17.6 网络设备开发-CS8900 495
17.6.1 需求分析 495
17.6.2 详细设计 495
17.6.3 调试与测试 499
17.6.4 结案与归档 499
17.7 网络设备开发-DM9000 499
17.7.1 需求分析 499
17.7.2 详细设计 499
17.7.3 调试与测试 500
17.7.4 结案与归档 501
17.8 总线类驱动-USB 501
17.8.1 需求分析 501
17.8.2 详细设计 501
17.8.3 调试与测试 503
17.8.4 结案与归档 503
17.9 技能训练 504
17.9.1 数码管驱动程序移植 504
17.9.2 矩阵键盘中断驱动移植 506
17.9.3 基于Qtopia的驱动测试程序 512
17.10 案例特训-基于QtopiaLCD和触摸屏的驱动移植 514
17.11 本章小结 514
17.12 课后习题 514
第五篇 调试测试篇 517
第18章 调试与测试 517
18.1 调试技术 518
18.2 Bootloader调试 518
18.2.1 硬件调试器 518
18.2.2 点灯 519
18.2.3 串口调试 519
18.3 内核调试技术 519
18.3.1 printk调试技术 520
18.3.2 Kprobe调试技术 520
18.3.3 使用KGDB调试技术 521
18.3.4 KDB调试技术 521
18.3.5 BDI2000仿真器 521
18.4 驱动调试方法 522
18.4.1 通过DEBUG预处理 522
18.4.2 通过/proc系统 522
18.4.3 通过ioctl系统调用 523
18.4.4 通过strace命令 523
18.5 应用调试 524
18.5.1 使用网络文件系统(NFS)简化调试过程 524
18.5.2 多进程的调试方法 525
18.5.3 多线程的调试方法 526
18.5.4 运行时错误检查方法 527
18.5.5 程序性能的改善 527
18.5.6 代码覆盖分析 528
18.5.7 Qt软件测试 528
18.6 测试技术 528
18.6.1 范围 528
18.6.2 工具 529
18.6.3 白盒测试 530
18.6.4 黑盒测试 530
18.6.5 压力测试 531
18.6.6 交叉测试 531
18.6.7 烧入固化测试 531
18.6.8 可靠性评估 531
18.7 技能训练 532
18.7.1 U-Boot调试测试 532
18.7.2 Linux测试举例 534
18.8 案例特训 535
18.8.1 Linux环境多进程调试实例 535
18.8.2 Linux环境多线程调试实例 535
18.9 本章小结 535
18.10 课后习题 535
第19章 基于Modbus的嵌入式工业控制系统设计 539
19.1 项目概述 540
19.2 总体介绍 540
19.2.1 Modbus协议介绍 540
19.2.2 Modbus协议的特点 541
19.3 Modbus协议详细设计 542
19.3.1 Modbus通信模型 542
19.3.2 Modbus查询示意图 543
19.3.3 Modbus的协议模型 543
19.3.4 设计思路及流程 544
19.3.5 Modbus数据帧结构 544
19.3.6 Win32环境服务端重要代码 545
19.3.7 程序运行结果 547
19.4 嵌入式ARM Linux环境移植 547
19.4.1 Linux环境重要的代码 548
19.4.2 交叉编译环境构建 549
19.4.3 嵌入式ARM Linux开发板介绍 550
19.4.4 嵌入式ARM Linux开发板移植 551
19.5 程序调试测试 552
19.5.1 Windows环境调试 552
19.5.2 Linux环境调测 553
19.5.3 嵌入式ARMLinux开发板测试 555
19.6 本章小结 556
19.7 课后习题 556
- 《市政工程基础》杨岚编著 2009
- 《工程静力学》王科盛主编 2019
- 《中央财政支持提升专业服务产业发展能力项目水利工程专业课程建设成果 设施农业工程技术》赵英编 2018
- 《名医教你练走颈肩腰腿痛》许学猛 2018
- 《化学反应工程》许志美主编 2019
- 《绿色过程工程与清洁生产技术 张懿院士论文集精选 上》《绿色过程工程与清洁生产技术》编写组编 2019
- 《软件工程》齐治昌,谭庆平,宁洪编著 2019
- 《化学工程与工艺专业实验指导》郭跃萍主编 2019
- 《博士教你识中药》(中国)黄汉超 2019
- 《物联网与嵌入式技术及其在农业上的应用》马德新 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《东北民歌文化研究及艺术探析》(中国)杨清波 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019