配套资源:电子课件、习题解答
本书特色:
★基础理论篇以操作系统对计算机系统资源的管理为线索,讲述操作系统相关知识。每章最后以Linux操作系统为实例,剖析了Linux操作系统各个功能模块的实现机制,以便让读者对操作系统有一个更实际的了解。
★实验指导篇,设计选取10个基于Linux操作系统的实验,并给出了具体的课程设计题目和设计提示。
★本书最后给出了6个课程设计题目,学生可根据设计提示自选开发环境进行设计。
本书教学资源,样书申请可添加微信13146070618索取
本书分为两部分,上篇基础理论篇以操作系统对计算机系统资源的管理为线索,讲述操作系统的基本概念、基本原理、设计方法和实现技术,并以Linux操作系统为实例,剖析了Linux操作系统各个功能模块的实现机制,以加深读者对操作系统基本理论的理解。下篇实验指导篇围绕操作系统的用户接口、处理机管理、存储管理、文件管理和设备管理,在Linux系统环境下,设计选取10个实验,并给出了具体的课程设计题目和设计提示。 本书体系结构清晰,语言浅显易懂,案例经典实用。 全书从理论到实验、再到读者自行开发,脉络清晰,内容由浅入深,方便读者学习使用。 本书既可作为高等学校计算机专业及相关专业的“操作系统”课程教材,也可作为从事计算机科学、工程和应用等方面工作的科技人员的参考用书。
配套资源:电子课件、习题解答
本书特色:
★基础理论篇以操作系统对计算机系统资源的管理为线索,讲述操作系统相关知识。每章最后以Linux操作系统为实例,剖析了Linux操作系统各个功能模块的实现机制,以便让读者对操作系统有一个更实际的了解。
★实验指导篇,设计选取10个基于Linux操作系统的实验,并给出了具体的课程设计题目和设计提示。
★本书最后给出了6个课程设计题目,学生可根据设计提示自选开发环境进行设计。
本书教学资源,样书申请可添加微信13146070618索取
本书分为两部分,上篇基础理论篇以操作系统对计算机系统资源的管理为线索,讲述操作系统的基本概念、基本原理、设计方法和实现技术,并以Linux操作系统为实例,剖析了Linux操作系统各个功能模块的实现机制,以加深读者对操作系统基本理论的理解。下篇实验指导篇围绕操作系统的用户接口、处理机管理、存储管理、文件管理和设备管理,在Linux系统环境下,设计选取10个实验,并给出了具体的课程设计题目和设计提示。 本书体系结构清晰,语言浅显易懂,案例经典实用。 全书从理论到实验、再到读者自行开发,脉络清晰,内容由浅入深,方便读者学习使用。 本书既可作为高等学校计算机专业及相关专业的“操作系统”课程教材,也可作为从事计算机科学、工程和应用等方面工作的科技人员的参考用书。
上篇 基础理论篇
第1章 计算机操作系统概述
1.1 操作系统概念
1.2 操作系统的发展历程
1.2.1 穿孔卡片
1.2.2 晶体管和单道批处理系统
1.2.3 集成电路芯片和多道程序系统
1.2.4 个人计算机和现代操作系统
1.3 操作系统的分类
1.3.1 批处理操作系统
1.3.2 分时操作系统
1.3.3 实时操作系统
1.3.4 网络操作系统
1.3.5 分布式操作系统
1.3.6 嵌入式操作系统
1.3.7 云操作系统
1.4 现代操作系统的主要特性
1.4.1 并发性
1.4.2 共享性
1.4.3 虚拟性
1.4.4 异步性
1.5 操作系统的功能
1.5.1 处理机管理
1.5.2 存储管理
1.5.3 设备管理
1.5.4 文件管理
1.5.5 用户接口
1.6 Linux操作系统基础
1.6.1 Linux的起源与发展
1.6.2 Linux系统的特点
1.6.3 Linux基本结构
1.6.4 Linux版本
思考与练习
第2章 操作系统用户接口
2.1 用户接口简介
2.2 命令接口
2.2.1 作业
2.2.2 脱机用户接口
2.2.3 联机用户接口
2.2.4 Linux的命令控制接口
2.3 图形接口
2.4 系统调用
2.4.1 处理机的两种工作状态
2.4.2 系统调用的实现
2.4.3 系统调用实例
2.4.4 Linux系统调用
2.5 Linux编程基础
2.5.1 Linux的Shell
2.5.2 vi使用入门
2.5.3 GCC概述
2.5.4 Makefile
思考与练习
第3章 处理机管理
3.1 进程与线程
3.1.1 进程的引入
3.1.2 进程的概念
3.1.3 进程控制
3.1.4 进程调度
3.1.5 线程
3.2 进程间的制约关系
3.2.1 进程互斥和同步的概念
3.2.2 进程互斥的实现
3.2.3 进程同步的实现
3.2.4 用P、V原语解决经典的同步/互斥问题
3.2.5 结构化的同步/互斥机制——管程
3.3 进程通信
3.3.1 进程的通信方式
3.3.2 消息缓冲机制
3.3.3 信箱通信
3.4 死锁
3.4.1 死锁的概念
3.4.2 死锁产生的必要条件
3.4.3 死锁的预防
3.4.4 死锁的避免
3.4.5 死锁的检测和解除
3.5 处理机调度
3.5.1 调度的层次和分类
3.5.2 作业调度的功能和性能指标
3.5.3 作业调度算法
3.6 Linux系统的处理机管理
3.6.1 Linux系统进程与线程
3.6.2 Linux系统的进程控制块
3.6.3 Linux的进程状态及状态变迁
3.6.4 Linux的进程控制
3.6.5 Linux的进程调度
3.6.6 Linux的进程通信
思考与练习
第4章 主存管理
4.1 存储管理概述
4.1.1 基本概念
4.1.2 存储管理的功能
4.1.3 主存的虚拟存储中用到的几种技术
4.2 存储器的连续分配
4.2.1 单一连续分区存储管理
4.2.2 固定分区存储管理
4.2.3 可变分区存储管理
4.3 存储器的离散分配
4.3.1 分页式存储管理
4.3.2 分段式存储管理
4.3.3 段页式存储管理
4.3.4 虚拟存储管理
4.4 Linux系统的存储管理
4.4.1 Linux的内存管理概述
4.4.2 Linux存储空间的描述
4.4.3 Linux多级分页机制
4.4.4 空闲内存的管理
4.4.5 内存的分配与回收
4.4.6 页面的交换
思考与练习
第5章 文件管理
5.1 文件
5.1.1 文件的概念
5.1.2 文件的命名
5.1.3 文件的类型
5.1.4 文件的属性
5.1.5 文件的逻辑结构及存取方法
5.1.6 文件的物理结构
5.1.7 文件的使用
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.2 文件的保护
5.5 Linux文件系统管理
5.5.1 Linux文件系统的概念
5.5.2 Linux文件系统的特点
5.5.3 Linux文件系统的结构
5.5.4 Ext2文件系统
思考与练习
第6章 设备管理
6.1 设备管理概述
6.1.1 设备管理的目标和功能
6.1.2 I/O系统的组织结构
6.1.3 I/O系统的分类
6.1.4 I/O系统的物理特性
6.2 设备使用界面的管理
6.2.1 设备独立性的概念
6.2.2 设备独立性软件
6.3 设备的分配
6.3.1 设备分配前应考虑的因素
6.3.2 设备分配原则
6.3.3 设备分配策略
6.3.4 设备分配中使用的数据结构
6.3.5 独享设备的分配
6.3.6 共享设备的分配
6.3.7 虚拟设备的分配
6.4 缓冲区的管理
6.4.1 缓冲的引入
6.4.2 缓冲的概念
6.4.3 缓冲的分类及实现
6.5 I/O的具体实现
6.5.1 I/O请求的提出
6.5.2 对I/O请求的管理
6.5.3 I/O请求的具体实现
6.5.4 数据传输方式
6.6 Linux的设备管理
6.6.1 Linux设备管理的特点
6.6.2 Linux系统的I/O软件结构
6.6.3 Linux的中断处理
思考与练习
下篇 实验指导篇
实验一 Linux的安装及应用
实验二 进程创建
实验三 进程控制
实验四 进程互斥
实验五 进程同步
实验六 进程通信
实验七 存储管理
实验八 文件管理
实验九 设备驱动程序安装
实验十 课程设计及设计提示
参考文献
电子计算机的发明是人类历史上最伟大的发明之一,它使人类社会进入了信息时代。 软件技术是计算机技术的灵魂,而操作系统更是计算机系统的大脑。学好操作系统知识,首先要掌握软件和操作系统的基本原理和设计技巧,这些原理和技巧是计算机前辈智慧的结晶,在学好基本理论知识的基础上,多想多练,才能激发自己的想象力和创造力。 本书是“2014年山西省高等学校教学改革项目”重点项目的成果之一,本书的编者都是长期从事一线教学工作的具备丰富的教学经验和科研实践的教师。针对计算机学科发展迅速,内容更新快的特点,本书力求做到以下几点: 反映本领域基础性、普遍性的知识,保持内容的相对稳定性。 紧跟科技的发展,引入有代表性的技术和实例。 考虑受众群体,注重教学效果,内容的组织符合学生的认知规律。 本书分为两部分:上篇基础理论篇,共6章,第1章简要介绍操作系统的概念、发展历程、分类、主要特性和功能,第2~6章以操作系统对计算机系统资源的管理为线索,对操作系统的用户接口、处理机管理、存储管理、设备管理和文件及磁盘管理的策略和技术,做了全面、深入、准确的介绍,每章最后以Linux操作系统为实例,剖析了Linux操作系统各个功能模块的实现机制,以便让读者对操作系统有一个更实际的了解;下篇实验指导篇,从基础理论部分所讲的知识点出发,精选10个实验项目,这些实验有的短小精干、有的可拆分模块,方便学生做课堂实验,实验也是基于Linux系统的,从Linux的安装,到进程的创建、控制、互斥、同步、通信,再到存储管理、文件管理和驱动程序开发实验,都给出了参考源代码,所有源代码均在Red Hat Linux上调试通过,实验十给出了6个课程设计题目,这些题目既有基础理论部分讲到的算法,又有对前9个实验未提及的知识点的补充,学生可根据设计提示自选开发环境进行设计。 全书基础理论部分讲授学时可安排为40~48学时,其中基本理论为必讲内容,每章最后一节的Linux知识,可根据教学目标选讲;实验内容可安排16~24学时,课程设计安排4~8学时,2.5节的Linux编程基础可放入实验内容,让学生熟悉Linux编程环境,为以后实验奠定基础。教师也可根据自己的教学计划安排学时。 本书第1~3章由侯海霞编写,第4~6章由李雪梅编写,实验一~实验七、实验九、实验十由蔡仲博编写,实验八由郭鲜凤编写,全书由侯海霞统稿。 由于编者水平有限,加之时间仓促,书中难免有不足和疏漏之处,敬请读者批评指正。 编 者
随手扫一扫~了解多多