Linux实用教程

Linux实用教程

炎士涛, 冯洪玉, 主编

出版社:清华大学出版社

年代:2014

定价:35.0

书籍简介:

本书以Centos 6.0为基础,通过众多实例和重点内容讲解,展示了Linux的各种典型应用,深入浅出地介绍了Linux操作系统的各个重要知识点。全书共分10章,主要内容包括Linux安装、常用命令讲解、vi的使用方法、shell编程、Gcc和Gdb的使用、计划任务、进程管理、Linux引导流程、文件系统和网络设置。

书籍目录:

第1章Linux安装/1

1.1案例分析与解决/1

1.1.1案例一 安装CentOS单一操作系统/1

1.1.2案例二 虚拟机下安装CentOS

操作系统/16

1.1.3案例三 安装Windows XP+CentOS

双操作系统/20

1.2Linux内核及发布版本简介/26

1.2.1Linux内核简介/26

1.2.2Linux内核系统体系结构/27

1.2.3Linux内核版本/28

1.2.4Linux发布版本/30

1.3正确关机方法/33

1.4重点回顾/35

1.5本章习题/36

阅读材料——Linux操作系统/36

第2章常用命令/39

2.1案例分析与解决/39

2.1.1案例一 搜索文件实施特定操作/39

2.1.2案例二 用户和用户组权限设定/44

2.1.3案例三 Linux下压缩打包实施

备份/51

2.2文件及文件相关命令/54

2.2.1目录操作命令/54

2.2.2文件操作命令/57

2.2.3联机帮助命令/67

2.3权限与目录配置/69

2.3.1用户与用户组/69

2.3.2文件权限/78

2.3.3目录配置/85

2.4压缩与打包命令/87

2.4.1文件压缩命令/872.4.2文件打包命令/93

2.5重点回顾/94

2.6本章习题/95

阅读材料——Linux命令行与命令/96

第3章vi用法/99

3.1案例分析与解决/99

3.1.1案例一 使用vi建立并修改C程序/99

3.1.2案例二 vi工作环境设置/102

3.1.3案例三 vi命令使用的综合案例/105

3.2vi功能详解/108

3.2.1vi的启动和退出/108

3.2.2vi的工作模式/110

3.2.3文本编辑/112

3.2.4文件操作/116

3.3vi使用注意事项/117

3.4重点回顾/119

3.5本章习题/120

阅读材料——最优秀的5个Linux文本编辑器/121

第4章Shell编程/124

4.1认识Shell及Shell脚本/125

4.1.1Shell的类型介绍/126

4.1.2Shell脚本/128

4.2Shell变量功能/128

4.2.1环境变量/128

4.2.2本地用户变量/131

4.2.3特殊变量/133

4.2.4元字符/134

4.2.5变量操作/135

4.3学习Shell Script/136

4.3.1条件判断式/137

4.3.2分支控制结构/139

4.3.3控制流结构/141

4.3.4函数/145

4.3.5Shell脚本调试方法/147

4.4案例分析与解决/150

4.4.1案例一 编程批量添加删除用户/150

4.4.2案例二 检测启动Apache服务器

程序/153

4.4.3案例三 自动备份系统重要内容/154

4.5重点回顾/155

4.6本章习题/155

阅读材料——Shell版本及Shell脚本/156

第5章gcc及gdb使用/158

5.1Linux下C编程概述/158

5.1.1程序执行一般过程/159

5.1.2编译过程描述/159

5.1.3Emacs编辑工具使用方法/160

5.2gcc编译工具/163

5.2.1gcc使用方法简介/164

5.2.2gcc编译流程/165

5.2.3相关参数详解/168

5.3gdb用法详解/169

5.4make工程管理器/173

5.4.1工程管理相关语法/173

5.4.2实例解析/176

5.5重点回顾/179

5.6本章习题/180

阅读材料——gcc及gdb简史/181

第6章计划任务/183

6.1计划任务概述/183

6.2crontab调度详解/183

6.2.1crontab文件内容格式/183

6.2.2crontab命令使用方法/184

6.2.3控制使用crontab命令/186

6.3at命令使用方法/186

6.3.1时间格式表示方法/186

6.3.2at命令使用方法/187

6.4案例分析与解决/189

6.4.1案例一 计划任务解决完整备份/189

6.4.2案例二 计划任务综合实例/190

6.4.3案例三 一次性计划任务实施/191

6.5重点回顾/191

6.6本章习题/192

阅读材料——GNU计划/193

第7章进程管理/195

7.1进程概述/195

7.1.1进程及相关概念/195

7.1.2进程启动及运行/197

7.2进程相关命令详解/199

7.2.1进程查看命令/199

7.2.2进程调度命令/206

7.3案例分析与解决/209

7.3.1案例一 执行进程流程解析/209

7.3.2案例二 进程终止或重启案例/210

7.3.3案例三 修改进程优先级别/212

7.4重点回顾/214

7.5本章习题/214

阅读材料——进程及线程/215

第8章Linux引导流程/217

8.1案例分析与解决/217

8.1.1案例一 遗忘root用户密码解决

方案/217

8.1.2案例二 inittab文件丢失的恢复

办法/219

8.1.3案例三 设置grub口令/220

8.1.4案例四 修改grub启动时的背景

图片/222

8.2Linux系统引导流程/222

8.3启动配置文件详解/225

8.3.1grub启动配置文件/225

8.3.2inittab配置文件/225

8.4重点回顾/226

8.5本章习题/226

阅读材料——Linux认证考试介绍/227

第9章文件系统/230

9.1案例分析与解决/230

9.1.1案例一 添加硬盘分区/230

9.1.2案例二 扩展swap空间/233

9.1.3案例三 设定用户配额/240

9.2文件系统组成/244

9.2.1Linux标准文件系统布局/244

9.2.2Linux重要目录简要说明/245

9.2.3Linux基本目录介绍/246

