文档库 最新最全的文档下载
当前位置:文档库 › 操作系统实验任务书

操作系统实验任务书

操作系统实验任务书
操作系统实验任务书

《计算机操作系统》实验任务书

实验报告内容规范

实验报告内容要求如下:

课程名称、实验日期、实验名称、实验类型、班级、姓名(学号)、指导教师

一、实验目的及要求

本次实验所涉及并要求掌握的知识点。

二、实验环境

本次实验所使用的设备和软件。

三、实验内容

本次实验的具体内容。

四、实验步骤

按照实验过程列出实验步骤(涉及编程的,须首先进行算法设计,画出流程图)。

五、调试过程

详细记录实验过程中出现的问题及解决方法。

六、实验结果及分析

记录实验结果并进行分析。

七、总结

心得体会及改进意见。

实验报告上传到:http://218.195.104.170

以如下格式命名:实验序号学号姓名.doc;

如:实验一12011111张三.doc

目录

实验一命令解释程序 (1)

实验二进程调度设计 (4)

实验三页面调度算法 (5)

实验四文件管理 (1)

实验一命令解释程序

1. 目的和要求

理解命令解释程序工作原理。

2. 实验内容

利用高级语言编写一个微型命令解释程序,接收并解释执行以下命令:dir 列出当前目录

cop 文件1 文件2 拷贝文件

era 文件名删除文件

dat 显示日期

tim 显示时间

end 结束,退出

画出程序流程图,编写程序,实现上述功能。

3. 实验环境

PC兼容机/Windows、DOS系统/Turbo C 2.0

4. 核心代码提示

#include

void main()

{

int i;

char *comm="",*command="",*src="",*des="",*delf="";

...

while(1)

{

printf("*****************\n");

printf("*dir:List File *\n");

printf("*cop:Copy File *\n");

printf("*era:Delete File*\n");

printf("*dat:Date *\n");

printf("*tim:Time *\n");

printf("*end:Quit *\n");

printf("*****************\n");

printf("Please Input Command:\n");

scanf("%s",comm);

...

switch(num)

{

case 0:command="dir";break;

case 1:printf("Please Input Source File:");

scanf("%s",src);

printf("\nPlease Input Destination:");

scanf("%s",des);

...

break;

case 2:printf("Please Input Delete File:");

scanf("%s",delf);

...

break;

case 3:...;break;

case 4:...;break;

case 5:...;exit(0);

default:printf("Err Command,Input Command Again!\n"); }

if(num>=0&&num<=5)

system(command);

}

}

实验二进程调度设计

1. 目的和要求

进程调度是处理机管理的核心内容。本实验要求用C语言编写和调试一个简单的进程调度程序。通过本实验可以加深理解有关进程控制块、进程队列的概念,并体会和了解FIFO 调度算法的具体实现方法。

2. 实验内容

①设计进程控制块PCB表结构。

②编制FIFO进程调度算法.

3. 实验环境

PC /Windows系统/Visual C++6.0

4. 核心代码提示

typedef struct node

{

char name;

int status;

int precendence;

int ax,bx,cx,dx;

int pc;

int psw;

struct node *next; /*pcb define*/

}pcb;

pcb *createprocess(pcb *head)

{

}

void processfifo(pcb *head) /*use fifo */

{

}

main()

{

pcb *head;

head=NULL;

head=createprocess(head);

processfifo(head);

}

实验三页面调度算法

1. 目的和要求

通过本实验可以加深理解有关虚拟存储器的工作原理,进一步体会和了解页面替换算法的具体实现方法。

2. 实验内容

①实现三种算法:先进先出;OPT;LRU

②页面序列从指定的文本文件(TXT文件)中取出

③输出:第一行:每次淘汰的页面号,第二行:显示缺页的总次数

3. 实验环境

PC /Windows系统/Visual C++6.0

4. 核心代码提示

struct page

{

int num;

int tag;

struct page *next;

};

struct page *create(int n) /*建立分配的内存空间,并初始化,返回头结点*/ {

}

void FIFO(array,n)

{

}

void LRU(array,n)

{

}

OPT(array,n)

{

}

main()

{

printf("FIFO ");

FIFO(page,3);

printf("\nLRU ");

LRU(page,3);

printf("\nOPT ");

OPT(page,3);

}

实验四文件管理

1. 目的和要求

通过独立使用高级语言编写和调试一个简单的文件系统,达到模拟文件管理工作的目的,并进一步使学生对各种文件操作命令的实质内容和执行过程有比较深入的了解。

2. 实验内容

设计一个简单的文件系统,对文件的操作设计如下命令(使用菜单选择):

creat 建立文件

delete 删除文件

list 文件列表

bye 退出

编写程序并调试通过,运行出结果,画出流程图

3. 实验环境

PC /Windows系统/Visual C++6.0

4. 核心代码提示

struct filenode

{

char *filename;

int lenth;

struct filenode *next;

} *filehead=NULL;

list(struct filenode *fhead)

{

}

creat(char *fname)

{

}

delete(char *fname)

{

}

quit()

{

}

void main()

{

int choice;

char *newname="",*delname="";

while(1)

{

printf("\n");

printf("***********FILE SYSTEM************\n");

printf("* 1--CREAT FILE 2--DELETE FILE *\n");

printf("* 3--LIST FILE 4--QUIT *\n");

printf("***********************************\n");

printf("\n");

printf("Please Input Your Choice:");

switch(choice)

{

case 1:printf("Input New File Name:");

scanf("%s",newname);

creat(newname);

break;

case 2:printf("Input delete File Name:");

scanf("%s",delname);

delete(delname);

break;

case 3:list(filehead);break;

case 4:quit();exit(0);

}

}

}

山东大学操作系统实验报告4进程同步实验

山东大学操作系统实验报告4进程同步实验

