2015下《操作系统原理》实验报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

《操作系统原理》实验报告2013软件工程、网络工程学号:____________姓名:____________苏州大学计算机科学与技术学院2015年9月操作系统原理实验报告II目录一、实验环境............................................................................................1二、实验报告总体要求............................................................................1三、实验内容............................................................................................2实验一LINUX系统.................................................................................................2实验二、进程间的通信............................................................................................9实验三进程调度..................................................................................................16实验四、进程的内存使用情况..............................................................................21操作系统原理实验报告1一、实验环境1、实验环境一:Windows平台硬件平台:普通PC机硬件环境;操作系统:WindowsXP/7编译环境:任意开发工具,如VC++,VB,BCB等;2、实验环境二:JVM平台硬件平台:普通PC机硬件环境;操作系统:WindowsXP/7编译环境:JDK1.2以上或JBuilder6以上版本或其他Java环境;3、实验环境三:Linux平台硬件平台:普通PC机硬件环境;操作系统:各种Linux环境编译环境:伴随着操作系统的默认gcc环境;工作源码环境:一个调试的内核源码,版本不低于2.4.9二、实验报告总体要求每次实验完成后两周内,必须提交实验报告。实验报告至少要求包含以下内容:引言:概述本文所讨论的问题,工作步骤,以及结果、发现的意义。问题提出:叙述本文要解决什么问题。注意不可以抄写本实验报告中的表述,要用自己的话重新组织我们这里所提出的问题。解决方案:叙述如何解决自己上面提出的问题,可以用小标题3.1,3.2…等分开。这是本文的关键部分,请尽量展开来写。注意,这部分是本文的基本分部分。这部分不完成,本课程设计不会及格。实验结果:按照自己的解决方案,有哪些结果?结果有异常吗?能解释一下这些结果吗?同别人的结果比较过吗?注意,这部分是本文出彩的地方。本课程设计要得高分,应该在这部分下功夫。结束语:小结并叙述本次课程设计的经验、教训、体会、难点、收获、未解决的问题、新的疑惑等。附录:加了注释的程序清单,注释行数目至少同源程序行数目比1:2,即10行源程序,至少要给出5行注释。操作系统原理实验报告2三、实验内容实验一Linux系统实验环境:实验环境三:Linux平台实验时间:4小时实验目的:要求在熟悉Linux系统的基础上,了解用C语言编写文本处理程序的具体过程。实验目标:熟悉Linux操作系统,在Linux中使用C语言进行文本处理。完成下面两个问题:(1)使用C语言编写一个词频(限英文文章)统计程序,使之能够给出各个单词在输入文件中的出现次数。(2)使用C语言编写一个反向打印程序,使之能够按与输入文件中文本行相反的次序来打印(即后出现的文本行先打印)。实验准备:(1)阅读RedhatLinux或UbuntuLinux的使用手册(可从网络下载电子书),包括图形界面使用、系统管理、Shell命令和目录结构。(2)了解gcc的使用方法。实验步骤:Linux操作系统是一个通用的多用户分时操作系统,现已成为高档微机、工作站及若干小型机系统上的主要操作系统,并在许多领域中获得了广泛的应用。Linux系统具有简单、高效、易懂等特点,同时具有良好的可移植性,它代表着多用户操作系统发展的方向。C语言最初是为开发Linux操作系统而设计,Linux核心和所有的用户程序几乎都是用C语言编写,是Linux的标准语言。[提示]1、从root注册进系统,可以通过用户图形界面中的菜单创建用户组并为用户分配注册号,也可以通过shell命令创建用户组,创建用户组的shell命令格式操作系统原理实验报告3如下:groupadd-ggroup_IDgroup_name为用户分配注册号的shell命令格式如下:useradd–uuser_number–gprimary_group_ID–Gsupplementary_group_ID–ccomments-dhome-directory–sprogram–mlogin_ID其中-u选项用来表示用户ID号,-g选项用来表示主用户组名,-G选项用来表示可由“,”隔开的多个supplementary_group_ID,-c选项用来表示注释信息,-d选项用来表示主目录名,-s选项用来表示注册shell程序,-m选项不带参数,它用来将/etc/skel目录中的内容(如.profile文件和标准目录文件)拷入新的注册号下,login_ID是该命令必需的用户注册号。例:groupadd–g51newuseruseradd–u203–gnewuser–c“newuser”–d/user/liu–s/bin/sh–mliu如果采用缺省设置,也可以只使用如下shell命令:useraddliu分配完注册号后,也可以为用户设置口令。用来设置口令的shell命令格式如下:passwdoptionslogin_ID其中任选项options可为如下内容:-ndays表示口令的有限时间。-xdays表示口令从设置到修改的时间。例:passwd–n7–x6liu或者:passwdliu系统在提示输入和重新输入后,确认口令设置成功。修改用户属性的shell命令格式如下:usermodoptionslogin_ID其中,任选项options可以为如下内容:-ccomment表示注释信息-dpathname表示当前目录-ggroup_ID表示主用户组名-Gsupplementary_group_ID表示主用户组的增补组名-llogin表示用户注册号-m表示将/etc/skel目录中的内容拷入新的注册号下-sprogram表示注册用shell程序-uuser_ID_number表示用户ID号-edays表示口令从设置到修改的天数-fdays表示注册起作用的天数作为一个例子,我们修改注册shell程序,这时可使用如下shell命令:usermod–s/bin/cshliu修改用户组属性的shell命令格式如下:groupmodoptions其中,任选项options可为如下内容:操作系统原理实验报告4-ggroup_ID表示为用户组分配一个新的组ID号-ogroup_ID表示为用户组分配一个重复的组ID号-ngroup_name表示为用户组分配一个新名字作为一个例子,我们将newuser组名修改为test,这时可使用如下shell命令:groupmod–ntestnewuser只删除用户注册号的shell命令格式如下:userdellogin_ID实例如下:userdelliu删除用户注册号及其所在目录和文件的shell命令格式如下:userdel–rlogin_ID实例如下:userdel–rliu删除用户组的shell命令格式如下:groupdelgroup_ID实例如下:groupdelnewuser2、从新的子目录中开始工作使用mkdir命令创建新的子目录c_progs。$mkdirc_progs$使用cd命令进入到新创建的子目录中。$cdc_progs$3、输入C程序输入C程序可以用任意的文本编辑工具来完成。下面输入C程序cowpact.c。/*Removenewlines*/#includestdio.hmain(){intc,n=0,max=1;while((c=getchar())!=EOF){if(c==’\n’)n++;elsen=0;if(n=max)putchar(c);}}操作系统原理实验报告5保存到当前用户的用户目录下,一般为home/username4、编译C程序由于C语言是一种高级语言,所以输入完C程序后就要对它进行编译。cc命令可以用来编译C程序。如果在cc命令后面直接跟上文件名,则编译后的输出结果将存放在标准的a.out文件中。如果cc命令使用-o任选项,则可以将编译结果存放在自己命名的文件中。为方便起见,我们使用带-o任选项的cc命令来进行编译。(也可以使用gcc,用法相同。)$cc–ocompactcompact.c$这样,编译结果就存放在compact文件中。如果出现编译错误,则可以利用vi命令来对程序进行修改。5、执行C程序由于存放编译结果的文件本身就是可执行文件,所以可以在shell提示符下敲入该文件的名字来执行它,在有些情况下还要提供输入内容。下面给出compact的执行过程。首先创建测试文件testfile。$cattestfilethisisline1thisisline2thisisline4ctrl+d$对testfile文件使用compact。$./compacttestfilethisisline1thisisline2thisisline4$这样就从输入文件中删除了多余的空行。实验报告(1)尝试实验步骤1的每个部分。(2)在/usr目录下创建自己的目录(可以用姓名,或者学号)。(3)利用文本编辑器步骤3中的c程序,并编译和执行它。(4)完成实验目标1,绘制该程序的流程图。(5)完成实验目标2,绘制该程序的流程图。操作系统原理实验报告6操作系统原理实验报告7操作系统原理实验报告8操作系统原理实验报告9实验二、进程间的通信实验环境:实验环境一:Windows平台实验时间:6小时实验目的:初步了解windows环境下进程间通信的机制,掌握如何利用消息、共享内存和剪贴板三种进程间通信机制中的任意2种进行通信的原理,并利用win32API函数编写实例程序。实验目标:编制两个Windows窗口程序P1、P2。其中p1是前台进程,负责接收用户的输入,并通过消息机制或共享内存发送相应消息到p2。p2是后台程序,在收到消息后,根据不同的消息进行相应的操作。其中,p1发出的命令包括:1.运行某个程序:用户输入在p1中运行的程序名和参数,p1发送给p2,p2执行这个程序。2.结束某个进程:p1向p2发送获取运行子进程的请求,获取p2运行的子进程清单并显示,用户选择一个子进程发送给p2,p2终止该子进程并通知p1。背景知识:本实验需要用到的主要函数如下:1.创建进程:BOOLCreateProcess(LPCTSTRlpApplicationName,//nameofexecutablemoduleLPTSTRlpCommandLine,//commandlinestringLPSECURITY_ATTRIBUTESlpProcessAttributes,//SDLPSECURITY_ATTRIBUTESlpThreadAttributes,//SDBOOLbInheritHandles,//handleinheritanceoption操作系统原理实验报告10DWORDdwCreatio

1 / 30
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功