9.2.4Linux支持的文件系统/252

9.3磁盘分区流程/255

9.3.1Linux磁盘分区结构/255

9.3.2fdisk工具命令说明/255

9.3.3磁盘分区流程/256

9.4用户配额设定相关知识/257

9.4.1用户配额相关概念/257

9.4.2quota配额管理工具/258

9.4.3用户配额设定/258

9.5重点回顾/260

9.6本章习题/261

阅读材料——Ext4文件系统新特性/261

第10章网络设置/265

10.1案例分析及解决/265

10.1.1案例一 虚拟机与本地机网络

互联/265

10.1.2案例二 配置Samba服务器/268

10.1.3案例三 配置FTP服务器/272

10.1.4案例四 配置DNS服务器/275

10.2网络通信管理/279

10.2.1常用网络管理命令/279

10.2.2常用网络通信命令/285

10.3Linux下常用通信软件/289

10.3.1Telnet/289

10.3.2SSH/291

10.3.3VNC/294

10.4重点回顾/299

10.5本章习题/299

阅读材料——虚拟机的网络接入模式/300

参考文献/302

第1章Java语言概述/1

1.1程序设计语言的发展史/1

1.2Java语言的发展史/4

1.3Java开发环境的配置/6

1.4Java程序开发过程及常用工具介绍/9

1.4.1Java程序工作原理/9

1.4.2用记事本开发/9

1.4.3用Eclipse开发/11

1.4.4用JCreator开发/15

第2章Java基础语法/18

2.1标识符和关键字/18

2.2基本数据类型/20

2.2.1布尔型/20

2.2.2字符型/21

2.2.3整数型/22

2.2.4浮点型/24

2.2.5类型转换/25

2.3常量与变量/29

2.4运算符/31

2.4.1算术运算符/32

2.4.2关系运算符/34

2.4.3逻辑运算符/35

2.4.4位运算符/37

2.4.5赋值类运算符/38

2.4.6条件运算符/39

2.4.7对象运算符/39

2.5语句/40

2.5.1分支语句/40

2.5.2循环语句/44

2.5.3跳转语句/47

2.5.4注释语句/51

2.6输入参数方式/52第3章类和对象/57

3.1面向对象技术基础/57

3.1.1面向对象基本概念/57

3.1.2面向对象基本特征/59

3.2类/61

3.2.1类的定义/61

3.2.2成员变量与成员方法/63

3.2.3构造方法/64

3.2.4main方法/66

3.3对象/67

3.3.1对象的生成与使用/67

3.3.2变量的作用域/69

3.3.3对象的内存分配机制/70

3.3.4方法参数的传递/72

3.3.5对象的清除/76

3.4this关键字/77

3.5static关键字/79

3.6final关键字/84

3.7import和包/86

第4章类的封装性、继承性、多态性及接口/90

4.1封装性/90

4.1.1类的访问控制方式/90

4.1.2类成员的访问控制方式/90

4.1.3封装性的设计原则/92

4.2继承性/92

4.2.1extends关键字/92

4.2.2super关键字/95

4.2.3构造方法的继承性/97

4.3多态性/102

4.3.1方法重载/102

4.3.2方法覆盖/104

4.4抽象类/108

4.5接口/111

4.5.1接口的定义/111

4.5.2接口的实现/113

4.5.3接口的作用/116

4.5.4接口与抽象类的区别/120

4.6特殊的类/121

4.6.1实名内部类/121

4.6.2匿名内部类/125

4.6.3泛型类/128

4.6.4Class类/132

第5章数组、字符串和枚举/134

5.1数组/134

5.1.1一维数组/134

5.1.2二维数组/137

5.1.3数组的注意事项/139

5.1.4数组的应用/139

5.2字符串/141

5.2.1不可变字符串: String/142

5.2.2可变字符串/149

5.2.3String与StringBuffer的异同/151

5.3字符串与其他数据类型的转换/153

5.3.1将其他数据转换成字符串/153

5.3.2将字符串转换成其他数据/156

5.4枚举/158

5.4.1枚举定义/158

5.4.2枚举变量和常量/158

5.4.3枚举的常见用法/159

第6章Java常用类及接口/163

6.1Java API类库/163

6.2java.lang包/164

6.2.1Object类/166

6.2.2Math类/167

6.2.3System类/168

6.2.4Runtime类/172

6.3java.util包/174

6.3.1Date类/176

6.3.2Calendar类/177

6.3.3Random类/180

6.3.4无序集合: Collection接口和

Collections类/183

6.3.5有序集合: List接口和ArrayList、

LinkedList和Vector类/184

6.3.6非重复集合: Set接口和HashSet、

TreeSet及LinkedHashSet类/191

6.3.7映射集合: Map接口和

TreeMap类/192

6.3.8for循环简化写法在集合、数组中的

应用/193

第7章异常处理/198

7.1为什么要进行异常处理/198

7.2Java中的异常类/199

7.3异常处理模式/201

7.3.1trycatchfinally语句/201

7.3.2异常类成员方法/203

7.3.3异常捕获与处理/203

7.4重新抛出异常/205

7.4.1throws语句/205

7.4.2throw语句/206

7.5异常处理原则/207

第8章流和文件/208

8.1流的基本概念/208

8.2字节流/209

8.2.1输入字节流/209

8.2.2输出字节流/210

8.3字符流/212

8.3.1输入字符流/212

8.3.2输出字符流/213

8.3.3字符缓冲流/216

8.3.4字节流和字符流的异同/218

8.4文件/218

8.4.1文件属性类/218

8.4.2随机访问文件类/222

8.4.3文件过滤接口/224

8.5对象序列化/226

8.5.1序列化是什么/226

8.5.2什么情况下需要序列化/226

8.5.3对象序列化时发生了什么/227

8.5.4实现序列化的步骤/227

8.5.5序列化对象的条件/227

8.5.6反序列化/228