计算机科学与技术学院实验报告 实验题目:实验四、进程同步实验学号: 日期:20120409 班级:计基地12 姓名: 实验目的: 加深对并发协作进程同步与互斥概念的理解,观察和体验并发进程同步与互斥 操作的效果,分析与研究经典进程同步与互斥问题的实际解决方案。了解 Linux 系统中 IPC 进程同步工具的用法,练习并发协作进程的同步与互斥操作的编程与调试技术。 实验内容: 抽烟者问题。假设一个系统中有三个抽烟者进程,每个抽烟者不断地卷烟并抽烟。抽烟者卷起并抽掉一颗烟需要有三种材料:烟草、纸和胶水。一个抽烟者有烟草,一个有纸,另一个有胶水。系统中还有两个供应者进程,它们无限地供应所有三种材料,但每次仅轮流提供三种材料中的两种。得到缺失的两种材料的抽烟者在卷起并抽掉一颗烟后会发信号通知供应者,让它继续提供另外的两种材料。这一过程重复进行。请用以上介绍的 IPC 同步机制编程,实现该问题要求的功能。 硬件环境: 处理器:Intel? Core?i3-2350M CPU @ 2.30GHz ×4 图形:Intel? Sandybridge Mobile x86/MMX/SSE2 内存:4G 操作系统:32位 磁盘:20.1 GB 软件环境: ubuntu13.04 实验步骤: (1)新建定义了producer和consumer共用的IPC函数原型和变量的ipc.h文件。

(2)新建ipc.c文件,编写producer和consumer 共用的IPC的具体相应函数。 (3)新建Producer文件,首先定义producer 的一些行为,利用系统调用,建立共享内存区域,设定其长度并获取共享内存的首地址。然后设定生产者互斥与同步的信号灯,并为他们设置相应的初值。当有生产者进程在运行而其他生产者请求时,相应的信号灯就会阻止他,当共享内存区域已满时,信号等也会提示生产者不能再往共享内存中放入内容。 (4)新建Consumer文件,定义consumer的一些行为,利用系统调用来创建共享内存区域,并设定他的长度并获取共享内存的首地址。然后设定消费者互斥与同步的信号灯,并为他们设置相应的初值。当有消费进程在运行而其他消费者请求时,相应的信号灯就会阻止它,当共享内存区域已空时,信号等也会提示生产者不能再从共享内存中取出相应的内容。 运行的消费者应该与相应的生产者对应起来,只有这样运行结果才会正确。

操作系统实验报告

操作系统实验报告 ' 学号: 姓名: 指导老师: 完成日期: ~

目录 实验一 (1) 实验二 (2) 实验三 (7) 实验四 (10) 实验五 (15) 实验六 (18) 实验七 (22) \

实验一 UNIX/LINUX入门 一、实验目的 了解 UNIX/LINUX 运行环境,熟悉UNIX/LINUX 的常用基本命令,熟悉和掌握UNIX/LINUX 下c 语言程序的编写、编译、调试和运行方法。 二、实验内容 熟悉 UNIX/LINUX 的常用基本命令如ls、who、pwd、ps 等。 练习 UNIX/LINUX的文本行编辑器vi 的使用方法 熟悉 UNIX/LINUX 下c 语言编译器cc/gcc 的使用方法。用vi 编写一个简单的显示“Hello,World!”c 语言程序,用gcc 编译并观察编译后的结果,然后运行它。 三、实验要求 按照要求编写程序,放在相应的目录中,编译成功后执行,并按照要求分析执行结果,并写出实验报告。 四、实验程序 #include <> #include <> int main() { printf ("Hello World!\n"); return 0; } 五、实验感想 通过第一次室验,我了解 UNIX/LINUX 运行环境,熟悉了UNIX/LINUX 的常用基本命令,熟悉和掌握了UNIX/LINUX 下c 语言程序的编写、编译、调试和运行方法。

实验二进程管理 一、实验目的 加深对进程概念的理解,明确进程与程序的区别;进一步认识并发执行的实质。 二、实验内容 (1)进程创建 编写一段程序,使用系统调用fork()创建两个子进程。当此程序运行时,在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示“a“;子进程分别显示字符”b“和字符“c”。试观察记录屏幕上的显示结果,并分析原因。 (2)进程控制 修改已编写的程序,将每一个进程输出一个字符改为每一个进程输出一句话,再观察程序执行时屏幕上出现的现象,并分析原因。 (3)进程的管道通信 编写程序实现进程的管道通信。使用系统调用pipe()建立一个管道,二个子进程P1 和P2 分别向管道各写一句话: Child 1 is sending a message! Child 2 is sending a message! 父进程从管道中读出二个来自子进程的信息并显示(要求先接收P1,再接收P2)。 三、实验要求 按照要求编写程序,放在相应的目录中,编译成功后执行,并按照要求分析执行结果,并写出实验报告。 四、实验设计 1、功能设计 (1)进程创建 使用fork()创建两个子进程,父进程等待两个子进程执行完再运行。 (2)进程控制 使用fork()创建两个子进程,父进程等待两个子进程分别输出一句话再运行。 (3)进程的管道通信 先创建子进程1,向管道写入一句话,子进程1结束后创建子进程2,向管道写入一句话,最后父进程从管道中读出。 2、数据结构 子进程和管道。 3、程序框图

综合实验试验指导书(一)

综合实验实验指导书 福建工程学院土木工程学院 2013年12月

学生实验守则 1、实验前应认真按教师布置进行预习,明确实验目的、要求,掌握实验内容、方法和步骤。 2、实验前的准备工作,经指导教师或实验技术人员检查,合格后方可进行实验。实验过程中认真观察各种现象,记录实验数据,不能马虎的抄袭。实验完毕必须整理好本组实验仪器,并经指导教师或实验技术人员验收后,方可离开。实验后,认真分析实验结果,正确处理数据,细心制作图表,做好实验报告。不符合要求者,应重做。 3、实验室内必须保持安静,不准高声喧哗打闹,不准抽烟,随地吐痰,乱抛纸屑杂物,不准做与实验无关的事。不准穿背心、裤衩、拖鞋(除规定须换专业拖鞋外)或赤脚进入实验室。 4、必须严格遵守实验制订的各项规章制度,认真执行操作规程。注意人身和设备安全。 5、爱护国家财物。节约水电和药品器材,不得动用他组的仪器、工具材料。凡损坏仪器、工具者应检查原因,填写报损单,并依照管理办法赔偿损失。 前言

