书籍详情

Linux操作系统

Linux操作系统

作者:马季兰,彭新光编著

出版社:电子工业出版社

出版时间:2002-04-01

ISBN:9787505371583

定价:¥19.00

购买这本书可以去
内容简介
  本书是21世纪高等学校计算机学科系列教材之一,主要包括两方面的内容:一部分是按Linux源代码分析,集中讲解Linux的进程管理、存储管理、文件系统、设备管理、用户接口等,使读者能深入了解Linux操作系统的概念、算法、功能、实现原理及技术;另一部分简要介绍了Linux的安装、启动、系统的使用及管理,使读者能掌握Linux的使用(包括使用丰富的工具和实用软件)方法,并进行管理和维护。书中有专门的实验及指导。本书讲解深入浅出,图序言这套教材是面向21世纪计算机学科系列教材。为什么要组织这套教材?根据什么编写这套教材?这些都是在这篇序言中要回答的问题。计算机学科是一个飞速发展的学科,尤其是近十年来,计算机向高度集成化、网络化和多媒体化发展的速度一日千里。但是,从另一个方面来看,目前高等学校的计算机教育,特别是教材建设,远远落后于现实的需要。现在的教材主要是根据《教学计划1993》的要求组织编写的。这个教学计划,在制定过程中主要参照了美国IEEE和ACM的《教学计划1991》。10年来,计算机学科已有了长足发展,这就要求高等学校计算机教育必须跟上形势发展的需要,在课程设置和教材建设上做出相应调整,以适应面向21世纪计算机教育的要求。这是组织这套教材的初衷。为了组织好这套教材,全国高等学校计算机教育研究会课程与教材建设委员会在天津召开了“全国高等学校计算机学科课程与教材建设研讨会”,在北京召开了“教材编写大纲研讨会”。在这两次会议上,代表们深入地研讨了全国高校计算机专业教学指导委员会和中国计算机学会教育委员会制定的《计算机学科教学计划2000》以及美国IEEE和ACM的《计算机学科教学计划2001》,这是这套教材参照的主要依据。IEEE和ACM的《计算机学科教学计划2001》是在总结了从《计算机学科教学计划1991》到现在,计算机学科十年来发展的主要成果的基础上诞生的。它认为面向21世纪计算机学科应包括14个主科目:算法与分析(AL)、体系结构(AR)、离散结构(DS)、计算科学(CN)、图形学、可视化、多媒体(GR)、网络计算(NC)、人机交互(HC)、信息管理(IM)、智能系统(IS)、操作系统(OS)、程序设计基础(PF)、程序设计语言(PL)、软件工程(SE)、社会、道德、法律和专业问题(SP)。其中除CN和GR为非核心主科目外,其他12项均为核心主科目。将2001教学计划与1991教学计划比较可看出:(1)在1991年计划中,离散结构只作为数学基础提出,而在2001计划中,则作为核心主科目提出,显然,提高了它在计算机学科中的地位。(2)在1991计划中,未提及网络计算,而在2001计划中,则作为核心主科目提出,以适应网络技术飞速发展的需求。(3)图形学、可视化与多媒体也是为适应发展要求新增加的内容。除此之外,2001计划在下述5个方面做调整:将程序设计语言引论调整为程序设计基础,将人-机通信调整为人机交互,将人工智能与机器人学调整为智能系统,将数据库与信息检索调整为信息管理,将数值与符号计算调整为计算科学。显然,这些变化使2001计划更具有科学性,也更好地适应了学科发展的需要。在组织这套教材的过程中,充分考虑了这些变化和调整,在软件和硬件的课程体系、界面划分方面均做了相应的调整,使整套教材更具有科学性和实用性。另外,还要说明一点,教材建设既要满足必修课的要求,又要满足限选课和任选课的要求。因此,教材应按系列组织,反映整个计算机学科的要求,采用大拼盘结构,以适应各校不同的具体教学计划,使学校可根据自己的需求进行选择。这套教材包括:《微机应用基础》、《离散数学》、《电路与电子技术》、《电路与电子技术习题与实验指南》、《数字逻辑与数字系统》、《计算机组成原理》、《微型计算机接口技术》、《计算机体系结构》、《计算机网络》、《计算机网络实验教程》、《通信原理》、《计算机网络管理及系统开发》、《网络信息系统集成》、《多媒体技术》、《计算机图形学》、《计算机维护技术》、《数据结构》、《计算机算法设计与分析》、《计算机数值分析》、《汇编语言程序设计》、《Pascal语言程序设计》、《VB程序设计》、《C语言程序设计》、《C++语言程序设计》、《Java语言程序设计》、《操作系统原理》、《UNIX操作系统原理与应用》、《Linux操作系统》、《软件工程》、《数据库系统原理》、《编译原理》、《编译方法》、《人工智能》、《计算机信息安全》、《计算机图像处理》、《人机交互》、《计算机伦理学》。对于IEEE和ACM的《计算机学科教学计划2001》中提出的14个主科目,这套系列教材均涵盖,能够满足不同层次院校、不同教学计划的要求。这套系列教材由全国高等学校计算机教育研究会课程与教材建设委员会主任李大友教授精心策划和组织。编者均为具有丰富教学实践经验的专家和教授。所编教材体系结构严谨、层次清晰、概念准确、论理充分、理论联系实际、深入浅出、通俗易懂。教材组织过程中,得到了哈尔滨工业大学蒋宗礼教授,西安交通大学董渭清副教授,武汉大学张焕国教授,吉林大学张长海教授,福州大学王晓东教授,太原理工大学余雪丽教授等的大力支持和帮助,在此一并表示衷心感谢。李大友2000年6月前言Linux是可运行于多种硬件平台,支持多种系统软件和应用软件,与UNIX兼容,符合POSIX标准的功能强大的操作系统。Linux具有多用户、多任务、虚拟存储器、虚拟文件系统等先进技术,更主要的是Linux为源代码公开、可免费获得的自由软件。操作系统是计算机专业的必修主干课程,也是所有使用计算机的工程技术人员或用户必须掌握的计?慊局叮敲刻扑慊匦氚沧暗淖罨镜南低橙砑?在操作系统的教学过程中,编者深刻体会到,操作系统的概念、原理、算法等较抽象,因为操作系统本身是个软件的“黑匣子”,其源代码要么是读不到,要么读不懂。而有操作系统编写经验的人很少;又由于操作系统的复杂性,使得操作系统课程又难以实习,所以无论“教”还是“学”操作系统,都不是一件容易的事。Linux则是一个自由软件,它的源程序代码是开放的,开发模式也是开放和协作的,源程序允许任何人取得、修改和重新发布。这种开发模式既有利于充分发挥开发人员的集体智慧,同时由于Linux的开放,又非常适合于教学科研领域,它对于学生学习和研究操作系统来说,是低成本、高效率的,可以起到事半功倍的作用。本书共分为11章,其中1~6章介绍Linux内核的实现原理和方法,由马季兰编写;第7~9章介绍Linux的安装、管理和使用,第10章介绍Linux与网络,第11章为实验及部分实验的指导,第7~11章由彭新光编写。本书得到全国高等学校计算机教育研究会课程与教材建设委员会、电子工业出版社,特别是李大友老师的大力支持和帮助,在此表示衷心感谢。由于知识水平有限,时间仓促,定有错误和不妥之处,望同行和读者批评指正。编者2001年12月