8.5.7序列化注意事项/229

8.6Java中的乱码问题/230

8.6.1Java中字符的表达/230

8.6.2Unicode简介/230

8.6.3Unicode编码方式/231

8.6.4Unicode实现方式/232

8.6.5字节序/237

8.6.6其他编码方式/238

8.6.7Java中的Unicode/241

8.6.8如何处理中文乱码问题/248

第9章图形用户界面编程/252

9.1AWT与Swing/252

9.1.1AWT/252

9.1.2Swing/253

9.2容器组件/255

9.2.1JFrame/255

9.2.2JPanel/261

9.2.3JScrollPane/262

9.2.4JSplitPane/263

9.3菜单和工具条/264

9.3.1菜单组件/264

9.3.2工具栏组件/267

9.4基本组件/269

9.4.1标签/269

9.4.2单行文本框/271

9.4.3按钮/272

9.4.4下拉框/274

9.4.5列表框/276

9.4.6多行文本框/278

9.4.7表格组件/279

9.4.8树形组件/283

9.4.9进度条组件/291

9.5组件常用方法/294

9.5.1颜色/294

9.5.2透明性/295

9.5.3边框/295

9.5.4字体/296

9.5.5大小与位置/299

9.5.6激活与可见性/300

9.6布局管理器/300

9.6.1流式布局/301

9.6.2边界布局/302

9.6.3盒式布局/303

9.6.4网格布局/304

9.6.5卡片布局/305

9.6.6网格包布局/307

9.6.7布局基本原则及复杂布局举例/313

9.6.8界面风格的选择/315

9.7事件处理模型/317

9.7.1事件处理机制/317

9.7.2事件对象/317

9.7.3监听器接口/319

9.7.4编写事件处理程序/320

9.8鼠标事件处理/324

9.9事件适配器类/326

9.10键盘事件处理/328

第10章多线程/331

10.1线程简介/331

10.1.1进程与线程/331

10.1.2线程生命周期/331

10.2编写线程程序/333

10.2.1第一种方法: 继承Thread类/333

10.2.2第二种方法: 实现Runable接口/334

10.2.3两种方法比较/336

10.2.4线程基本控制方法/337

10.3线程互斥与同步/342

10.3.1多线程同步的基本原理/344

10.3.2多线程同步实例/344

10.4后台线程/347

第11章网络编程/349

11.1网络编程基础/349

11.1.1网络编程的两个基本问题/349

11.1.2网络编程相关的基本概念/349

11.2URL编程/350

11.2.1URL简介/350

11.2.2URL类/351

11.2.3从URL读取万维网资源/352

11.2.4网络编程的乱码问题/354

11.2.5利用URLConnection实现双向

通信/355

11.3Socket编程/357

11.3.1Socket编程的过程/357

11.3.2利用Socket实现断点续传/359

11.3.3利用Socket实现聊天程序/369

11.4IntelAddress类/374

11.4.1获取本机的计算机名与IP地址/375

11.4.2获取Internet上主机的IP地址/375

第12章数据库编程/378

12.1JDBC概述/378

12.1.1JDBC模型/378

12.1.2JDBC驱动方式/379

12.2JDBC API/381

12.3JDBC编程实例/383

12.3.1JDBC 驱动程序设置/383

12.3.2建立数据库连接/384

12.3.3添加记录/393

12.3.4查询记录/397

12.3.5删除记录/401

12.3.6修改记录/404

12.3.7数据库操作综合实例/408

12.3.8SQL数据库常用命令/419

第13章XML及程序打包/422

13.1XML简介/422

13.2XML在Java程序中的应用/426

13.2.1DOM编程/426

13.2.2加载XML文件/430

13.2.3访问XML元素和属性/432

13.2.4利用XML文件存储信息/434

13.3Java程序的发布/440

13.3.1利用cmd工具打包/441

13.3.2利用Eclipse打包/445

参考文献/449

第9章图形用户界面编程/1

9.1AWT与Swing/1

9.1.1AWT/1

9.1.2Swing/253

9.2容器组件/255

9.2.1JFrame/255

9.2.2JPanel/261

9.2.3JScrollPane/262

9.2.4JSplitPane/263

9.3菜单和工具条/264

9.3.1菜单组件/264

9.3.2工具栏组件/267

9.4基本组件/269

9.4.1标签/269

9.4.2单行文本框/271

9.4.3按钮/272

9.4.4下拉框/274

9.4.5列表框/276

9.4.6多行文本框/278

9.4.7表格组件/279

9.4.8树形组件/283

9.4.9进度条组件/291

9.5组件常用方法/294

9.5.1颜色/294

9.5.2透明性/295

9.5.3边框/295

9.5.4字体/296

9.5.5大小与位置/299

9.5.6激活与可见性/300

9.6布局管理器/300

9.6.1流式布局/301

9.6.2边界布局/302

9.6.3盒式布局/303

9.6.4网格布局/304

9.6.5卡片布局/305

9.6.6网格包布局/307

9.6.7布局基本原则及复杂布局举例/312

9.6.8界面风格的选择/314

9.7事件处理模型/316

9.7.1事件处理机制/316

9.7.2事件对象/316

9.7.3监听器接口/318

9.7.4编写事件处理程序/319

9.8鼠标事件处理/323

9.9事件适配器类/325

9.10键盘事件处理/327

第10章多线程/330

10.1线程简介/330

10.1.1进程与线程/330

10.1.2线程生命周期/330

10.2编写线程程序/332

10.2.1第一种方法: 继承Thread类/332

10.2.2第二种方法: 实现Runable接口/333

10.2.3两种方法比较/335

10.2.4线程基本控制方法/336

10.3线程互斥与同步/341

10.3.1多线程同步的基本原理/343

10.3.2多线程同步实例/343

10.4后台线程/346

第11章网络编程/348

11.1网络编程基础/348

