osos指导书2

上传人:小** 文档编号:89126389 上传时间:2019-05-19 格式:DOC 页数:9 大小:40KB
返回 下载 相关 举报
osos指导书2_第1页
第1页 / 共9页
osos指导书2_第2页
第2页 / 共9页
osos指导书2_第3页
第3页 / 共9页
osos指导书2_第4页
第4页 / 共9页
osos指导书2_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《osos指导书2》由会员分享,可在线阅读,更多相关《osos指导书2(9页珍藏版)》请在金锄头文库上搜索。

1、操作系统实验指导书操作系统是一门理论性和时间性都很强的课程。要学好操作系统的设计原理,除了听课、看书、做习题外,最好的方法就是在实践中进行,包括使用操作系统、阅读和分析已有操作系统的源代码、自己设计小型系统/模块或模拟算法等。本教材安排的实验内容按深度可分为五个层次,即:使用级、观察级、系统管理级、源码阅读级和实现级。(1)使用级:是指如何使用操作系统,包括对命令(以及菜单和shell)、系统调用和系统文件的使用。(2)观察级:是指通过使用级的接口,从外部观察操作系统的内部工作过程和结构。(3)系统管理级:是指系统或设备的安装、配置和性能调整。(4)源码阅读级:是指对现有操作系统部分内核源代码

2、的阅读。(5)实现级:是指编程模拟实现操作系统某些功能模块。实验的操作平台是Red Hat Linux 9.0和Windows 2000 Professional,其中前者是主要的实验平台,因为源码阅读级等实验都是在Linux平台上进行的,当然,在Linux上进行的实验基本上也都可在UNIX平台上直接进行。读者可根据自己的需要以及实验条件等选择相应的实验内容。 1使用级实验实验1 安装Linux操作系统一实验目的在供实验的微机上安装Linux操作系统,后续实验都将在此环境上进行。通过实验,要求:1.了解硬件资源要求。2.学会安装Linux系统。3.学会启动Linux系统。4.了解Linux多引

3、导器的配置。二实验内容把Linux安装到本地硬盘。主要安装步骤提示:1.如果BIOS支持光盘启动,则插入Linux安装光盘,重新启动计算机。如果从DOS环境启动,则在DOS提示符下执行批处理命令,如autoboot。l或者,准备启动软盘,插入并重新启动计算机。2. 对硬盘分区,留出交换空间和文件系统的空间。3.按提示分阶段装入系统。4.配置系统。实验2 安装Windows 2000操作系统一实验目的通过对Windows 2000 professional的安装操作,了解操作系统应用环境建立的初步过程。1.掌握Windows操作系统的基本系统设置。2.了解Windows多操作系统安装配置的方法。

4、二实验内容1.把Windows 2000安装到本地硬盘。注意:若要与Linux并存于同一硬盘上,则宜先安装Windows。2.主要安装步骤与安装Linux相似,在此从略。注意,按屏幕提示选择合适的文件系统时,建议选择NTFS。输入的管理员密码要记住。实验3 Linux系统用户接口和编程界面实验一实验目的1熟悉使用Linux字符界面、窗口系统的常用命令。2熟悉运用Linux常用的编程工具。3熟悉运用Linux的在线求助系统。4掌握在Linux操作系统环境上编辑、编译、调试、运行一个C语言程序的全过程。二实验内容1熟悉开机后登录Linux系统和退出系统的过程;2熟悉Linux字符界面虚拟终端窗口和

5、shell,以及图形界面X-Window(如gnome或KDE):练习并掌握常用的Linux操作命令,如ls、cat、ps、df、find、grep、cd、more、cp、rm、kill、at、vi、cc、man、help、control+d/c、等;熟悉常用shell的提示符;熟悉字符窗口与图形界面之间的切换。3学习使用Linux的在线求助系统,如man和help命令等。4掌握一种Linux的编辑器,特别是字符界面的vi工具的使用。5用vi编辑一个打印“Hello,I am a C program”字串的C语言程序,然后编译并运行它,记下整个过程。熟悉gcc、gdb等编译器、调试器的使用。

6、2系统行为观察级实验实验4 观察Linux进程的异步并发执行一实验目的1.了解进程与程序的区别,加深对进程概念的理解;2.掌握进程并发执行的原理,理解进程并发执行的特点,区分进程并发执行与串行执行;3.了解fork( )系统调用的返回值,掌握用fork()创建进程的方法;4.熟悉wait、exit等系统调用。二实验内容1编写一C语言程序,实现在程序运行时通过系统调用fork( )创建两个子进程,使父、子三进程并发执行,父亲进程执行时屏幕显示“I am father”,儿子进程执行时屏幕显示“I am son”,女儿进程执行时屏幕显示“I am daughter”。2多次连续反复运行这个程序,观

7、察屏幕显示结果的顺序,直至出现不一样的情况为止。记下这种情况,试简单分析其原因。3修改程序,利用nice ( ) 改变各进程的优先级,观察不同情况下进程调度效果的区别。4修改程序,在父、子进程中分别使用wait、exit等系统调用“实现”其同步推进,多次反复运行改进后的程序,观察并记录运行结果。 实验5 Linux进程间的通信一、实验目的学习如何利用管道机制、消息缓冲队列、共享存储区机制进行进程间的通信,并加深对上述通信机制的理解。二、实验内容 1了解系统调用pipe()、msgget()、msgsnd()、msgrcv()、msgctl()、shmget()、shmat()、shmdt()、