作者简介
暂缺《Linux操作系统》作者简介
目录
第1章 概述
1.1 什么是Linux
1.2 Linux内核的特征
1.3 Linux内核源代码
1.3.1 内核源代码分布结构
1.3.2 阅读内核源代码导引
1.4 Linux内核的抽象结构
1.4.1 系统数据结构
1.4.2 Linux的具体结构
1.5 进程管理子系统
1.5.1 子系统描述
1.5.2 子系统功能
1.5.3 子系统接口
1.5.4 子系统数据结构
1.6 内存管理子系统
1.6.1 子系统描述
1.6.2 子系统功能
1.6.3 子系统接口
1.6.4 子系统数据结构
1.6.5 子系统组成模块
1.7 虚拟文件子系统
1.7.1 子系统描述
1.7.2 子系统功能
1.7.3 子系统接口
1.7.4 数据结构
1.8 进程间通信(IPC)子系统
1.8.1 子系统描述
1.8.2 子系统功能
1.8.3 子系统接口
1.8.4 子系统数据结构
1.9 网络接口子系统
1.9.1 Linux的网络层
1.9.2 子系统接口
1.9.3 子系统描述
1.9.4 子系统数据结构
习题
第2章 Linux进程及其管理
2.1 进程的概念
2.1.1 为何要引入进程
2.1.2 进程及其特征
2.1.3 进程的状态
2.1.4 进程实体
2.1.5 进程调度
2.1.6 进程通信
2.2 Linux中的进程
2.3 Linux的进程控制块 task_struct
2.4 Linux中的进程状态及其转换
2.5 Linux中的进程调度
2.6 Linux的时钟
2.6.1 Linux中的时间控制
2.6.2 计时和定时器
2.7 Linux内核机制
2.7.1 底半处理
2.7.2 任务队列(Task Queue)
2.8 进程的创建与撤销
2.8.1 进程的建立
2.8.2 进程的撤销
2.9 程序的装入和执行
习题
第3章 进程通信
3.1 管道(pipe)通信方式
3.2 信号
3.3 UNIX System V IPC 机制
3.3.1 消息队列
3.3.2 信号量
3.3.3 共享内存
习题
第4章 Linux存储管理
4.1 存储管理的一般常识
4.2 请求页式存储管理的实现原理
4.3 80386内存管理机构和功能
4.3.1 80386的分段机制在Linux中的应用
4.3.2 80386的分页机制在Linux中的应用
4.4 控制转移和任务切换
4.4.1 控制转移
4.4.2 任务切换
4.5 Linux虚存管理
4.5.1 Linux虚存管理的实现
4.5.2 Linux的内核空间和用户空间
4.5.3 Linux虚存段的组织和管理
4.5.4 Linux虚存页的组织和管理
4.6 Linux虚存的保护
4.6.1 多任务及保护
4.6.2 同一任务内的保护
4.7 Linux物理内存的管理
4.7.1 空闲块管理
4.7.2 内核态内存的申请与释放
4.7.3 用户态内存的申请与释放
4.7.4 页交换进程和页面换出
4.8 缓冲机制
习题
第5章 Linux文件系统
5.1 EXT2(第二扩展文件系统)
5.1.1 EXT2的磁盘布局
5.1.2 EXT2的超级块
5.1.3 EXT2的索引节点inode
5.1.4 EXT2的组描述符
5.1.5 位示图
5.1.6 文件的安全
5.2 虚拟文件系统
5.3 VFS中的主要数据结构
5.3.1 VFS的超级块
5.3.2 VFS的索引节点
5.3.3 其他重要的数据结构
5.4 文件系统的注册. 安装与卸载
5.4.1 文件系统的注册
5.4.2 文件系统的安装
5.4.3 文件系统的卸载
5.5 文件系统的系统调用
5.5.1 open系统调用
5.5.2 read系统调用
5.5.3 fcntl系统调用
习题
第6章 Linux的设备管理
6.1 设备驱动程序
6.1.1 设备驱动程序的框架
6.1.2 Linux驱动程序的几个通用函数
6.1.3 块设备驱动程序
6.2 字符设备驱动程序
6.2.1 字符设备的注册
6.2.2 工作内存
6.2.3 基本入口
6.2.4 一个字符设备驱动程序的实例
6.3 驱动程序的编译与装载
6.4 块高速缓存(buffer-cache)
6.5 Linux中的中断
6.5.1 Linux对中断的管理
6.5.2 Linux的中断处理
习题
第7章 Linux的使用基础
7.1 开始使用
7.1.1 登录
7.1.2 退出系统
7.1.3 关机
7.1.4 虚拟终端
7.1.5 获取帮助
7.2 文件操作
7.2.1 目录与文件的基本操作
7.2.2 常用的系统操作命令
7.3 vi编辑
7.3.1 编辑方式
7.3.2 插入方式
7.3.3 正文替换
7.3.4 命令方式
7.3.5 退出命令
7.3.6 文件的使用
7.3.7 行号
7.3.8 字符串搜索
7.3.9 规则表达式
7.3.10 正文替换
7.3.11 删除正文
7.3.12 编辑程序的选项
7.3.13 shell切换
7.4 shell
7.4.1 了解Linux的shell
7.4.2 shell命令的语法分析
7.4.3 shell编程
7.4.4 shell程序举例
7.5 X Windows
7.5.1 X Windows 的安装与配置
7.5.2 X Windows的使用
习题
第8章 Linux的安装
8.1 Linux的版本介绍
8.1.1 SLS(Softland Software)Linux
8.1.2 Slackware Linux
8.1.3 RedHat Linux
8.1.4 Debian Linux
8.1.5 Caldera Linux
8.2 Linux的获取
8.3 硬件支持
8.4 RedHat Linux安装指南
8.4.1 准备工作
8.4.2 启动机器
8.4.3 安装系统
8.5 常见问题解答
习题
第9章 系统管理
9.1 Root 账号与系统安全
9.2 引导系统
9.2.1 从软盘引导
9.2.2 从硬盘引导
9.2.3 用Loadin 程序引导
9.3 系统初始化程序和文件
9.3.1 初始化信息
9.3.2 初始化程序和文件
9.4 关闭系统
9.5 用户管理
9.5.1 用户账号的信息
9.5.2 创建账号
9.5.3 修改账号的属性
9.5.4 组账号的管理
9.6 管理文件系统
9.6.1 文件系统的基本概念和类型
9.6.2 创建文件系统
9.6.3 安装文件系统
9.6.4 检查. 维护文件系统
9.7 交换空间
9.8 系统升级
9.8.1 内核的升级
9.8.2 库的升级
9.8.3 GCC的升级
9.8.4 其他软件的升级
习题
第10章 Linux与网络
10.1 Linux网络管理
10.1.1 TCP/IP历史
10.1.2 TCP/IP通信基础
10.1.3 TCP/IP网络配置
10.1.4 配置Linux的域名服务
10.1.5 获得Linux网络软件
10.2 建立Linux的普通站点
10.2.1 安装远程目录
10.2.2 设置网络其他设备
10.2.3 创建账户
10.3 建立Internet站点
10.3.1 准备工作
10.3.2 选择接入方式
10.3.3 安装E-mail软件
10.3.4 安装WWW服务
10.3.5 安装FTP服务器软件
10.4 网络常用术语及协议
习题
第11章 实验
11.1 安装Linux系统
11.1.1 实验目的
11.1.2 实验内容
11.1.3 思考题
11.2 用户界面实验
11.2.1 实验目的
11.2.2 实验内容
11.2.3 思考题
11.3 进程管理
11.3.1 实验目的
11.3.2 实验预备内容
11.3.3 实验内容
11.3.4 思考题
11.3.5 实验指导
11.4 进程间通信
11.4.1 实验目的
11.4.2 实验预备内容
11.4.3 实验内容
11.4.4 实验指导
11.5 内存管理
11.5.1 实验目的
11.5.2 实验内容
11.5.3 思考题
11.6 文件系统设计
11.6.1 设计目的
11.6.2 设计内容
11.6.3 设计提示
主要参考文献
序言/前言