11.1.1网络编程的两个基本问题/348

11.1.2网络编程相关的基本概念/348

11.2URL编程/349

11.2.1URL简介/349

11.2.2URL类/350

11.2.3从URL读取万维网资源/351

11.2.4网络编程的乱码问题/353

11.2.5利用URLConnection实现双向

通信/354

11.3Socket编程/356

11.3.1Socket编程的过程/356

11.3.2利用Socket实现断点续传/358

11.3.3利用Socket实现聊天程序/368

11.4IntelAddress类/373

11.4.1获取本机的计算机名与IP地址/374

11.4.2获取Internet上主机的IP地址/374

第12章数据库编程/377

12.1JDBC概述/377

12.1.1JDBC模型/377

12.1.2JDBC驱动方式/378

12.2JDBC API/380

12.3JDBC编程实例/382

12.3.1JDBC 驱动程序设置/382

12.3.2建立数据库连接/383

12.3.3添加记录/392

12.3.4查询记录/396

12.3.5删除记录/400

12.3.6修改记录/403

12.3.7数据库操作综合实例/407

12.3.8SQL数据库常用命令/418

第13章XML及程序打包/421

13.1XML简介/421

13.2XML在Java程序中的应用/425

13.2.1DOM编程/425

13.2.1加载XML文件/429

13.2.2访问XML元素和属性/431

13.2.3利用XML文件存储信息/433

13.3Java程序的发布/439

13.3.1利用cmd工具打包/440

13.3.2利用Eclipse打包/444

参考文献/448

第1章程序设计概述/1

1.1计算机系统/1

1.1.1计算机硬件系统/1

1.1.2计算机软件系统/2

1.1.3计算机中的信息表示/3

1.2程序设计基础/5

1.2.1程序/5

1.2.2程序设计语言/5

1.2.3程序设计/6

1.3C语言的发展历史与特点/7

1.3.1C语言的历史/7

1.3.2C语言的特点/9

1.4初识C语言/10

1.4.1基本术语/10

1.4.2C程序的开发过程/10

1.4.3第一个C程序/11

1.4.4计算圆面积的程序/12

1.5实验/13

1.5.1实验目的/13

1.5.2实验环境/13

1.5.3实验内容/13

1.5.4实验主要步骤/15

1.5.5评分标准/15

1.5.6实验报告/16

小结/16

习题/16

第2章C语言程序设计入门/18

2.1编写简单的程序/18

2.1.1两个整数的加法程序/18

2.1.2华氏温度转换为摄氏温度的程序/19

2.2标识符/19

2.2.1C语言中的基本记号/19

2.2.2标识符/20

2.2.3关键字/21

2.2.4变量和常量/21

2.3数据类型/23

2.3.1数据类型的基本概念/23

2.3.2整型/23

2.3.3浮点型/24

2.3.4字符型/26

2.3.5类型定义/28

2.4运算符和表达式/29

2.4.1运算符和表达式的基本概念/29

2.4.2算术运算符和算术表达式/29

2.4.3赋值运算符和赋值表达式/32

2.4.4自增和自减运算符/34

2.4.5关系运算符和关系表达式/35

2.4.6逻辑运算符和逻辑表达式/37

2.4.7条件运算符和条件表达式/38

2.4.8逗号运算符和逗号表达式/40

2.4.9长度运算符/41

2.5类型之间的关系/42

2.5.1隐式(自动)类型转换/42

2.5.2显式(强制)类型转换/43

2.6标准库的使用/44

2.6.1标准库概述/44

2.6.2常用数学函数/45

2.6.3格式化输入输出函数/48

2.6.4字符输入输出函数/54

2.6.5常用字符处理函数/54

2.6.6整型的大小/56

2.6.7浮点型的特性/58

2.7程序设计错误/60

2.7.1语法错误/60

2.7.2运行时错误/60

2.7.3逻辑错误/61

2.7.4测试和调试/61

2.8程序设计风格/62

2.8.1适当的注释/62

2.8.2命名习惯/62

2.8.3程序编排/63

2.9实验/64

2.9.1实验目的/64

2.9.2实验环境/64

2.9.3实验内容/65

2.9.4实验主要步骤/71

2.9.5评分标准/71

2.9.6实验报告/71

小结/71

习题/72

第3章语句和基本控制结构/75

3.1程序的基本控制结构/75

3.1.1简单语句/75

3.1.2单入口单出口的控制结构/76

3.2分支结构/77

3.2.1if语句/77

3.2.2switch语句/84

3.2.3枚举/91

3.3循环结构/94

3.3.1while语句/94

3.3.2dowhile语句/98

3.3.3for语句/100

3.3.4使用哪种循环/106

3.3.5退出循环/106

3.3.6多重循环/108

3.4实例学习/112

3.5实验/121

3.5.1实验目的/121

3.5.2实验环境/122

3.5.3实验内容/122

3.5.4实验主要步骤/131

3.5.5评分标准/132

3.5.6实验报告/132

小结/132

习题/133

第4章函数/137

4.1函数的定义和调用/137

4.1.1使用函数编写程序/137

4.1.2函数定义/143

4.1.3函数调用/144

4.1.4函数声明/148

4.1.5程序终止/150

4.1.6用计算机生成随机数/151

4.2递归函数/155

4.2.1什么是递归/155

4.2.2运用递归求解问题/157

4.2.3递归和循环/160

4.3函数设计的基本规则/163

4.3.1函数头的设计规则/163

4.3.2函数体的设计规则/164

4.4存储类别和作用域/164

4.4.1内部变量和外部变量/164

4.4.2动态存储变量和静态存储变量/165

4.4.3作用域和生命期/167

4.5预处理指令/169

4.5.1什么是预处理指令/169

4.5.2宏定义/170

4.5.3条件编译/173

4.6实例学习/174

4.7实验/179

4.7.1实验目的/179

4.7.2实验环境/179

4.7.3实验内容/179