为了达到预期目的,试验课必须注意以下几方面问题: 1、试验前认真预习指导书和课本有关内容,同时应复习其它已学有关课程的有关章节,充分了解各个试验的目的要求、试验原理、方法和步骤,并进行一些必要的理论计算。一些控制值的计算工作,试验前必须做好。 2、较大的小组试验,应选出一名小组长,负责组织和指挥整个试验过程,直至全组试验报告都上交后卸任,小组各成员必须服从小组长和指导教师的指挥,要明确分工,协调工作,不得擅离各自的岗位。 3、试验开始前。必须仔细检查试件和各种仪器仪表是否安装稳妥,荷载是否为零,安全措施是否有效,各项准备工作是否完成,要经指导教师检查通过后,试验才能开始。 4、试验时应严肃认真,密切注意观察试验现象,及时加以分析和记录,要以严谨的科学态度对待试验的每一步骤和每一个数据。 5、严格遵守实验室的规章制度,非试验用仪器设备不要乱动;试验用仪器、仪表、设备,要严格按规程进行操作,遇有问题及时向指导教师报告。 6、试验中要小心谨慎,不要碰撞仪器、仪表、试件和仪表架等。 7、试验结束后,要及时卸下荷载,使仪器、设备恢复原始状态,以后小心卸下仪器、仪表,擦净、放妥、清点归还,经教师认可并把试验记录交教师签字后离开。 8、试验资料应及时整理,按时独立完成试验报告,除小组分工由别人记录的原始数据外,严禁抄袭。 9、试验报告要求原始记录齐全、计算分析正确、数据图表清楚。 10、经教师认可,试验也允许采用另外方案进行。 试验一量测仪器的参观与操作练习

综合实验(2)任务书

计算机基础综合实验(2)任务书 一、综合实验目的 C语言程序设计是本科工科类各专业的重要基础课,主要学习程序设计的基本概念和方法,通过本门课程学习,使学生掌握C语言的基本原理,熟练掌握程序设计的基础知识、基本概念;掌握程序设计的思想和编程技巧。 综合实验是在学生已经具备了使用C语言编写简单的应用程序的能力,为使学生对C语言有更全面的理解,进一步提高运用C语言编程解决实际问题的能力,通过提出算法、指定输入输出来设计一个解决方案。并为参加计算机等级考试做准备。 二、综合实验的基本内容和要求 参加综合实验的学生,应当认真完成综合实验的全部内容。最终提交综合实验成果来证明其独立完成各种实际任务的能力。从而反映出理解和运用本课程知识的水平和能力。具体如下: 1、代码编写规范,形成良好的编程习惯; 2、程序须有一定的健壮性和必要的提示信息,考虑问题的多种可能和边界数据。 3、提交综合实验报告电子稿、装订的打印稿。综合实验报告内容包括以下几个方面: ●程序的总体设计和算法分析。 ●程序流程图、函数说明 ●源程序代码清单 ●测试数据和测试过程记录 ●遇到的问题及解决方法分析 ●综合实验小结 4. 程序运行方式 构建一个简易菜单,形如: 用户通过输入数值选择所需运行的子程序,当一个子程序运行结束后回到菜单界面,直至用户输入0后退出程序。 三、综合实验的进度安排 熟悉指针、结构体、文件内容1天 整体设计和详细设计、编代码1天 编代码、调试和测试1天 综合实验报告书写1天 演示软件1天 四、综合实验的考核 评价是检测学生理解问题和解决问题能力的一个重要手段,教师将根据学生提交的综合实验报告,严格检查以下各项任务完成情况:

操作系统实验4

实验四进程通信(二消息通信) 一、实验目的 熟悉管道通信,了解管道内数据的读取与写入过程; 学会创建管道、使用管道,实现父子进程间的通信; 熟悉各种管道通信时使用的函数; 熟悉共享内存的概念; 学会使用函数创建共享内存段,熟悉操纵共享内存的四个系统调用; 熟悉Linux下进程通信中的消息通信机制; 学会使用系统调用msgget(),msgsnd(),msgrev()及msgctl()编制一定长度的消息的发送和接收程序。 二、实验内容 任务: (1)每个同学登陆两个窗口,先在一个窗口中运行程序1(或者只登陆一个窗口,先在该窗口中以后台方式运行程序1),用ipcs命令查看系统中消息队列的情况,然后在另一个窗口中运行程序2,观察程序的运行结果并分析。运行结束后可以用ctrl+c结束程序1的运行,再次用ipcs命令观察系统中消息队列的情况。 (2)使用系统调用msgget(),msgsnd(),msgrev()及msgctl()编制一长度为1K的消息的发送和接收程序。 ①为了便于操作和观察结果,用一个程序作为“引子”,先后fork()两个子进程,SERVER和CLIENT,进行通信。 ②SERVER端建立一个Key为学号末3位的消息队列,等待其他进程发来的消息。当遇到类型为1的消息,则作为结束信号,取消该队列,并退出SERVER。SERVER 每接收到一个消息后显示一句“(server)received”。 ③CLIENT端使用key为学号末3位的消息队列,先后发送类型从10到1的消息,然后退出。最后的一个消息,即是SERVER端需要的结束信号。CLIENT每发送一条消息后显示一句“(client)sent”。 ④父进程在SERVER和CLIENT均退出后结束。 三、代码及运行结果分析 (1)每个同学登陆两个窗口,先在一个窗口中运行程序1(或者只登陆一个窗口,先在该窗口中以后台方式运行程序1),用ipcs命令查看系统中消息队列的情况,然后在另一个窗口中运行程序2,观察程序的运行结果并分析。运行结束后可以用ctrl+c结束程序1的运行,再次用ipcs命令观察系统中消息队列的情况。

操作系统实验报告4

《操作系统》实验报告 实验序号: 4 实验项目名称:进程控制