这套教材是面向21世纪计算机学科系列教材. 为什么要组织这套教材 根据什么编写这
套教材 这些都是在这篇序言中要回答的问题. 
计算机学科是一个飞速发展的学科, 尤其是近十年来, 计算机向高度集成化. 网络化和多媒体化发展的速度一日千里. 但是, 从另一个方面来看, 目前高等学校的计算机教育, 特别是教材建设, 远远落后于现实的需要. 现在的教材主要是根据《教学计划1993》的要求组织编写的. 这个教学计划, 在制定过程中主要参照了美国IEEE和ACM的《教学计划1991》. 
10年来, 计算机学科已有了长足发展, 这就要求高等学校计算机教育必须跟上形势发展的需要, 在课程设置和教材建设上做出相应调整, 以适应面向21世纪计算机教育的要求. 这是组织这套教材的初衷. 
为了组织好这套教材, 全国高等学校计算机教育研究会课程与教材建设委员会在天津召开了“全国高等学校计算机学科课程与教材建设研讨会”, 在北京召开了“教材编写大纲研讨会”. 在这两次会议上, 代表们深入地研讨了全国高校计算机专业教学指导委员会和中国计算机学会教育委员会制定的《计算机学科教学计划2000》以及美国IEEE和ACM的《计算机学科教学计划2001》, 这是这套教材参照的主要依据. 
IEEE和ACM的《计算机学科教学计划2001》是在总结了从《计算机学科教学计划1991》到现在, 计算机学科十年来发展的主要成果的基础上诞生的. 它认为面向21世纪计算机学科应包括14个主科目:算法与分析 AL . 体系结构 AR . 离散结构 DS . 计算科学 CN . 图形学. 可视化. 多媒体 GR . 网络计算 NC . 人机交互 HC . 信息管理 IM . 智能系统 IS . 操作系统 OS . 程序设计基础 PF . 程序设计语言 PL . 软件工程 SE . 社会. 道德. 法律和专业问题 SP . 其中除CN和GR为非核心主科目外, 其他12项均为核心主科目. 
将2001教学计划与1991教学计划比较可看出:
1 在1991年计划中, 离散结构只作为数学基础提出, 而在2001计划中, 则作为核心主科目提出, 显然, 提高了它在计算机学科中的地位. 
2 在1991计划中, 未提及网络计算, 而在2001计划中, 则作为核心主科目提出, 以适应网络技术飞速发展的需求. 
3 图形学. 可视化与多媒体也是为适应发展要求新增加的内容. 
除此之外, 2001计划在下述5个方面做调整:
将程序设计语言引论调整为程序设计基础, 将人-机通信调整为人机交互, 将人工智能与机器人学调整为智能系统, 将数据库与信息检索调整为信息管理, 将数值与符号计算调整为计算科学. 
显然, 这些变化使2001计划更具有科学性, 也更好地适应了学科发展的需要. 
在组织这套教材的过程中, 充分考虑了这些变化和调整, 在软件和硬件的课程体系. 界面划分方面均做了相应的调整, 使整套教材更具有科学性和实用性. 
另外, 还要说明一点, 教材建设既要满足必修课的要求, 又要满足限选课和任选课的要求. 因此, 教材应按系列组织, 反映整个计算机学科的要求, 采用大拼盘结构, 以适应各校不同的具体教学计划, 使学校可根据自己的需求进行选择. 
这套教材包括:《微机应用基础》. 《离散数学》. 《电路与电子技术》. 《电路与电子技术习题与实验指南》. 《数字逻辑与数字系统》. 《计算机组成原理》. 《微型计算机接口技术》. 《计算机体系结构》. 《计算机网络》. 《计算机网络实验教程》. 《通信原理》. 《计算机网络管理及系统开发》. 《网络信息系统集成》. 《多媒体技术》. 《计算机图形学》. 《计算机维护技术》. 《数据结构》. 《计算机算法设计与分析》. 《计算机数值分析》. 《汇编语言程序设计》. 《Pascal语言程序设计》. 《VB程序设计》. 《C语言程序设计》. 《C 语言程序设计》. 《Java语言程序设计》. 《操作系统原理》. 《UNIX操作系统原理与应用》. 《Linux操作系统》. 《软件工程》. 《数据库系统原理》. 《编译原理》. 《编译方法》. 《人工智能》. 《计算机信息安全》. 《计算机图像处理》. 《人机交互》. 《计算机伦理学》. 对于IEEE和ACM的《计算机学科教学计划2001》中提出的14个主科目, 这套系列教材均涵盖, 能够满足不同层次院校. 不同教学计划的要求. 
这套系列教材由全国高等学校计算机教育研究会课程与教材建设委员会主任李大友教授精心策划和组织. 编者均为具有丰富教学实践经验的专家和教授. 所编教材体系结构严谨. 层次清晰. 概念准确. 论理充分. 理论联系实际. 深入浅出. 通俗易懂. 
教材组织过程中, 得到了哈尔滨工业大学蒋宗礼教授, 西安交通大学董渭清副教授, 武汉大学张焕国教授, 吉林大学张长海教授, 福州大学王晓东教授, 太原理工大学余雪丽教授等的大力支持和帮助, 在此一并表示衷心感谢. 
李大友
2000年6月
前 言
Linux是可运行于多种硬件平台, 支持多种系统软件和应用软件, 与UNIX兼容, 符合POSIX标准的功能强大的操作系统. Linux具有多用户. 多任务. 虚拟存储器. 虚拟文件系统等先进技术, 更主要的是Linux为源代码公开. 可免费获得的自由软件.
操作系统是计算机专业的必修主干课程, 也是所有使用计算机的工程技术人员或用户必须掌握的计算机基本知识, 是每台计算机必须安装的最基本的系统软件.
在操作系统的教学过程中, 编者深刻体会到, 操作系统的概念. 原理. 算法等较抽象, 因为操作系统本身是个软件的“黑匣子”, 其源代码要么是读不到, 要么读不懂. 而有操作系统编写经验的人很少, 又由于操作系统的复杂性, 使得操作系统课程又难以实习, 所以无论“教”还是“学”操作系统, 都不是一件容易的事.
Linux则是一个自由软件, 它的源程序代码是开放的, 开发模式也是开放和协作的, 源程序允许任何人取得. 修改和重新发布. 这种开发模式既有利于充分发挥开发人员的集体智慧, 同时由于Linux的开放, 又非常适合于教学科研领域, 它对于学生学习和研究操作系统来说, 是低成本. 高效率的, 可以起到事半功倍的作用.
本书共分为11章, 其中1~6章介绍Linux内核的实现原理和方法, 由马季兰编写, 第7~9章介绍Linux的安装. 管理和使用, 第10章介绍Linux与网络, 第11章为实验及部分实验的指导, 第7~11章由彭新光编写.
本书得到全国高等学校计算机教育研究会课程与教材建设委员会. 电子工业出版社, 特别是李大友老师的大力支持和帮助, 在此表示衷心感谢.
由于知识水平有限, 时间仓促, 定有错误和不妥之处, 望同行和读者批评指正.


者
2001年12月
猜您喜欢

读书导航