4.7.4实验主要步骤/183

4.7.5评分标准/183

4.7.6实验报告/183

小结/183

习题/184

第5章指针/188

5.1指针的基本概念/188

5.1.1什么是指针/188

5.1.2声明指针变量/189

5.1.3取地址运算符和解引用运算符/190

5.1.4指向指针的指针/192

5.2指针赋值/194

5.3通用指针/196

5.4使用const修饰指针/197

5.5指针和函数/199

5.5.1指针作为函数的参数/199

5.5.2指针作为函数的返回值/203

5.5.3指向函数的指针/204

5.6实例学习/208

5.7实验/211

5.7.1实验目的/211

5.7.2实验环境/212

5.7.3实验内容/212

5.7.4实验主要步骤/213

5.7.5评分标准/213

5.7.6实验报告/213

小结/213

习题/215第6章数组/217

6.1一维数组/217

6.1.1使用一维数组编写程序/217

6.1.2声明和处理一维数组/220

6.1.3一维数组和函数/227

6.2二维数组/230

6.2.1使用二维数组编写程序/230

6.2.2声明和处理二维数组/233

6.2.3二维数组和函数/237

6.3指针和数组/240

6.3.1指针的运算/240

6.3.2指针和一维数组/243

6.3.3指针和二维数组/246

6.4排序和查找/247

6.4.1排序/247

6.4.2查找/249

6.4.3qsort函数和bsearch函数/253

6.5字符串/257

6.5.1字符串的基本概念/257

6.5.2字符串的基本操作/259

6.5.3常用字符串处理函数/263

6.6动态存储分配/267

6.7实例学习/270

6.8实验/276

6.8.1实验目的/276

6.8.2实验环境/277

6.8.3实验内容/277

6.8.4实验主要步骤/283

6.8.5评分标准/283

6.8.6实验报告/284

小结/284

习题/284第7章结构/288

7.1结构/288

7.1.1使用结构编写程序/288

7.1.2结构类型和结构变量/292

7.1.3结构和指针/296

7.1.4结构和数组/297

7.1.5结构和函数/301

7.2链表/303

7.2.1什么是链表/303

7.2.2链表的基本操作/304

7.2.3有序链表/306

7.3联合/309

7.4底层程序设计/311

7.4.1位运算符/311

7.4.2结构中的位域/314

7.5实例学习/315

7.6实验/322

7.6.1实验目的/322

7.6.2实验环境/322

7.6.3实验内容/322

7.6.4实验主要步骤/326

7.6.5评分标准/326

7.6.6实验报告/326

小结/326

习题/327

第8章文件/331

8.1文件的基本概念/331

8.1.1流和文件指针/331

8.1.2文本文件和二进制文件/332

8.1.3文件缓冲区/332

8.2文件操作/333

8.2.1打开文件/333

8.2.2关闭文件/333

8.2.3设置文件缓冲区/334

8.2.4临时文件/335

8.2.5删除文件和重命名文件/335

8.2.6检测文件末尾和错误条件/336

8.3文件输入输出/337

8.3.1格式化输入输出/337

8.3.2字符输入输出/338

8.3.3行输入输出/340

8.3.4块输入输出/341

8.4文件定位/342

8.5实例学习/346

8.6实验/353

8.6.1实验目的/353

8.6.2实验环境/353

8.6.3实验内容/354

8.6.4实验主要步骤/355

8.6.5评分标准/355

8.6.6实验报告/355

小结/355

习题/356

第9章编写多文件程序/359

9.1模块/359

9.2分块开发/360

9.2.1程序物理组织/360

9.2.2头文件/361

9.2.3单一头文件结构和多头文件结构/363

9.2.4项目/363

9.3实例学习/364

9.4实验/367

9.4.1实验目的/367

9.4.2实验环境/367

9.4.3实验内容/367

9.4.4实验主要步骤/370

9.4.5评分标准/370

9.4.6实验报告/370

小结/371

习题/371

第1章逻辑电路导论/1

1.1开关电路数学表示方法初步/1

1.1.1真值表/1

1.1.2二进制编码/2

1.1.3真值表的常见形式/3

1.1.4分析与综合/3

1.2逻辑代数/4

1.2.1逻辑代数的基本运算/4

1.2.2逻辑函数/6

1.2.3逻辑代数的基本公式和运算规则/6

1.3用与门、或门和非门进行逻辑综合/9

1.4公式法化简逻辑函数/10

1.5卡诺图/12

1.5.1卡诺图是真值表的图形表示/12

1.5.2用卡诺图化简逻辑函数/12

1.5.3概念提升/16

1.6逻辑函数的标准形式/18

1.6.1函数的“积之和”表达式/18

1.6.2函数的“和之积”表达式/18

1.6.3两种表达形式的互换/19

1.6.4包含无关项的逻辑函数的化简/20

*1.7表格法化简逻辑函数/22

*1.7.1求质蕴含项集合/23

*1.7.2求最小覆盖/25

1.7.3表格法小结/31

1.8解题示例/32

【本章小结】/33

【习题】/34

第2章数字集成电路的基本元件——门电路/37

2.1概述/37

2.2TTL集成门电路/40

2.2.1TTL与非门简介/40

2.2.2TTL与非门的外特性及其参数/41

2.2.3集电极开路的与非门/44

2.2.4TTL三态门/45

2.3MOS场效应晶体管/46

2.4MOS门电路/50

2.4.1NMOS门电路/50

2.4.2CMOS门电路/52

2.4.3其他类型的CMOS门电路/54

2.4.4CMOS逻辑门电性能分析/56

2.4.5不同类型逻辑门的配合问题/58

2.574系列中小规模集成电路芯片/58

2.6可编程逻辑器件/58

2.6.1可编程逻辑阵列PLA/59

2.6.2可编程阵列逻辑PAL和GAL/59

2.6.3复杂可编程器件/60

