操作系统课程是一门实践性很强的技术课程,是计算机及��相关专业本科生的必修课。它强调理论与实践的结合,注重实践训练。由于操作系统涉及的原理和算法比较抽象,使很多学生难以理解和掌握。
操作系统系统课程的特点之一是实验的难度大。本书针对两个**的操作系统Windows和Linux所提供的编程接口,设计了一些操作系统课程实验,目的是使学生熟悉操作系统接口的使用,并通过模拟操作系统原理的实现,加深学生对操作系统工作原理的领会和认识,加强对操作系统实现方法的理解,同时也使学生在程序设计方面得到基本训练。
操作系统本身的构造十分复杂,如何在有限的时间内使学生既能了解其实现原理又能对原理进行有效的实践,是操作系统教学一直在探索的问题。本书从操作系统基本原理出发,提供了不同类型的实习题,对每个实习题都进行了较为详细的实验指导,并配有经过测试的源程序代码供学生参考。
本书的**篇为windows系统实验指导。在进程管理方面,本书提供了线程的建立与撤销,线程的同步,线程的互斥,使用命名管道实现进程通信几个实验。在内存管理方面,提供了动态链接库的建立与调用和系统内存使用统计的两个实验。在文件管理方面,提供了采用无缓冲方式实现文件读/写,采用高速缓存实现文件读/写,采用异步方式实现文件读/写及对上述三种方式进行文件读/写的比较。在设备管理方面,提供了获取磁盘基本信息,读/写磁盘指定位置信息两个实验。
本书的第二篇为Linux系统实验指导,首先介绍了Linux系统的安装和使用。在进程管理方面,设计了编制实现软中断通信的程序和进程管道通信程序。在内存管理方面,设计了内存的监控、检查和回收,模拟FIFO、LRU和OPT页面置换算法两个实验。在文件管理方面,设计并实现了一个文件执行程序和一个一级文件系统程序。在设备管理方面,设计了字符类型设备的驱动程序和块类型设备的驱动程序两个实验。另外,还根据Linux的特点,设计了Linux系统内核的编译实验。
为了帮助学生学习和掌握操作系统课程基本知识,清楚地理解基本概念,掌握操作系统实现技术中所涉及的算法思想,求解操作系统问题的思路和方法,提高分析问题和解决问题的能力,并为报考计算机专业研究生的考生提供复习参考,本书的第三篇为操作系统学习指导和习题解析。对操作系统课程所涉及的基本概念、基本理论进行知识点学习指导,并与教材的内容相呼应。对**知识点配有典型例题分析,设计了一些自测题供学生进行自我学习测试。本篇内容条理清楚、深入浅出、详略分明。书中涉及的题目覆盖面广,针对性强,紧扣**教育部制定的课程教学大纲。