描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787302343332丛书名: 高等学校计算机专业规划教材
内容简介
本书以理论结合实践,注重应用为原则,全面、系统地讲述操作系统的基本原理,并将其与Linux的实现和应用技术紧密结合。全书内容分为3个部分: 第1部分为基础篇,内容包括Linux系统概述、Linux系统的操作基础、vi文本编辑器的使用以及Linux C编程基础;第2部分为原理篇,介绍操作系统的基本原理和Linux内核实现技术,内容包括进程管理、存储管理、文件管理、设备管理和操作系统接口;第3部分为应用篇,内容包括Shell程序设计、Linux系统管理以及网络与通信应用。
本书文字通俗易懂、举例充分、内容循序渐进,书中配有难度适中且实用性强的示例和习题,可以帮助读者加深对操作系统原理的理解,同时掌握Linux操作系统的应用技术和基本开发技能。本书适合作为高等院校计算机专业和信息类专业本科生操作系统课程的教材,也可作为Linux应用开发人员的自学教材。
本书文字通俗易懂、举例充分、内容循序渐进,书中配有难度适中且实用性强的示例和习题,可以帮助读者加深对操作系统原理的理解,同时掌握Linux操作系统的应用技术和基本开发技能。本书适合作为高等院校计算机专业和信息类专业本科生操作系统课程的教材,也可作为Linux应用开发人员的自学教材。
目 录
第1部分基础篇
第1章操作系统概述/31.1认识操作系统
1.1.1操作系统的概念
1.1.2操作系统的功能
1.2操作系统的发展与现状
1.2.1操作系统的发展
1.2.2操作系统的分类与现状
1.3Linux操作系统概述
1.3.1Linux的发展背景与历史
1.3.2Linux操作系统的特点
1.3.3Linux操作系统的组成
1.3.4Linux操作系统的版本
1.3.5Linux操作系统的应用与发展
习题
第2章 Linux操作基础/
2.1Linux基本操作
2.1.1登录
2.1.2修改口令
2.1.3退出
2.1.4系统的关闭与重启
2.2Linux命令
2.2.1命令的格式
2.2.2命令的输入与执行
2.2.3几个简单命令
2.2.4联机帮助
2.3Linux文件操作
2.3.1Linux系统的文件
2.3.2Linux系统的目录31〖1〗Linux操作系统:基础、原理与应用目录[3]〖3〗2.3.3常用的目录操作命令
2.3.4常用的文件操作命令
2.4输入/输出重定向
2.4.1命令的输入与输出
2.4.2输入重定向
2.4.3输出重定向
2.4.4管道
习题
第3章vi文本编辑器/
3.1vi文本编辑器概述
3.1.1vi文本编辑器介绍
3.1.2vi的工作模式
3.1.3vi的基本工作流程
3.2vi基本命令
3.2.1光标定位与移动
3.2.2文本输入与删除
3.2.3文本修改与替换
3.2.4文本拷贝、粘贴与选择
3.2.5撤销与重做
3.3vi常用末行命令
3.3.1搜索与替换命令
3.3.2文件操作与退出命令
3.3.3其他常用命令
习题
第4章Linux C编程基础/
4.1Linux C编程方法概述
4.2gcc编译基础
4.2.1gcc编译过程
4.2.2gcc命令
4.2.3gcc应用举例
4.3C联机手册
习题
第2部分原理篇
第5章进程管理/875.1进程
5.1.1程序的顺序执行与并发执行
5.1.2进程的概念
5.1.3进程控制块
5.1.4Linux系统中的进程
5.2进程的运行模式
5.2.1操作系统的内核
5.2.2中断与系统调用
5.2.3进程的运行模式
5.3进程的描述与组织
5.3.1进程的资源
5.3.2进程的描述结构
5.3.3进程的组织
5.4进程控制
5.4.1进程控制的功能
5.4.2Linux系统的进程控制
5.4.3Shell命令的执行过程
5.5进程调度
5.5.1进程调度的基本原理
5.5.2Linux系统的进程调度
5.5.3Linux系统的进程切换
5.6进程的互斥与同步
5.6.1进程间的制约关系
5.6.2信号量同步机制
5.6.3Linux的信号量机制
5.6.4死锁问题
5.7进程通信
5.7.1进程通信的方式
5.7.2Linux信号通信原理
5.7.3Linux管道通信原理
5.8线程
5.8.1线程的概念
5.8.2线程与进程的比较
5.8.3内核级线程与用户级线程
5.8.4Linux中的线程
习题
第6章存储管理/
6.1存储管理概述
6.1.1内存的分配与回收
6.1.2存储地址变换
6.1.3内存的保护
6.1.4内存的扩充
6.2存储管理方案
6.2.1分区存储管理
6.2.2页式存储管理
6.2.3段式存储管理
6.2.4段页式存储管理
6.3虚拟存储管理
6.3.1虚拟存储技术
6.3.2页式虚拟存储器原理
6.4Linux的存储管理
6.4.1×86架构的内存访问机制
6.4.2Linux内存管理方案
6.4.3进程地址空间的管理
6.4.4内存空间的管理与分配
6.4.5页面的交换
习题
第7章文件管理/
7.1文件管理技术
7.1.1文件与文件系统
7.1.2文件的逻辑结构与存取方式
7.1.3文件的物理结构与存储方式
7.1.4文件的共享与保护
7.1.5文件存储空间的管理
7.2Linux文件系统概述
7.2.1Linux文件系统的特点
7.2.2Linux文件系统的结构
7.3Ext文件系统
7.3.1Ext文件的结构
7.3.2Ext文件系统的磁盘布局
7.3.3Ext文件存储分配策略
7.4虚拟文件系统
7.4.1VFS的对象
7.4.2VFS对象的关联结构
7.4.3VFS与进程的接口
7.4.4VFS的缓存机制
7.4.5文件系统的注册、挂装与卸载
7.4.6文件的操作
习题
第8章设备管理/
8.1设备管理概述
8.1.1设备管理的功能
8.1.2设备的分类
8.1.3设备与系统的接口
8.1.4I/O系统的硬件结构
8.1.5I/O系统的软件结构
8.2设备管理的相关技术
8.2.1中断技术
8.2.2缓冲与缓存技术
8.2.3DMA技术
8.3I/O控制方式
8.3.1程序I/O方式
8.3.2中断I/O方式
8.3.3DMA方式
8.3.4通道方式
8.4设备的分配与调度
8.4.1设备分配的基本方法
8.4.2虚拟设备技术
8.5设备的驱动
8.5.1设备的驱动方式
8.5.2驱动程序与中断处理程序
8.6Linux设备管理
8.6.1Linux设备管理综述
8.6.2Linux I/O系统的软件结构
8.6.3Linux的设备管理机制
8.6.4字符设备的管理与驱动
8.6.5块设备的管理与驱动
8.6.6Linux的中断处理
习题
第9章操作系统接口/
9.1操作系统接口概述
9.1.1作业与作业调度
9.1.2操作系统的接口
9.1.3Linux系统的接口
9.2Shell命令接口
9.2.1Shell界面的组成
9.2.2Shell的功能
9.2.3Shell的版本
9.2.4Shell的工作流程与原理
9.3X图形窗口接口
9.3.1X Window系统概述
9.3.2X系统的体系结构与工作原理
9.3.3X图形界面的组成
9.3.4X系统的启动与停止
9.3.5Linux桌面系统简介
9.4系统调用接口
9.4.1系统调用接口概述
9.4.2系统调用接口的组成
9.4.3系统调用的分类
9.4.4系统调用的执行过程
习题
第3部分应用篇
第10章Shell程序设计/24910.1Shell语言概述
10.1.1Shell语言的特点
10.1.2Shell程序
10.1.3Shell程序的建立与执行
10.2Shell特殊字符
10.2.1通配符
10.2.2输入/输出重定向与管道符
10.2.3命令执行控制符
10.2.4命令组合符
10.2.5命令替换符
10.2.6其他元字符
10.2.7元字符的引用
10.3Shell变量
10.3.1变量的定义与使用
10.3.2变量的作用域
10.3.3变量的分类
10.3.4环境变量
10.3.5特殊变量
10.4Shell表达式
10.4.1数字运算表达式
10.4.2逻辑测试表达式
10.5Shell控制结构
10.5.1条件与条件命令
10.5.2分支控制命令
10.5.3循环控制命令
10.5.4退出循环命令
10.5.5退出命令
10.6Shell程序综合举例
习题
第11章Linux系统管理/
11.1系统管理概述
11.1.1系统管理工作的内容
11.1.2系统管理工具
11.1.3root的权威性与危险性
11.2启动与关闭系统
11.2.1Linux系统的初始化机制
11.2.2系统的启动与关闭操作
11.3用户管理
11.3.1用户管理概述
11.3.2用户管理的相关文件
11.3.3用户管理
11.3.4用户组管理
11.4文件系统维护
11.4.1文件系统的目录结构
11.4.2存储设备命名规则
11.4.3划分磁盘分区
11.4.4建立逻辑卷
11.4.5建立文件系统
11.4.6挂装文件系统
11.4.7拆卸文件系统
11.4.8修复文件系统
11.5系统备份
11.5.1备份策略
11.5.2备份命令
11.6系统监控
11.6.1监视用户的登录
11.6.2监控进程的运行
11.6.3监视内存的使用
11.6.4监视文件系统的使用
11.7软件安装
11.7.1软件的打包与安装
11.7.2RPM软件包管理工具
11.7.3YUM软件包管理工具
习题
第12章网络与通信应用/
12.1TCP/IP网络相关概念
12.1.1TCP/IP协议概述
12.1.2IP地址与域名
12.1.3协议端口
12.1.4客户/服务器软件模型
12.2Linux网络应用技术
12.2.1网络测试
12.2.2网络查询
12.2.3远程执行命令
12.2.4文件传输
12.2.5即时通信
12.3电子邮件
12.3.1电子邮件的结构
12.3.2电子邮件系统的工作原理
12.3.3在Linux中使用邮件
习题
附录ALinux系统的安装
A.1安装准备
A.1.1获得安装介质
A.1.2确定安装方式
A.2在硬盘分区中安装Linux系统
A.2.1安装前准备
A.2.2安装过程
A.2.3安装后设置
A.3在虚拟机中安装Linux系统
A.3.1虚拟机技术简介
A.3.2安装虚拟机软件
A.3.3创建虚拟机
A.3.4调整虚拟机设置
A.3.5在虚拟机中安装和运行Linux
附录BLinux C开发工具简介/
B.1Linux C开发环境
B.2Make工具介绍
B.2.1makefile文件
B.2.2make命令
B.3调试工具介绍
B.3.1gdb命令
B.3.2gdb的使用
参考文献
第1章操作系统概述/31.1认识操作系统
1.1.1操作系统的概念
1.1.2操作系统的功能
1.2操作系统的发展与现状
1.2.1操作系统的发展
1.2.2操作系统的分类与现状
1.3Linux操作系统概述
1.3.1Linux的发展背景与历史
1.3.2Linux操作系统的特点
1.3.3Linux操作系统的组成
1.3.4Linux操作系统的版本
1.3.5Linux操作系统的应用与发展
习题
第2章 Linux操作基础/
2.1Linux基本操作
2.1.1登录
2.1.2修改口令
2.1.3退出
2.1.4系统的关闭与重启
2.2Linux命令
2.2.1命令的格式
2.2.2命令的输入与执行
2.2.3几个简单命令
2.2.4联机帮助
2.3Linux文件操作
2.3.1Linux系统的文件
2.3.2Linux系统的目录31〖1〗Linux操作系统:基础、原理与应用目录[3]〖3〗2.3.3常用的目录操作命令
2.3.4常用的文件操作命令
2.4输入/输出重定向
2.4.1命令的输入与输出
2.4.2输入重定向
2.4.3输出重定向
2.4.4管道
习题
第3章vi文本编辑器/
3.1vi文本编辑器概述
3.1.1vi文本编辑器介绍
3.1.2vi的工作模式
3.1.3vi的基本工作流程
3.2vi基本命令
3.2.1光标定位与移动
3.2.2文本输入与删除
3.2.3文本修改与替换
3.2.4文本拷贝、粘贴与选择
3.2.5撤销与重做
3.3vi常用末行命令
3.3.1搜索与替换命令
3.3.2文件操作与退出命令
3.3.3其他常用命令
习题
第4章Linux C编程基础/
4.1Linux C编程方法概述
4.2gcc编译基础
4.2.1gcc编译过程
4.2.2gcc命令
4.2.3gcc应用举例
4.3C联机手册
习题
第2部分原理篇
第5章进程管理/875.1进程
5.1.1程序的顺序执行与并发执行
5.1.2进程的概念
5.1.3进程控制块
5.1.4Linux系统中的进程
5.2进程的运行模式
5.2.1操作系统的内核
5.2.2中断与系统调用
5.2.3进程的运行模式
5.3进程的描述与组织
5.3.1进程的资源
5.3.2进程的描述结构
5.3.3进程的组织
5.4进程控制
5.4.1进程控制的功能
5.4.2Linux系统的进程控制
5.4.3Shell命令的执行过程
5.5进程调度
5.5.1进程调度的基本原理
5.5.2Linux系统的进程调度
5.5.3Linux系统的进程切换
5.6进程的互斥与同步
5.6.1进程间的制约关系
5.6.2信号量同步机制
5.6.3Linux的信号量机制
5.6.4死锁问题
5.7进程通信
5.7.1进程通信的方式
5.7.2Linux信号通信原理
5.7.3Linux管道通信原理
5.8线程
5.8.1线程的概念
5.8.2线程与进程的比较
5.8.3内核级线程与用户级线程
5.8.4Linux中的线程
习题
第6章存储管理/
6.1存储管理概述
6.1.1内存的分配与回收
6.1.2存储地址变换
6.1.3内存的保护
6.1.4内存的扩充
6.2存储管理方案
6.2.1分区存储管理
6.2.2页式存储管理
6.2.3段式存储管理
6.2.4段页式存储管理
6.3虚拟存储管理
6.3.1虚拟存储技术
6.3.2页式虚拟存储器原理
6.4Linux的存储管理
6.4.1×86架构的内存访问机制
6.4.2Linux内存管理方案
6.4.3进程地址空间的管理
6.4.4内存空间的管理与分配
6.4.5页面的交换
习题
第7章文件管理/
7.1文件管理技术
7.1.1文件与文件系统
7.1.2文件的逻辑结构与存取方式
7.1.3文件的物理结构与存储方式
7.1.4文件的共享与保护
7.1.5文件存储空间的管理
7.2Linux文件系统概述
7.2.1Linux文件系统的特点
7.2.2Linux文件系统的结构
7.3Ext文件系统
7.3.1Ext文件的结构
7.3.2Ext文件系统的磁盘布局
7.3.3Ext文件存储分配策略
7.4虚拟文件系统
7.4.1VFS的对象
7.4.2VFS对象的关联结构
7.4.3VFS与进程的接口
7.4.4VFS的缓存机制
7.4.5文件系统的注册、挂装与卸载
7.4.6文件的操作
习题
第8章设备管理/
8.1设备管理概述
8.1.1设备管理的功能
8.1.2设备的分类
8.1.3设备与系统的接口
8.1.4I/O系统的硬件结构
8.1.5I/O系统的软件结构
8.2设备管理的相关技术
8.2.1中断技术
8.2.2缓冲与缓存技术
8.2.3DMA技术
8.3I/O控制方式
8.3.1程序I/O方式
8.3.2中断I/O方式
8.3.3DMA方式
8.3.4通道方式
8.4设备的分配与调度
8.4.1设备分配的基本方法
8.4.2虚拟设备技术
8.5设备的驱动
8.5.1设备的驱动方式
8.5.2驱动程序与中断处理程序
8.6Linux设备管理
8.6.1Linux设备管理综述
8.6.2Linux I/O系统的软件结构
8.6.3Linux的设备管理机制
8.6.4字符设备的管理与驱动
8.6.5块设备的管理与驱动
8.6.6Linux的中断处理
习题
第9章操作系统接口/
9.1操作系统接口概述
9.1.1作业与作业调度
9.1.2操作系统的接口
9.1.3Linux系统的接口
9.2Shell命令接口
9.2.1Shell界面的组成
9.2.2Shell的功能
9.2.3Shell的版本
9.2.4Shell的工作流程与原理
9.3X图形窗口接口
9.3.1X Window系统概述
9.3.2X系统的体系结构与工作原理
9.3.3X图形界面的组成
9.3.4X系统的启动与停止
9.3.5Linux桌面系统简介
9.4系统调用接口
9.4.1系统调用接口概述
9.4.2系统调用接口的组成
9.4.3系统调用的分类
9.4.4系统调用的执行过程
习题
第3部分应用篇
第10章Shell程序设计/24910.1Shell语言概述
10.1.1Shell语言的特点
10.1.2Shell程序
10.1.3Shell程序的建立与执行
10.2Shell特殊字符
10.2.1通配符
10.2.2输入/输出重定向与管道符
10.2.3命令执行控制符
10.2.4命令组合符
10.2.5命令替换符
10.2.6其他元字符
10.2.7元字符的引用
10.3Shell变量
10.3.1变量的定义与使用
10.3.2变量的作用域
10.3.3变量的分类
10.3.4环境变量
10.3.5特殊变量
10.4Shell表达式
10.4.1数字运算表达式
10.4.2逻辑测试表达式
10.5Shell控制结构
10.5.1条件与条件命令
10.5.2分支控制命令
10.5.3循环控制命令
10.5.4退出循环命令
10.5.5退出命令
10.6Shell程序综合举例
习题
第11章Linux系统管理/
11.1系统管理概述
11.1.1系统管理工作的内容
11.1.2系统管理工具
11.1.3root的权威性与危险性
11.2启动与关闭系统
11.2.1Linux系统的初始化机制
11.2.2系统的启动与关闭操作
11.3用户管理
11.3.1用户管理概述
11.3.2用户管理的相关文件
11.3.3用户管理
11.3.4用户组管理
11.4文件系统维护
11.4.1文件系统的目录结构
11.4.2存储设备命名规则
11.4.3划分磁盘分区
11.4.4建立逻辑卷
11.4.5建立文件系统
11.4.6挂装文件系统
11.4.7拆卸文件系统
11.4.8修复文件系统
11.5系统备份
11.5.1备份策略
11.5.2备份命令
11.6系统监控
11.6.1监视用户的登录
11.6.2监控进程的运行
11.6.3监视内存的使用
11.6.4监视文件系统的使用
11.7软件安装
11.7.1软件的打包与安装
11.7.2RPM软件包管理工具
11.7.3YUM软件包管理工具
习题
第12章网络与通信应用/
12.1TCP/IP网络相关概念
12.1.1TCP/IP协议概述
12.1.2IP地址与域名
12.1.3协议端口
12.1.4客户/服务器软件模型
12.2Linux网络应用技术
12.2.1网络测试
12.2.2网络查询
12.2.3远程执行命令
12.2.4文件传输
12.2.5即时通信
12.3电子邮件
12.3.1电子邮件的结构
12.3.2电子邮件系统的工作原理
12.3.3在Linux中使用邮件
习题
附录ALinux系统的安装
A.1安装准备
A.1.1获得安装介质
A.1.2确定安装方式
A.2在硬盘分区中安装Linux系统
A.2.1安装前准备
A.2.2安装过程
A.2.3安装后设置
A.3在虚拟机中安装Linux系统
A.3.1虚拟机技术简介
A.3.2安装虚拟机软件
A.3.3创建虚拟机
A.3.4调整虚拟机设置
A.3.5在虚拟机中安装和运行Linux
附录BLinux C开发工具简介/
B.1Linux C开发环境
B.2Make工具介绍
B.2.1makefile文件
B.2.2make命令
B.3调试工具介绍
B.3.1gdb命令
B.3.2gdb的使用
参考文献
评论
还没有评论。