2.6.4现场可编程门阵列/60

2.6.5可编程开关的物理实现/61

2.6.6CPLD和FPGA特点比较/63

【本章小结】/63

【习题】 /64

第3章组合逻辑电路的优化实现/66

3.1组合逻辑电路的特点与优化实现/66

3.2单输出函数和多输出函数/67

3.2.1多输出函数的化简/67

3.2.2多输出函数的优化实现/71

3.2.3用EDA工具优化实现组合逻辑

电路示例/72

3.3多级逻辑电路的综合/74

3.3.1提取公因子/74

3.3.2功能分解/75

3.4组合逻辑电路积木块/76

3.4.1多路选择器/76

3.4.2用LUT构建更大规模的组合逻辑

电路/78

3.4.3编码器/78

3.4.4译码器/81

3.4.5数值比较器/82

3.4.6算术逻辑运算电路/83

3.5组合逻辑电路中的竞争和险象/83

3.5.1险象的分析/83

3.5.2险象的消除/86

3.6解题示例/87

【本章小结】/90

【习题】/90

第4章数的表示方法和算术运算电路/94

4.1数制和编码/94

4.1.1数的位置表示法/94

4.1.2二进制数和十进制数的相互转换/95

4.1.3八进制数的二进制编码/97

4.1.4十六进制数的二进制编码/97

4.1.5十进制数的二进制编码/98

4.1.6格雷码/100

4.1.7字符编码/100

4.1.8奇偶校验码/102

4.2无符号数的加法运算/104

4.2.1二进制整数的加法运算/104

4.2.2BCD码形式的十进制数加法运算/107

4.3有符号数的表示方法和算术运算/110

4.3.1二进制定点数的原码表示形式/110

4.3.2二进制定点数的补码表示形式和

加减运算/110

4.3.3二进制定点数的反码表示形式和

加减运算/114

4.4用EDA工具设计算术运算电路示例/116

【本章小结】/121

【习题】/121

第5章锁存器、触发器和寄存器/124

5.1锁存器/124

5.1.1基本RS锁存器/124

5.1.2选通D锁存器/125

5.2D触发器/128

5.2.1从总体的角度观察D触发器/128

5.2.2D触发器和D锁存器的比较/131

5.2.3带使能控制的D触发器/131

5.3主从D触发器/133

5.4其他类型的触发器/134

5.4.1T触发器/134

5.4.2JK触发器/135

5.5寄存器/136

5.6设计示例/138

【本章小结】/142

【习题】/142

第6章同步时序电路/144

6.1同步时序电路概述/144

6.2同步时序电路的设计/146

6.2.1状态图和状态表/147

6.2.2状态分配/149

6.2.3确定激励函数和输出函数/150

6.2.4VHDL行为描述与使用EDA工具

设计/150

6.3状态化简/152

6.3.1完全规定的有限状态机和不完全规定

的有限状态机/152

6.3.2状态化简算法/152

6.4同步时序电路中的竞争和险象/154

6.4.1状态变迁序列与险象的关系/154

6.4.2在VHDL行为描述中指定状态

编码/156

6.5算法状态机图/157

6.6解题示例/158

【本章小结】/168

【习题】/169

第7章异步时序电路/173

7.1异步时序电路的特点/173

*7.2脉冲异步时序电路/173

*7.2.1脉冲异步时序电路的分析/174

*7.2.2脉冲异步时序电路的综合/176

*7.3电位异步时序电路/180

*7.3.1电位异步时序电路的分析/181

*7.3.2电位异步时序电路的综合/183

*7.4电位异步时序电路综合中防范险象的

措施/188

*7.5解题示例/195

【本章小结】/204

【习题】/204

第8章数字系统设计/207

8.1数字系统的特点和设计方法/207

8.2交通灯控制器设计/208

8.3求最大值电路的设计/214

8.4数字系统中某些技术细节/219

8.4.1减少时钟偏移的布线网络/220

8.4.2触发器的异步输入/220

8.4.3消除机械开关抖动的电路/220

【本章小结】/221

【习题】/221

附录AEDA工具 QuartusⅡ简介/224

A.1QuartusⅡ的安装与运行/224

A.2设计流程/227

A.3项目的建立与版本管理/229

A.3.1建立一个新项目/229

A.3.2QuartusⅡ项目的版本管理/231

A.4设计的原理图描述/233

A.4.1进入原理图编辑器/233

A.4.2从元件库中调入元件符号 /234

A.4.3绘制原理图/235

A.5设计的VHDL描述/236

A.5.1进入文本编辑器/236

A.5.2在文本编辑器中编辑VHDL

文件/237

A.5.3发现并纠正VHDL代码中的

错误/239

A.5.4保存文件/239

A.6综合和编译/240

A.6.1进入编译器/240

A.6.2发现并纠正原理图中的错误/242

A.7模拟验证/242

A.7.1使用波形编辑器绘制测试向量

波形/243

A.7.2执行模拟/246

A.8层次化设计实例/248

A.8.1在原理图编辑器中实现层次化

设计/248

A.8.2VHDL设计描述与原理图混合使用的

层次化设计/251

A.9时序分析器/254

A.10调用带参数的库元件/256

A.10.1在原理图编辑器中创建一个存

储器/256

A.10.2初始化存储器的内容/261

A.10.3存储器的模拟实例 /262

A.11可编程器件的物理实现/263

A.11.1引脚分配/263

A.11.2对目标器件编程/266

A.12用SignalTapⅡ实时测试FPGA中的信号

波形/271

附录B硬件描述语言VHDL简介/277

B.1VHDL的产生与发展/277

B.2用VHDL建立电路模型/278

B.2.1电路模型/278

B.2.2实体声明与结构体/279

B.2.3结构体的描述方式/281

B.2.4标识符/281

B.3面向模拟器的某些特性/282

B.3.1模拟周期/283

B.3.2延迟时间/283

