操作系统课程设计

出版时间:2009-6  出版社:浙江大学出版社  作者:李善平,季江民,尹康凯 编著  页数:329  

内容概要

本书介绍了Linux操作系统机制,分析了部分Linux内核代码,并列出了操作系统针对性的实验;从Linux操作系统环境、系统调用、定时器、内核模块、进程调度、虚拟存储、文件系统,循序渐进到Linux内核的改动。Linux.操作系统环境使用放在本书的附录中,对于没有学习过Linux操作系统命令的读者来说,需要掌握这方面的知识。    另一方面,作者本身也是程序员,对程序设计过程中的“创造性”有一定的体会。建议读者在使用本书时,大可不必循规蹈矩,读者可以用自己的思路学习Linux内核,这样既学到Linux源程序本身,更学到程序的“灵魂”。    本书是操作系统课程的实验教材,适合计算机及相关专业的本科生使用。所以,在书的编排上由浅入深,也自成单元。根据作者的经验,按照本书章节的顺序做实验是比较合适的。

书籍目录

第1章 操作系统课程设计概要  1.1 课程设计目的  1.2 课程设计实验报告基本要求  1.3 课程设计实验报告样例第2章 Linux操作系统环境第3章 编译Linux内核  3.1  Linux内核基础    3.1.1  Linux源程序的目录分布    3.1.2  kernel目录    3.1.3  mm目录    3.1.4  fs目录    3.1.5  arch目录    3.1.6  include目录    3.1.7  net目录  3.2 实验编译Linux内核    3.2.1 下载内核源代码    3.2.2 部署内核源代码    3.2.3 配置内核    3.2.4 编译内核和模块    3.2.5 启动Linux内核    3.2.6 应用grub配置启动文件第4章 系统调用  4.1 系统调用基础知识    4.1.1 一个使用系统调用的例子    4.1.2 系统调用是什么    4.1.3 为什么需要系统调用  4.2  Linux系统调用实现机制分析    4.2.1  entry.S汇编文件    4.2.2  traps.c(arch/i386/kelaael/traps.c)文件    4.2.3 系统调用中普通参数的传递及unistd.h    4.2.4 getuid()系统调用的实现  4.3 实验1添加一个简单系统调用  4.4 实验2添加一个更复杂的系统调用第5章 进程管理  5.1 Linux进程    5.1.1 进程是什么    5.1.2 Linux进程控制块  5.2 Linux进程创建及分析    5.2.1 第一个进程    5.2.2 fork、clone、kernel-thread    5.2.3 exec装载与执行进程    5.2.4 Linux中的线程  5.3 实验1分析系统调用sys—exit函数  5.4 实验2用fork()创建子进程  5.5 实验3用clone()创建子进程第6章 /proe文件系统  6.1 /proc文件系统的介绍    6.1.1  系统信息    6.1.2 进程信息  6.2 /proc文件系统的使用    6.2.1 创建与删除proc文件    6.2.2 读写proc文件  6.3 /proc文件系统分析    6.3.1 /proc文件数据结构定义    6.3.2 /proc下文件的创建和删除    6.3.3 /proc下超级块和索引节点的操作    6.3.4 /proc文件系统初始化  6.4 实验1分析/proc文件系统初始化  6.5 实验2/proc文件系统的一个简单应用第7章 内核模块  7.1 什么是内核模块  7.2 内核模块实现机制    7.2.1  内核模块和应用程序的比较    7.2.2 内核符号表    7.2.3 模块依赖    7.2.4 内核代码分析  7.3 如何使用内核模块    7.3.1 模块的加载    7.3.2 模块的卸载    7.3.3 模块实用程序modutils  7.4 实验1编写一个简单的内核模块  7.5 实验2多文件内核模块的实现第8章 虚拟内存管理  8.1 Linux虚拟内存管理    8.1.1 虚拟内存的抽象模型    8.1.2 Linux的分页管理    8.1.3 虚存段(vma)的组织和管理    8.1.4 页面分配与回收  8.2 实验1统计系统缺页次数  8.3 实验2统计一段时间内系统缺页次数第9章 时钟与定时器  9.1 时钟和定时器介绍    9.1.1  系统时钟    9.1.2 定时器    9.1.3  bottom half  9.2 Linux系统时钟    9.2.1 系统时钟的正常运行    9.2.2 系统时钟的设置和调整  9.3 Linux系统定时器    9.3.1 定时器的实现机制    9.3.2 定时器具体实现  9.4 实验1一个简单的定时器的实现   9.5 实验2统计进程的时间第10章 文件系统  10.1  Linux文件系统概念  10.2  VFs文件系统分析    10.2.1 什么是VFS文件系统    10.2.2 为什么需要VFS      10.2.3 VFS文件系统的结构    10.2.4 进程与文件的关系    10.2.5 文件系统的安装(mount.)    10.2.6 路径的定位和查找  10.3 ext2文件系统    10.3.1  ext2体系结构    10.3.2  ext2的关键数据结构    10.3.3  ext2的操作实现    10.3.4  ext2数据块分配机制  10.4 文件操作分析    10.4.1  open操作    10.4.2  read操作    10.4.3  ext2的read、write操作  10.5  实验1  分析close和write操作  10.6 实验2添加一个文件系统附录 Linux操作系统环境参考文献

章节摘录

插图:第1章 操作系统课程设计概要1.1 课程设计目的操作系统是计算机科学与技术领域中最为活跃的学科之一,因而操作系统课程也自然是计算机专业的一门核心专业基础课。操作系统课程内容综合了基础理论教学、课程实践教学、最新技术追踪等多项内容。但由于操作系统的高度复杂性,使得它成为专业课中最难学的课程之一。通过对操作系统原理的学习,要求理解操作系统在计算机系统中的作用、地位和特点,熟练掌握和运用操作系统在进行计算机软硬件资源管理和调度时常用的概念、方法、策略、算法、手段等。操作系统课程概念多、内容广、难度大,抽象强。因此,操作系统课程的学习面临这样一些难题:如何形象化地学习和理解抽象的操作系统概念及原理,如何紧跟飞速发展的操作系统技术。为了解决这些问题,我们认为不但要学好操作系统原理,还要加强操作系统实验。操作系统实验可帮助学生理论联系实际,巩固和复习所学过的操作系统概念与原理;也增强学生的实践能力,培养学生的动手能力,提高学生综合分析问题和解决问题的能力。Linux是目前常用的流行操作系统之一,其最大的特点是开放源代码。使用Linux操作系统和分析Linux内核代码是学习操作系统课程的很好选择。通过对Linux操作系统内核源代码的分析和实践,可以帮助学生对操作系统的用户界面和编程界面、体系结构、各组成部分的实现技术等,有更深入的整体认识;帮助学生进一步掌握操作系统原理。Linux内核的学习可以分两个阶段:在Linux内核分析阶段,通过阅读Linux内核源代码,改变部分内核源程序,改变系统行为,从而学习操作系统各个组成部分的实现机理,巩固操作系统原理知识。在Linux内核改进阶段,通过深人、综合分析Linux操作系统的实现机理,通过一定规模的源代码重写,使Linux系统功能或行为产生实质性变化,这个阶段可以锻炼学生综合知识运用的能力。

编辑推荐

《操作系统课程设计》由浙江大学出版社出版。

图书封面

评论、评分、阅读与下载


    操作系统课程设计 PDF格式下载


用户评论 (总计1条)

 
 

  •   和《边干边学linux》配套学linux内核,非常不错。
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7