8、shmctl()的功能和实现过程。2编写一C语言程序,使其用管道来实现父子进程间通信。子进程向父进程发送字符串“is sending a message to parent!”;父进程则从管道中读出子进程发来的消息,并将其显示到屏幕上,然后终止。3运行该程序,观察、记录并简单分析其运行结果。实验6 观察内存分配结果一实验目的学习如何利用Linux的malloc函数动态申请一段内存空间。二实验内容1了解malloc函数的功能和Linux虚拟内存管理的原理。2编写一C语言程序,用malloc函数申请一段存储空间,并在终端上显示起始地址。3运行该程序,观察、记录其运行结果,并分析说明结果的地址是否为

9、物理地址。实验7 观察内存使用情况一、实验目的用Windows 2000自带的工具观察内存空间的使用情况。二、实验内容1.用Windows 2000的性能监视器或者任务管理器观察内存工作情况。2.观察并写出屏幕显示的内容。3系统管理级实验实验8 在Linux中使用优盘一实验目的1了解mount和umount命令的功能;2了解Linux设备文件的命名;3用上述所了解的内容解决在Linux中使用优盘的问题。二实验内容1用mount命令把优盘的设备文件安装到/mnt目录(可能需要root用户口令,请勿乱用)。2进入/mnt目录,使用优盘(比如,往里拷贝一个文件)。3退出/mnt目录,用umount命

10、令把优盘从系统中卸载掉。4按ctrl+d组合键,退出超级用户模式。5总结在Linux中使用优盘的过程。实验9 使用Windows 2000的注册表屏蔽桌面上的“回收站“一实验目的1了解Windows 2000注册表的作用,熟悉注册表编辑器;2熟悉Windows 2000注册表中5个主要根键的内容与作用;3了解备份注册表的重要性,掌握备份注册表的基本方法;4学会通过修改注册表,屏蔽桌面“回收站”图标的方法。二实验内容1备份注册表(或者打开后导出注册表)。2运行regedit命令打开注册表。3选择注册表中“HKEY_LOCAL_MACHINE”子窗口(即找到此根键),定位到“HKEY_LOCAL_

11、MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerDesktopNameSpace”分支,在该分支下有多个子键对应桌面上的某些系统图标。4删除键值为Recycle Bin的子键,如子键645FF040-5081-1-1B-9F08-00AA002F954E。5重新启动计算机。6根据备份的注册表内容,恢复注册表中被删除的子键,重新启动计算机。7观察两次重启后的情况,总结备份、修改和恢复注册表的一般过程。4源代码阅读级实验 这部分实验难度较大,但很有意义,也很有意思,建议学生分组协作完成。 实验10 分析Linux进程调度程序一实验目的1了解

12、Linux源代码的分布;2了解阅读Linux源代码的一般方法;3熟悉Linux管理进程用的主要数据结构;4通过阅读Linux进程调度有关函数的源代码,理解Linux的进程调度算法及其实现所用的主要数据结构。二实验内容1通过查阅参考书或者上网找资料,熟悉/usr/src/linux(注意:这里最后一级目录名可能是个含具体内核版本号和“linux”字符串的名字)下各子目录的内容,即所含Linux源代码的情况。2在概览Linux启动和初始化部分源代码基础上,分析Linux进程调度有关函数的源代码,主要是schedule()函数和goodness()函数,并且要对它们引用的头文件等一并分析。3归纳总结

13、出Linux的进程调度算法及其实现所用的主要数据结构。实验11跟踪系统查找文件过程一实验目的1了解Linux源代码的分布;2了解阅读Linux源代码的一般方法;3熟悉Linux管理文件用的主要数据结构;4通过分析Linux文件系统部分源代码,跟踪系统查找文件的过程。二实验内容 1通过查阅参考书或者上网找资料,熟悉/usr/src/linux(注意:这里最后一级目录名可能是个含具体内核版本号和“linux”字符串的名字)下各子目录的内容,即所含Linux源代码的情况。2在概览Linux启动和初始化部分源代码基础上,分析Linux虚拟文件系统及EXT3文件系统的部分内核源代码,即其超级块、组描述符

14、、数据块位图、索引节点表、目录项结构及其相关操作的源代码实现,并利用各种可能工具,跟踪、展示Linux文件系统管理模块搜索EXT3文件系统的/usr/include/stdio.h文件的过程。3归纳总结出Linux根据哪些主要数据结构先检索出文件/usr/include/stdio.h的索引节点,进而读出其内容的全部过程。5实现级实验本级的实验既可在Linux,也可在Windows 2000操作系统平台下进行。实验11进程调度模拟程序设计一实验目的加深对进程概念和进程调度过程/算法的理解。二、实验内容1给出进程调度的算法描述(如基于动态优先级和时间片轮转调度算法的描述)。2用C语言设计一个对n个并发进程进行调度的程序,每个进程由一个进程控制块(PCB)结构表示,该进程控制块应包括下述信息:进程标识ID、进程优先数PRIORITY(并规定优先数与优先权成正比)、时间片数CHIP、进程已经占用CPU的时间CPUTIME,进程还需要运行的时间ALLTIME(当进程运行完毕时,其值为0)、进程的状态STATE(为简化起见。设每个进程处于运行E(excecuting)、就绪R(ready)和完成F(finish)三种状态之一,并假设起始状态都是就绪状态R。),以及进程队列指针NEXT(用来将PCB排成队列)等,可按照调度算法的不同而增删。3调度程序应当包含2种不同的调度算法,运行时可以

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号