B.4VHDL中的对象/284

B.5数据类型/285

B.5.1标量类型/286

B.5.2复合类型/287

B.5.3子类型/289

B.5.4文件类型/289

B.5.5类型转换/289

B.6VHDL的词法单元/291

B.6.1注释/291

B.6.2数字/291

B.6.3字符/292

B.6.4字符串/292

B.6.5位串/292

B.7属性/293

B.8表达式与运算符/295

B.9子程序——过程与函数/299

B.10程序包与设计库/300

B.10.1程序包——设计中的数据共享/300

B.10.2设计库/302

B.10.3VHDL中名字的可见性/302

B.10.4library语句和use语句/303

B.11行为描述/304

B.11.1进程语句/304

B.11.2行为模型的顺序性/305

B.11.3行为模型的并行性/312

B.12结构描述/316

B.12.1端口的基本特征/316

B.12.2元件例化语句/317

B.12.3配置指定/318

B.12.4规则结构/319

B.12.5无连接端口/320

B.13重载/321

B.14VHDL保留字和预定义程序包/322

B.14.1VHDL保留字/322

B.14.2标准程序包STANDARD/323

B.14.3IEEE多值逻辑系统程序包

std_logic_1164/330

参考文献/333

第1章逻辑电路导论/1

1.1开关电路数学表示方法初步/1

1.1.1真值表/1

1.1.2二进制编码/2

1.1.3真值表的常见形式/3

1.1.4分析与综合/3

1.2逻辑代数/4

1.2.1逻辑代数的基本运算/4

1.2.2逻辑函数/6

1.2.3逻辑代数的基本公式和运算规则/6

1.3用与门、或门和非门进行逻辑综合/9

1.4公式法化简逻辑函数/10

1.5卡诺图/12

1.5.1卡诺图是真值表的图形表示/12

1.5.2用卡诺图化简逻辑函数/12

1.5.3概念提升/16

1.6逻辑函数的标准形式/18

1.6.1函数的“积之和”表达式/18

1.6.2函数的“和之积”表达式/18

1.6.3两种表达形式的互换/19

1.6.4包含无关项的逻辑函数的化简/20

*1.7表格法化简逻辑函数/22

*1.7.1求质蕴含项集合/23

*1.7.2求最小覆盖/25

1.7.3表格法小结/31

1.8解题示例/32

【本章小结】/33

【习题】/34

第2章数字集成电路的基本元件——门电路/36

2.1概述/36

2.2TTL集成门电路/39

2.2.1TTL与非门简介/39

2.2.2TTL与非门的外特性及其参数/40

2.2.3集电极开路的与非门/43

2.2.4TTL三态门/44

2.3MOS场效应晶体管/45

2.4MOS门电路/49

2.4.1NMOS门电路/49

2.4.2CMOS门电路/51

2.4.3其他类型的CMOS门电路/53

2.4.4CMOS逻辑门电性能分析/55

2.4.5不同类型逻辑门的配合问题/57

2.574系列中小规模集成电路芯片/57

2.6可编程逻辑器件/57

2.6.1可编程逻辑阵列PLA/58

2.6.2可编程阵列逻辑PAL和GAL/58

2.6.3复杂可编程器件/59

2.6.4现场可编程门阵列/59

2.6.5可编程开关的物理实现/60

2.6.6CPLD和FPGA特点比较/62

【本章小结】/62

【习题】 /63

第3章组合逻辑电路的优化实现/65

3.1组合逻辑电路的特点与优化实现/65

3.2单输出函数和多输出函数/66

3.2.1多输出函数的化简/66

3.2.2多输出函数的优化实现/69

3.2.3用EDA工具优化实现组合逻辑电路示

例/70

3.3多级逻辑电路的综合/72

3.3.1提取公因子/72

3.3.2功能分解/73

3.4组合逻辑电路积木块/74

3.4.1多路选择器/74

3.4.2用LUT构建更大规模的组合逻辑电路

/76

3.4.3编码器/76

3.4.4译码器/79

3.4.5数值比较器/80

3.4.6算术逻辑运算电路/81

3.5组合逻辑电路中的竞争和险象/81

3.5.1险象的分析/81

3.5.2险象的消除/84

3.6解题示例/85

【本章小结】/88

【习题】/88

第4章数的表示方法和算术运算电路/91

4.1数制和编码/91

4.1.1数的位置表示法/91

4.1.2二进制数和十进制数的相互转换/92

4.1.3八进制数的二进制编码/94

4.1.4十六进制数的二进制编码/94

4.1.5十进制数的二进制编码/95

4.1.6格雷码/97

4.1.7字符编码/97

4.1.8奇偶校验码/99

4.2无符号数的加法运算/101

4.2.1二进制整数的加法运算/101

4.2.2BCD码形式的十进制数加法运算/104

4.3有符号数的表示方法和算术运算/107

4.3.1二进制定点数的原码表示形式/107

4.3.2二进制定点数的补码表示形式和加减运

算/107

4.3.3二进制定点数的反码表示形式和加减运

算/111

4.4用EDA工具设计算术运算电路示例/113

【本章小结】/118

【习题】/118

第5章锁存器、触发器和寄存器/121

5.1锁存器/121

5.1.1基本RS锁存器/121

5.1.2选通D锁存器/122

5.2D触发器/125

5.2.1从总体的角度观察D触发器/125

5.2.2D触发器和D锁存器的比较/128

5.2.3带使能控制的D触发器/128

5.3主从D触发器/130

5.4其他类型的触发器/131

5.4.1T触发器/131

5.4.2JK触发器/132

5.5寄存器/133

5.6设计示例/135

【本章小结】/139

【习题】/139

第6章同步时序电路/141

6.1同步时序电路概述/141

6.2同步时序电路的设计/143

6.2.1状态图和状态表/144

6.2.2状态分配/146

6.2.3确定激励函数和输出函数/147