Printf(“child Complete”); CloseHandle(pi.hProcess); CloseHandle(pi hThread); ﹜ 修改后: #include #include int main(VOID) { STARTUPINFO si; PROCESS_INFORMA TION pi; ZeroMemory(&si,sizeof(si)); si.cb=sizeof(si); ZeroMemory(&pi,sizeof(pi)); if(!CreateProcess(NULL, "c:\\WINDOWS\\system32\\mspaint.exe", NULL, NULL, FALSE, 0, NULL, NULL, &si,&pi)) { fprintf(stderr,"Creat Process Failed"); return -1; } WaitForSingleObject(pi.hProcess,INFINITE); printf("child Complete"); CloseHandle(pi.hProcess); CloseHandle(pi.hThread); } 在“命令提示符”窗口运行CL命令产生可执行程序4-1.exe:C:\ >CL 4-1.cpp

实验任务:写出程序的运行结果。 4.正在运行的进程 (2)、编程二下面给出了一个使用进程和操作系统版本信息应用程序(文件名为4-5.cpp)。它利用进程信息查询的API函数GetProcessVersion()与GetVersionEx()的共同作用。确定运行进程的操作系统版本号。阅读该程序并完成实验任务。 #include #include

操作系统实验报告

操作系统实验报告 集团企业公司编码:(LL3698-KKI1269-TM2483-LUI12689-ITT289-

实验二进程调度1.目的和要求 通过这次实验,理解进程调度的过程,进一步掌握进程状态的转变、进程调度的策略,进一步体会多道程序并发执行的特点,并分析具体的调度算法的特点,掌握对系统性能的评价方法。 2.实验内容 阅读教材《计算机操作系统》第二章和第三章,掌握进程管理及调度相关概念和原理。 编写程序模拟实现进程的轮转法调度过程,模拟程序只对PCB进行相应的调度模拟操作,不需要实际程序。假设初始状态为:有n个进程处于就绪状态,有m个进程处于阻塞状态。采用轮转法进程调度算法进行调度(调度过程中,假设处于执行状态的进程不会阻塞),且每过t个时间片系统释放资源,唤醒处于阻塞队列队首的进程。 程序要求如下: 1)输出系统中进程的调度次序; 2)计算CPU利用率。 3.实验环境 Windows操作系统、VC++6.0 C语言 4设计思想: (1)程序中进程可用PCB表示,其类型描述如下:

structPCB_type { intpid;//进程名 intstate;//进程状态 2——表示“执行”状态 1——表示“就绪”状态 0——表示“阻塞”状态 intcpu_time;//运行需要的CPU时间(需运行的时间片个数) } 用PCB来模拟进程; (2)设置两个队列,将处于“就绪”状态的进程PCB挂在队列ready中;将处于“阻塞”状态的进程PCB挂在队列blocked中。队列类型描述如下: structQueueNode{ structPCB_typePCB; StructQueueNode*next; } 并设全程量: structQueueNode*ready_head=NULL,//ready队列队首指针 *ready_tail=NULL,//ready队列队尾指 针

《局域网原理与技术》综合实验任务书

《局域网原理与技术》综合实验任务书 1.设计内容与设计要求 1.1设计内容 1.1.1 中小型企业网的组建 本设计模拟一家中小企业网络的需求,通过对网络架构组建方案的设计、基于安全的网络配置方案设计、服务器架设方案设计、企业网络高级服务设计等方面的仿真研究,详尽的探讨了对该网络进行规划设计时遇到的关键性问题,以及网络相关的服务。该设计主要包括: (1)技术选择及原理 (2)拓扑结构设计 (3)IP 地址规划方案设计及设备配置 (4)服务器架设 (5)网络安全设计设计实施与测试方案 (6)设计实施与测试方案 企业具体应用需求见附件,针对中小企业网络拓扑进行设计和分析,可以选择通过Cisco Packet Tracer 软件进行网络仿真配置和安全设计 1.2设计要求 1.2.1网络实训报告规范 (1)实训报告内容 ①需求分析: 从功能需求,性能需求,运行环境需求,可靠性需求,安全需求等方面进行分析。 ②网络规划 包括网络结构分析,网络架构设计,网络设备选用,IP地址规划,安全规划,网络拓扑图等。 ③网络实施 包括配置的思路,设计的原理及应用,具体的网络配置命令等。 ④调试分析

包括测试目标,测试数据,测试过程,测试结果等。 ⑤心得体会 ⑥参考文献 ⑦评分表 ⑧附件 包括所有的配置命令 (2)书写格式 ①课程设计报告装订顺序:封面、任务书、目录、正文、评分、附件(A4 大小的图纸及程序清单)。 ②正文的格式:一级标题用3号黑体,二级标题用四号宋体加粗, 三级标题 用小四号宋体加粗,正文用小四号宋体;行距为22。 ③正文总字数要求在5000字以上(不含配置命令)。 1.2.2考核方式 指导老师负责验收程序的运行结果,并结合学生的工作态度、实际动手能力、创新精神和设计报告等进行综合考评,并按优秀、良好、中等、及格和不及格五个等级给出每位同学的课程设计成绩。具体考核标准包含以下几个部分: (1)平时出勤(占10%) (2)原理阐述,拓扑结构,交换设备配置合理与否(占10%) (3)实验结果是否正确(占40%) (4)设计报告(占30%) 注意:不得抄袭他人的报告(或给他人抄袭),一旦发现,成绩为零分。(5)独立完成情况(占10%)。 1.2.3 课程验收要求 (1)运行所设计的系统。 (2)回答有关问题。 (3)提交课程设计报告。

操作系统实验报告

操作系统教程 实 验 指 导 书 姓名: 学号: 班级:软124班 指导老师:郭玉华 2014年12月10日

实验一WINDOWS进程初识 1、实验目的 (1)学会使用VC编写基本的Win32 Consol Application(控制台应用程序)。 (2)掌握WINDOWS API的使用方法。 (3)编写测试程序,理解用户态运行和核心态运行。 2、实验内容和步骤 (1)编写基本的Win32 Consol Application 步骤1:登录进入Windows,启动VC++ 6.0。 步骤2:在“FILE”菜单中单击“NEW”子菜单,在“projects”选项卡中选择“Win32 Consol Application”,然后在“Project name”处输入工程名,在“Location”处输入工程目录。创建一个新的控制台应用程序工程。 步骤3:在“FILE”菜单中单击“NEW”子菜单,在“Files”选项卡中选择“C++ Source File”, 然后在“File”处输入C/C++源程序的文件名。 步骤4:将清单1-1所示的程序清单复制到新创建的C/C++源程序中。编译成可执行文件。 步骤5:在“开始”菜单中单击“程序”-“附件”-“命令提示符”命令,进入Windows“命令提示符”窗口,然后进入工程目录中的debug子目录,执行编译好的可执行程序: E:\课程\os课\os实验\程序\os11\debug>hello.exe 运行结果 (如果运行不成功,则可能的原因是什么?) : 有可能是因为DOS下路径的问题 (2)计算进程在核心态运行和用户态运行的时间 步骤1:按照(1)中的步骤创建一个新的“Win32 Consol Application”工程,然后将清单1-2中的程序拷贝过来,编译成可执行文件。 步骤2:在创建一个新的“Win32 Consol Application”工程,程序的参考程序如清单1-3所示,编译成可执行文件并执行。 步骤3:在“命令提示符”窗口中运行步骤1中生成的可执行文件,测试步骤2中可执行文件在核心态运行和用户态运行的时间。 E:\课程\os课\os实验\程序\os12\debug>time TEST.exe 步骤4:运行结果 (如果运行不成功,则可能的原因是什么?) : 因为程序是个死循环程序 步骤5:分别屏蔽While循环中的两个for循环,或调整两个for循环的次数,写出运行结果。 屏蔽i循环: 屏蔽j循环: _______________________________________________________________________________调整循环变量i的循环次数:

综合性、设计性实验指导书(范本)

设计性实验指导书 实验名称:冷冻鱼糜及鱼糜制品的生产 实验项目性质:本实验是食品科学与工程专业水产品加工方向的学生在学习了《水产食品加工学》这门课程之后,将其课堂上学习的水产品加工理论知识应用到生产实践的一个设计性试验。该实验是由学生自己设计鱼糜制品(鱼丸)的配方和生产工艺。通过实验可以实现以学生自我训练为主的教学模式,使学生更好地掌握实验原理、操作方法、步骤,全面了解掌握鱼糜制品弹性形成的机理、掌握鱼糜制品制造的技术原理、掌握影响鱼糜制品弹性的因素。培养学生思考问题、分析问题和解决问题的能力,提高学生的创新思维和实际动手能力,提高学生驾驭知识的能力,培养学生事实求是的科学态度,百折不挠的工作作风,相互协作的团队精神,勇于开拓的创新意识。通过开展这项工作,将有利于学校培养社会所需要的高素质、创新型人才。 所属课程名称:水产食品加工学 计划学时:10 一、实验目的 1、掌握冷冻鱼糜的生产原理和工艺技术;抗冻剂防治鱼肉蛋白质冷冻变性的作用;鱼肉蛋白质变性的特征变化。 2、掌握鱼糜制品弹性形成的机理及其影响弹性的因素。 3、掌握鱼糜制品制造的生产技术。 4、掌握鱼糜凝胶化和凝胶劣化的性质。 5、学习鱼糜制品弹性感观检验方法。 二、设计指标 设计的鱼糜制品(鱼丸)主要考虑如下质量指标: 1、鱼丸的凝胶强度 2、鱼丸的风味 3、鱼丸的香气 4、鱼丸的产品成数 5、鱼丸的白度 6、鱼丸的水分 三、实验要求(设计要求) 1、要求学生首先查资料,搞清楚不同鱼种在制作冷冻鱼糜时形成凝胶的特性,熟悉冷冻鱼糜的制作工艺过程,了解其相关的机械设备。 2、学生自己设计鱼糜制品(鱼丸)的配方和生产工艺。按5人为一实验小组,学生自己拆装、调试设备。各实验小组自己根据鱼糜制品制造的技术原理、影响鱼糜制品弹性的因素,各组自己制定鱼丸生产工艺,产品配方,用各实验小

《 Windows7 操作系统》实验报告

实验(一) Windows 7基本操作 一、实验目的 1.掌握文件和文件夹基本操作。 2.掌握“资源管理器”和“计算机”基本操作。 二、实验要求 1.请将操作结果用Alt+Print Screen组合键截图粘贴在题目之后。 2.实验完成后,请将实验报告保存并提交。 三、实验内容 1.文件或文件夹的管理(提示:此题自行操作一遍即可,无需抓图)★期末机试必考题★ (1) 在D:盘根目录上创建一个名为“上机实验”的文件夹,在“上机实验”文件夹中创建1个名为“操作系统上机实验”的空白文件夹和2个分别名为“2.xlsx”和“3.pptx”的空白文件,在“操作系统上机实验”文件夹中创建一个名为“1.docx”的空白文件。 (2) 将“1.docx”改名为“介绍信.docx”;将“上机实验”改名为“作业”。 (3) 在“作业”文件夹中分别尝试选择一个文件、同时选择两个文件、一次同时选择所有文件和文件夹。 (4) 将“介绍信.docx”复制到C:盘根目录。 (5) 将D:盘根目录中的“作业”文件夹移动到C:盘根目录。 (6) 将“作业”文件夹中的“2.xlsx”文件删除放入“回收站”。 (7) 还原被删除的“2.xlsx”文件到原位置。 2.搜索文件或文件夹,要求如下: 查找C盘上所有以大写字母“A”开头,文件大小在10KB以上的文本文件。(提示:搜索时,可以使用“?”和“*”。“?”表示任意一个字符,“*”表示任意多个字符。)

3. 在桌面上为C:盘根目录下的“作业”文件夹创建一个桌面快捷方式。★期末机试必考题★ 3.“计算机”或“资源管理器”的使用 (1) 在“资源管理器”窗口,设置以详细信息方式显示C:\WINDOWS中所有文件和文件夹,使所有图标按类型排列显示,并不显示文件扩展名。(提示:三步操作全部做完后,将窗口中显示的最终设置结果抓一张图片即可) (2) 将C:盘根目录中“介绍信.docx”的文件属性设置为“只读”和“隐藏”,并设置在窗口中显示“隐藏属性”的文件或文件夹。(提示:请将“文件夹”对话框中选项设置效果与C:盘根目录中该文件图标呈现的半透明显示效果截取在一整张桌面图片中即可) 4.回收站的设置 设置删除文件后,不将其移入回收站中,而是直接彻底删除功能。

操作系统实验报告

《操作系统原理》实验报告 实验项目名称:模拟使用银行家算法判断系统的状态 一、实验目的 银行家算法是操作系统中避免死锁的算法,本实验通过对银行家算法的模拟,加强对操作系统中死锁的认识,以及如何寻找到一个安全序列解除死锁。 二、实验环境 1、硬件:笔记本。 2、软件:Windows 7 , Eclipse。 三、实验内容 1.把输入资源初始化,形成资源分配表; 2.设计银行家算法,输入一个进程的资源请求,按银行家算法步骤进行检查; 3.设计安全性算法,检查某时刻系统是否安全; 4.设计显示函数,显示资源分配表,安全分配序列。 四、数据处理与实验结果 1.资源分配表由进程数组,Max,Allocation,Need,Available 5个数组组成; 实验采用数据为下表: 2.系统总体结构,即菜单选项,如下图

实验的流程图。如下图 3.实验过程及结果如下图所示

1.首先输入进程数和资源类型及各进程的最大需求量 2.输入各进程的占有量及目前系统的可用资源数量 3.初始化后,系统资源的需求和分配表 4.判断线程是否安全

5.对线程进行死锁判断 五、实验过程分析 在实验过程中,遇到了不少问题,比如算法无法回滚操作,程序一旦执行,必须直接运行到单个任务结束为止,即使产生了错误,也必须等到该项任务结束才可以去选择别的操作。但总之,实验还是完满的完成了。 六、实验总结 通过实验使我对以前所学过的基础知识加以巩固,也对操作系统中抽象理论知识加以理解,例如使用Java语言来实现银行家算法,在这个过程中更进一步了解了银行家算法,通过清晰字符界面能进行操作。不过不足之处就是界面略显简洁,对于一个没有操作过计算机的人来说,用起来可能还是有些难懂。所以,以后会对界面以及功能进行完善,做到人人都可以看懂的算法。

课程方案(综合实验)任务书格式

电子专业《EDA 》课程设计 目的与要求 1. 正文为宋体,五号字 1. i ------- 任务书 行间距为21 主要内容 三、进度计划 四、设计 < 实验)成果要求 1.正文为宋体,五号字 1. 1 -------- 行间距为21 五、考核方式 1.正文为宋体,五号字 行间距为21 1 . 1 ------ 注:根据课程设计、综合实验的内容将标题任选其一。 1.正文为宋体,五号字 1. 1 ------ 行间距为21