6.2.4VHDL行为描述与使用EDA工具设计

/147

6.3状态化简/149

6.3.1完全规定的有限状态机和不完全规定的

有限状态机/149

6.3.2状态化简算法/149

6.4同步时序电路中的竞争和险象/151

6.4.1状态变迁序列与险象的关系/151

6.4.2在VHDL行为描述中指定状态编码

/153

6.5算法状态机图/154

6.6解题示例/155

【本章小结】/163

【习题】/163

第7章异步时序电路/167

7.1异步时序电路的特点/167

*7.2脉冲异步时序电路/167

*7.2.1脉冲异步时序电路的分析/168

*7.2.2脉冲异步时序电路的综合/170

*7.3电位异步时序电路/174

*7.3.1电位异步时序电路的分析/175

*7.3.2电位异步时序电路的综合/177

*7.4电位异步时序电路综合中防范险象的措施

/182

*7.5解题示例/189

【本章小结】/198

【习题】/198

第8章数字系统设计/201

8.1数字系统的特点和设计方法/201

8.2交通灯控制器设计/202

8.3求最大值电路的设计/208

8.4数字系统中某些技术细节/213

8.4.1减少时钟偏移的布线网络/214

8.4.2触发器的异步输入/214

8.4.3消除机械开关抖动的电路/214

【本章小结】/215

【习题】/215

附录AEDA工具 QuartusⅡ简介/218

A.1QuartusⅡ的安装与运行/218

A.1.1QuartusⅡ的首次安装/219

A.1.2申请授权文件/220

A.1.3改变QuartusⅡ主界面的样式/220

A.2设计流程/222

A.3项目的建立与版本管理/223

A.3.1建立一个新项目/223

A.3.2QuartusⅡ项目的版本管理/225

A.4设计的原理图描述/227

A.4.1进入原理图编辑器/227

A.4.2从元件库中调入元件符号 /228

A.4.3绘制原理图/229

A.5设计的VHDL描述/230

A.5.1进入文本编辑器/231

A.5.2在文本编辑器中编辑VHDL文件

/231

A.5.3发现并纠正VHDL代码中的错误

/232

A.5.4保存文件/234

A.6综合和编译/234

A.6.1进入编译器/234

A.6.2发现并纠正原理图中的错误/236

A.7模拟验证/236

A.7.1使用波形编辑器绘制测试向量波形

/237

A.7.2执行模拟/240

A.8层次化设计实例/242

A.8.1在原理图编辑器中实现层次化设计

/242

A.8.2VHDL设计描述与原理图混合使用的

层次化设计/245

A.9时序分析器/248

A.10调用带参数的库元件/250

A.10.1在原理图编辑器中创建一个存储器

/250

A.10.2初始化存储器的内容/255

A.10.3存储器的模拟实例 /256

A.11可编程器件的物理实现/257

A.11.1引脚分配/257

A.11.2对目标器件编程/260

A.12用SignalTapⅡ实时测试FPGA中的信号波形

/265

附录B硬件描述语言VHDL简介/271

B.1VHDL的产生与发展/271

B.2用VHDL建立电路模型/272

B.2.1电路模型/272

B.2.2实体声明与结构体/273

B.2.3结构体的描述方式/275

B.2.4标识符/275

B.3面向模拟器的某些特性/276

B.3.1模拟周期/277

B.3.2延迟时间/277

B.4VHDL中的对象/278

B.5数据类型/279

B.5.1标量类型/280

B.5.2复合类型/281

B.5.3子类型/283

B.5.4文件类型/283

B.5.5类型转换/283

B.6VHDL的词法单元/285

B.6.1注释/285

B.6.2数字/285

B.6.3字符/286

B.6.4字符串/286

B.6.5位串/286

B.7属性/287

B.8表达式与运算符/289

B.9子程序——过程与函数/293

B.10程序包与设计库/294

B.10.1程序包——设计中的数据共享/294

B.10.2设计库/296

B.10.3VHDL中名字的可见性/296

B.10.4library语句和use语句/297

B.11行为描述/298

B.11.1进程语句/298

B.11.2行为模型的顺序性/299

B.11.3行为模型的并行性/306

B.12结构描述 /310

B.12.1端口的基本特征/310

B.12.2元件例化语句/311

B.12.3配置指定/312

B.12.4规则结构/313

B.12.5无连接端口/314

B.13重载/315

B.14VHDL保留字和预定义程序包/316

B.14.1VHDL保留字/316

B.14.2标准程序包STANDARD/317

B.14.3IEEE多值逻辑系统程序包std_logic_

1164/324

参考文献/327

内容摘要:

本书以Centos 6.0为基础,通过众多实例和重点内容讲解,展示了Linux的各种典型应用,深入浅出地介绍了Linux操作系统的各个重要知识点。全书共分10章,主要内容包括Linux安装、常用命令讲解、vi的使用方法、Shell编程、gcc和gdb的使用、计划任务、进程管理、Linux引导流程、文件系统和网络设置。全书提供了大量应用实例,每章后均附有习题。本书图文并茂,实例丰富,讲解详尽,全面细致,遵循理论和实践并重的原则,便于读者理解和掌握知识点,是初、中级读者学习Linux的首选实例教程。本书适合作为大学本科计算机及相关专业的教材和教学参考书,也可作为高职高专院校的教材,还可供广大的Linux爱好者、Linux系统管理维护人员、计算机培训机构的教师和学员参考使用。

书籍规格:

书籍详细信息
书名Linux实用教程站内查询相似图书
9787302370666
如需购买下载《Linux实用教程》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位清华大学出版社
版次1版印次1
定价(元)35.0语种简体中文
尺寸26 × 19装帧平装
页数印数 2000

书籍信息归属:

Linux实用教程是清华大学出版社于2014.出版的中图分类号为 TP316.89 的主题关于 Linux操作系统-高等学校-教材 的书籍。