学生姓名: 指导教师: 年月曰 题目一电子琴乐器演奏电路设计(学号1-14> 一、实验前准备 本实验例子使用独立扩展下载板EP1K10_30_50_100QC208(芯片为EP1K100QC208〉。EDAPRO/240H实验仪主板的VCCINT跳线器右跳设定为3.3V ;EDAPRO/240H实验仪主板的VCCIO跳线器组中 “ VCCIO3.3V ”应短接,其余VCCIO均断开;独立扩展下载板 “ EP1K10_30_50_100QC208 ”的VCCINT 跳线器组设定为2.5V ;独立扩展下载板 “ EP1K10_30_50_100QC208 ”的VCCIO跳线器组设定为3.3V。请参考前面第二章中关于“电源模块”的说明。 二、实验目的 学习并掌握应用电子琴乐器演奏电路设计原理、分析和测试方法。 三、实验原理 乐曲演奏电路实现原理概括起来有二个要素:一是产生音符发音的频率,二是频率值的时间控制。具体原理分析如下: 1、音符的频率是通过一个数控分频器来获得,其数控分频器的时钟输入端输入一个较 高的频率12MHz,通过ORGAN模块的ORGAN_OUT输出,由于数控分频得到的信号脉宽较窄,为了有利于驱动扬声器,需另加一个D触发器以均衡其占空比,这时的频率输出 为原来的二分之一。音乐频率的输出将决定每一音符的音调,其预置值与输入的音乐代码有——对应关系。如:MUSIC_CODE为2时对应的音乐频率输出值为912。 2、音符的持续时间须跟乐曲的速度和每个音符的节拍数来确定。MUSIC_FREQ模块 功能首先是为SPEAKER模块提供决定所发音符的分频预置数,而此数在SPEAKER模块 输入口停留的时间即为音符的节拍值。在MUSIC_FREQ模块中提供四组乐曲简谱码,并 且含有对应的分频预置数查表电路。 四、实验内容 用VHDL构成一个音符频率产生模块;用VHDL设计一个发声模块;最后写出顶层文件。 五、实验要求 1、使用VHDL语言实现上述模块 2、编译、下载、验证。 题目二、动态显示8位二进制乘法器的实现<15-28) 一、实验前准备 本实验例子使用独立扩展下载板EP1K10_30_50_100QC208(芯片为EP1K100QC208〉。EDAPRO/240H实验仪主板的VCCINT跳线器右跳设定为3.3V ;EDAPRO/240H实验仪主板的VCCIO跳线器组中 “ VCCIO3.3V ”应短接,其余VCCIO均断开;独立扩展下载板 “ EP1K10_30_50_100QC208 ”的VCCINT 跳线器组设定为2.5V ;独立扩展下载板 “ EP1K10_30_50_100QC208 ”的VCCIO跳线器组设定为3.3V。请参考前面第二章中关于“电源模块”的说明。 二、实验目的 学习并掌握应用8位二进制乘法器的原理、设计、分析和测试方法

计算机操作系统实验四

实验三进程与线程 问题: 进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位,具有动态性、并发性、独立性、异步性和交互性。然而程序是静态的,并且进程与程序的组成不同,进程=程序+数据+PCB,进程的存在是暂时的,程序的存在是永久的;一个程序可以对应多个进程,一个进程可以包含多个程序。当操作系统引入线程的概念后,进程是操作系统独立分配资源的单位,线程成为系统调度的单位,与同一个进程中的其他线程共享程序空间。 本次实验主要的目的是: (1)理解进程的独立空间; (2)加深对进程概念的理解,明确进程和程序的区别; (3)进一步认识并发执行的实质; (4)了解红帽子(Linux)系统中进程通信的基本原理。 (5)理解线程的相关概念。 要求: 1、请查阅资料,掌握进程的概念,同时掌握进程创建和构造的相关知识和线程创建和 构造的相关知识,了解C语言程序编写的相关知识; (1)进程: 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。程序是指令、数据及其组织形式的描述,进程是程序的实体。进程的概念主要有两点:第一,进程是一个实体。每一个进程都有它自己的地址空间,一般情况下,包括文本区域(text region)、数据区域(data region)和堆栈(stack region)。文本区域存储处理器执行的代码;数据区域存储变量和进程执行期间使用的动态分配的内

存;堆栈区域存储着活动过程调用的指令和本地变量。第二,进程是一个“执行中的程序”。程序是一个没有生命的实体,只有处理器赋予程序生命时(操作系统执行之),它才能成为一个活动的实体,我们称其为进程。 (2)进程的创建和构造: 进程简单来说就是在操作系统中运行的程序,它是操作系统资源管理的最小单位。但是进程是一个动态的实体,它是程序的一次执行过程。进程和程序的区别在于:进程是动态的,程序是静态的,进程是运行中的程序,而程序是一些保存在硬盘上的可执行代码。新的进程通过克隆旧的程序(当前进程)而建立。fork() 和clone()(对于线程)系统调用可用来建立新的进程。 (3)线程的创建和构造: 线程也称做轻量级进程。就像进程一样,线程在程序中是独立的、并发的执行路径,每个线程有它自己的堆栈、自己的程序计数器和自己的局部变量。但是,与独立的进程相比,进程中的线程之间的独立程度要小。它们共享内存、文件句柄和其他每个进程应有的状态。 线程的出现也并不是为了取代进程,而是对进程的功能作了扩展。进程可以支持多个线程,它们看似同时执行,但相互之间并不同步。一个进程中的多个线程共享相同的内存地址空间,这就意味着它们可以访问相同的变量和对象,而且它们从同一堆中分配对象。尽管这让线程之间共享信息变得更容易,但你必须小心,确保它们不会妨碍同一进程里的其他线程。 线程与进程相似,是一段完成某个特定功能的代码,是程序中单个顺序的流控制,但与进程不同的是,同类的多个线程是共享同一块内存空间和一组系统资源的,而线程本身的数据通常只有微处理器的寄存器数据,以及一个供程序执行时使用的堆栈。所以系统在产生一个线程,或者在各个线程之间切换时,负担要比进程小得多,正因如此,线程也被称为轻型进程(light-weight process)。一个进程中可以包含多个线程。 2、理解进程的独立空间的实验内容及步骤

操作系统实验报告

操作系统教程实验报告 专业班级 学号 姓名 指导教师

实验一WINDOWS进程初识 1、实验目的 (1)学会使用VC编写基本的Win32 Consol Application(控制台应用程序)。 (2)掌握WINDOWS API的使用方法。 (3)编写测试程序,理解用户态运行和核心态运行。 2、实验内容和步骤 (1)编写基本的Win32 Consol Application 步骤1:登录进入Windows,启动VC++ 6.0。 步骤2:在“FILE”菜单中单击“NEW”子菜单,在“projects”选项卡中选择“Win32 Consol Application”,然后在“Project name”处输入工程名,在“Location”处输入工程目录。创建一个新的控制台应用程序工程。 步骤3:在“FILE”菜单中单击“NEW”子菜单,在“Files”选项卡中选择“C++ Source File”, 然后在“File”处输入C/C++源程序的文件名。 步骤4:将清单1-1所示的程序清单复制到新创建的C/C++源程序中。编译成可执行文件。 步骤5:在“开始”菜单中单击“程序”-“附件”-“命令提示符”命令,进入Windows “命令提示符”窗口,然后进入工程目录中的debug子目录,执行编译好的可执行程序:E:\课程\os课\os实验\程序\os11\debug>hello.exe 运行结果 (如果运行不成功,则可能的原因是什么?) : (2)计算进程在核心态运行和用户态运行的时间 步骤1:按照(1)中的步骤创建一个新的“Win32 Consol Application”工程,然后将清单1-2中的程序拷贝过来,编译成可执行文件。 步骤2:在创建一个新的“Win32 Consol Application”工程,程序的参考程序如清单1-3所示,编译成可执行文件并执行。 步骤3:在“命令提示符”窗口中运行步骤1中生成的可执行文件,测试步骤2中可执行文件在核心态运行和用户态运行的时间。 E:\课程\os课\os实验\程序\os12\debug>time TEST.exe 步骤4:运行结果 (如果运行不成功,则可能的原因是什么?) : 步骤5:分别屏蔽While循环中的两个for循环,或调整两个for循环的次数,写出运行结果。 屏蔽i循环:

综合实验II——混凝土的质量检测实验技术实验任务书

合肥学院建筑工程系 综合实验II 混凝土的质量检测实验技术实验报告 姓名 学号 专业 班级 组别 时间

第一部分实验任务与指导 一、基本要求 建筑结构试验的特点是理论面广、信息量大、实践性强。为了顺利完成试验,应认真做好以下各项工作: 1、学生在试验前应认真预习指导书和课本有关内容,同时应复习其它相关知识,充分了解试验的目的、要求、试验原理、方法和步骤,并进行一些必要的理论计算。一些控制值的计算工作,试验前必须做好。 2、每小组选出一名小组长,负责组织和指挥整个试验过程,直至全组试验报告都上交后卸任,小组各成员必须服从小组长和指导教师的指挥,要明确分工,协调工作,不得擅离各自的岗位。 3、根据试验计划,向实验室申请要使用的仪器、仪表和设备。进场试验时,应严格遵守实验室的规章制度,不要乱动非试验用仪器设备,严格按规程操作仪器,遇有问题应及时向指导教师报告。 4、试验开始前,必须仔细检查试件和各种仪器仪表是否安装稳妥,安全措施是否有效,各项准备工作是否完成。经指导教师检查通过后,试验才能开始。 5、试验时,应严肃认真,密切注意观察试验现象,及时加以分析和记录,要以严谨的科学态度对待试验的每一步骤和每一个数据。 6、试验中要小心谨慎,注意人身和设备安全,不要碰撞仪器、仪表、试件和仪表架等。 7、试验结束后,要及时卸荷,使仪器、设备恢复原始状态,清点归还,经指导教师认可并把试验记录交指导教师签字后方可离开。 8、试验资料应及时整理,按时独立完成试验报告,严禁抄袭,除小组分工由别人记录的原始数据外,不得雷同。 9、试验报告要求原始记录齐全、计算分析正确、数据图表清楚。 二、试验准备工作 2.1试验安排 试验进度见附表。 2.2 仪器设备标定 为了确定仪器设备的灵敏度和精确度、确定试验数据的误差,应该在试验前对仪器设备进行标定。仪器标定可按两种情况进行,一是对仪器进行单件标定,二是对仪器系统进行系统标定。单件标定可以确定某一件仪器的灵敏度和精确度,系统标定可以确定某些仪器组成的系统的灵敏度和精确度。标定可由实验室工作人员完成,但要向学生作简要介绍。 2.3 混凝土质量检测实验 2.3.1回弹法检测混凝土强度实验 国家标准《混凝土结构设计规范》(GB50010-2002)规定:混凝土强度等级应按立方体抗压强度标准确定;立方体抗压强度标准值系指按标准方法制作养护的边长为150mm的立方体试件,在28d龄期用标准试验方法测得的具有95%保证率的抗压强度。因此立方体抗压强度标准值是《混凝土结构设计规范》中混凝土各种力学指标的基本代表值,根据混凝土强度等级,可以查阅《混凝土结构设计规范》确定混凝土的轴心抗压、轴心抗拉强度标准值和设计值以及混凝土的弹性模量等。 国家标准《普通混凝土力学性能试验方法》(GB/T 50081-2002)规定:以边长为150mm的立方体为 ℃的温度和相对湿度90%以上的潮湿空气中养护28d,按照标准标准试件,将标准立方体试件在203 试验方法测得的抗压强度作为混凝土的立方体抗压强度,单位为N/mm2。

操作系统实验四

青岛理工大学课程实验报告

算法描述及实验步骤 功能:共享存储区的附接。从逻辑上将一个共享存储区附接到进程的虚拟地址空间上。用于建立调用进程与由标识符shmid指定的共享内存对象之间的连接。 系统调用格式:virtaddr=shmat(shmid,addr,flag) 该函数使用头文件如下: #include #include #include (8)shmdt( ) 功能:用于断开调用进程与共享内存对象之间的连接,成功时返回0,失败返回-1。 系统调用格式: int shmdt(shmaddr) char *shmaddr;/*采用shmat函数的返回值*/ (9)shmctl( ) 功能:共享存储区的控制,对其状态信息进行读取和修改。用于对已创建的共享内存对象进行查询、设置、删除等操作。 系统调用格式:shmctl(shmid,cmd,buf) 该函数使用头文件如下: #include #include #include 2、步骤: (1)定义进程变量(2)定义两个字符数组 (3)创建管道(4)如果进程创建不成功,则空循环(5)如果子进程创建成功,pid为进程号(6)锁定管道 (7)给Outpipe赋值(8)向管道写入数据 (9)等待读进程读出数据(10)解除管道的锁定 (11)结束进程等待子进程结束(12)从管道中读出数据 (13)显示读出的数据(14)父进程结束 创建jincheng.c 插入文字

调 试 过 程 及 实 验 结 果 运行: 运行后: 总 结 (对实验结果进行分析,问题回答,实验心得体会及改进意见) 虽然对pipe()、msgget()、msgsnd()、msgrcv()、msgctl()、shmget()、shmat()、 shmdt()、shmctl()的功能和实现过程有所了解,但是运用还是不熟练,过去没 见过,所以运行了一个简单的程序。 利用管道机制、消息缓冲队列、共享存储区机制进行进程间的通信,加深了对 其了解。 (1)管道通信机制,同步的实现过程:当写进程把一定数量的数据写入pipe, 便去睡眠等待,直到读进程取走数据后,再把它唤醒。当读进程读一空pipe 时,也应睡眠等待,直到写进程将数据写入管道后,才将之唤醒,从而实现进 程的同步。 管道通信的特点:A管道是半双工的,数据只能向一个方向流动;需要双方通 信时,需要建立起两个管道;B. 只能用于父子进程或者兄弟进程之间(具有亲 缘关系的进程);C.单独构成一种独立的文件系统:管道对于管道两端的进程而

linux操作系统实验报告.

LINUX操作系统实验报告 姓名 班级学号 指导教师 2011 年05月16 日 实验一在LINUX下获取帮助、Shell实用功能 实验目的: 1、掌握字符界面下关机及重启的命令。 2、掌握LINUX下获取帮助信息的命令:man、help。 3、掌握LINUX中Shell的实用功能,命令行自动补全,命令历史记录,命令的排列、替

换与别名,管道及输入输出重定向。 实验内容: 1、使用shutdown命令设定在30分钟之后关闭计算机。 2、使用命令“cat /etc/cron.daliy”设置为别名named,然后再取消别名。 3、使用echo命令和输出重定向创建文本文件/root/nn,内容是hello,然后再使用追加重定向输入内容为word。 4、使用管道方式分页显示/var目录下的内容。 5、使用cat显示文件/etc/passwd和/etc/shadow,只有正确显示第一个文件时才显示第二个文件。 实验步骤及结果: 1.用shutdown命令安全关闭系统,先开机在图形界面中右击鼠标选中新建终端选项中输入 命令Shutdown -h 30 2、使用命令alias将/etc/cron.daliy文件设置为别名named,左边是要设置的名称右边是要更改的文件。查看目录下的内容,只要在终端输入命令即可。取消更改的名称用命令unalias 命令:在命令后输入要取消的名称,再输入名称。 3.输入命令将文件内容HELLO重定向创建文本文件/root/nn,然后用然后再使用追加重定向输入内容为word。步骤与输入内容HELLO一样,然后用命令显示文件的全部内容。 4.使用命令ls /etc显示/etc目录下的内容,命令是分页显示。“|”是管道符号,它可以将多个命令输出信息当作某个命令的输入。

相关文档