当前位置:文档之家› 东北大学自动化控制系统计算机辅助设计实验模板

东北大学自动化控制系统计算机辅助设计实验模板

东北大学自动化控制系统计算机辅助设计实验模板
东北大学自动化控制系统计算机辅助设计实验模板

东北大学自动化控制系统计算机辅助

设计实验

word编辑

11

控制系统计算机辅助设计

第一部分

1

function dx=lorenzeq(t,x)

dx=[-x(2)-x(3);

x(1)+0.2*x(2);

0.2+(x(1)-5.7)*x(3);]

>> x0=[0;0;0];

>> [t,y]=ode45('lorenzeq',[0,100],x0);

>> plot(t,y)

>> figure;plot3(y(:,1),y(:,2),y(:,3)),grid,

2

function [y,yeq]=f2a(x)

yeq=[];

y=4*x(1)^2+x(2)^2-4;

>> Aeq=[];Beq=[];A=[];B=[];

>> xm=[0;0]; xM=[];x0=[0;0];

>> f1=inline('x(1)^2-2*x(1)+x(2)');

>> [x,f]=fmincon(f1,x0,A,B,Aeq,Beq,xm,xM,'f2a');x',f ans =

1.0000 0

f =

-1

3

( a)

> >s=tf('s');G=(s^3+4*s+2)/s^3/(s^2+2)/[(s^2+1)^3+2*s+5]

Transfer function:

s^3 + 4 s + 2

------------------------------------------------------

s^11 + 5 s^9 + 9 s^7 + 2 s^6 + 12 s^5 + 4 s^4 + 12 s^3 ( b)

>> z=tf('z',0.1);

>> H=(z^2+0.568)/(z-1)/(z^2-0.2*z+0.99)

Transfer function:

z^2 + 0.568

-----------------------------

z^3 - 1.2 z^2 + 1.19 z - 0.99

Sampling time: 0.1

4

>> A=[0 1 0;0 0 1;-5 -4 -13];

>> B=[0;0;2];

>> C=[1 0 0;0 0 0;0 0 0];

>> D=[0];

>> G=ss(A,B,C,D);

>> G

a =

x1 x2 x3

x1 0 1 0

东北大学操作系统第一次实验报告

实验1:熟悉Linux系统 一、题目:熟悉Linux系统 二、目的: 熟悉与掌握Linux系统基本命令,熟悉Linux编程环境,为以后的实验打下基础。 1、启动、退出、ls(显示目录内容)、cp(文件或目录的复制)、mv(文件、目录更名或移动)、rm(删除文件或目录)、mkdir(创建目录)、rmdir(删除空目录)、cd(改变工作目录)… 2、C语言编辑、编译 三、内容及要求: 1、熟练掌握Linux基本文件命令; 2、掌握Linux编辑程序、对源代码进行编译、连接、运行及调试的过程; 3、认真做好预习,书写预习报告; 4、实验完成后要认真总结、完成实验报告。 四、内容及要求: 在Linux环境下编制、调试源程序的实际过程(每一步的具体说明)。 实验2:进程状态 一、题目:进程状态 二、目的: 自行编制模拟程序,通过形象化的状态显示,使学生理解进程的概念、进程之间的状态转换及其所带来的PCB内容、组织的变化,理解进程与其PCB间的一一对应关系。 三、内容及要求 1、设计并实现一个模拟进程状态转换及其相应PCB组织结构变化的程序; 2、独立设计、编写、调试程序; 3、程序界面应能反映出在模拟条件下,进程之间状态转换及其对应的PCB组织的变化。 4、进程的状态模型(三状态、五状态、七状态或其它)可自行选择, 5、代码书写要规范,要适当地加入注释; 6、鼓励在实验中加入新的观点或想法,并加以实现;

7、认真进行预习,完成预习报告; 8、实验完成后,要认真总结,完成实验报告。 四、程序流程图 图4、1 进程转换流程五、使用的数据结构及其说明 struct PCB //进程控制块PCB { char name; //名字标识 string state; //状态 int time; //执行时间 }; typedef struct PCB ElemType; struct QNode { ElemType data; struct QNode *next; }; //链式队列结点 typedef struct QNode QNode; //结点 typedef struct QNode *PNode;

东北大学秦皇岛分校操作系统课设报告

东北大学秦皇岛分校计算机与通信工程学院 计算机操作系统课程设计 设计题目:进程管理器 专业名称计算机科学与技术 班级学号xxxx 学生姓名xxxx 指导教师xxxxx 设计时间2014-12-29~2015-1-15

课程设计任务书 专业:计算机科学与技术学号:学生姓名(签名):设计题目 1、高优先权调度算法的模拟 2、进程管理器的模拟实现 二、主要内容 1、目的: 编程模拟实现进程管理器,加深对进程、程序概念掌握. 2、进程管理器 主界面如下: (1)源代码: <1> Form1.cs using System; using System.Collections.Generic; using https://www.doczj.com/doc/6511615362.html,ponentModel; using System.Data; using System.Drawing;

using System.Text; using System.Windows.Forms; using System.Management; using System.Diagnostics; namespace WindowsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); this.listProcesses.MultiSelect = false; this.listProcesses.View = View.Details; this.listProcesses.Columns.Add("pname",(int)CreateGraphics().MeasureString( "aaaaaaaaaaaaaaaaaaaaaa",Font).Width); this.listProcesses.Columns.Add("pID", (int)CreateGraphics().MeasureString( "000000000000", Font).Width); this.listProcesses.Columns.Add("username", (int)CreateGraphics().MeasureString( "aaaaaaaaaaaaaaaaaaaaa", Font).Width); this.listProcesses.Columns.Add("priority", (int)CreateGraphics().MeasureString( "aaaaaaaaa", Font).Width); this.listProcesses.Columns.Add("Memory usage", (int)CreateGraphics().MeasureString( "000000000000000",Font).Width); } private void Form1_Load(object sender, EventArgs e) { RefreshList(); } private void RefreshList() { Process[] processes; processes = Process.GetProcesses(); this.listProcesses.Items.Clear(); foreach (Process instance in processes) { ListViewItem lvi = new ListViewItem(instance.ProcessName); lvi.SubItems.Add(FormatProcessID(instance.Id)); lvi.SubItems.Add(GetProcessUserName(instance.Id)); lvi.SubItems.Add(instance.BasePriority.ToString());

2011东北大学大学物理期末考题及答案

东北大学大学物理期末 一、 填空题 1. 已知两分振动的振动方程分别为:t x ωcos 1= 和 )2 cos( 32π ω+=t x , (其中 x 的单位为m ,t 的单位为s ),则合振动的振幅为A = ____2___m 。 2. 在驻波中,设波长为λ,则相邻波节和波腹之间的距离为_____ 4 λ ____ 。 3.火车A 行驶的速率为20m/s ,火车A 汽笛发出的声波频率为640Hz ;迎面开来另一列 行驶速率为25m/s 的火车B ,则火车B 的司机听到火车A 汽笛声的频率为 730 Hz . (空气中的声速为: 340m/s) 4.在空气中,用波长为λ= 500 nm 的单色光垂直入射一平面透射光栅上,第二级缺级 光栅常数 d =2.3×10 -3 mm ,则在观察屏上出现的全部主极大条纹条数为__5 _条。 5.光的偏振现象说明光波是____横波______。 6.一体积为V 的容器内储有氧气(视为理想气体,氧气分子视为刚性分子),其压强为P ,温度为T ,已知玻耳兹曼常数为k 、普适气体常数(摩尔气体常数)为R , 则此氧气系统的分子数密度为__ kT p ___ 、此氧气系统的内能为___pV 2 5 ____。 7.处于平衡态A 的理想气体系统,若经准静态等容过程变到平衡态B ,将从外界吸热416 J ; 若经准静态等压过程变到与平衡态B 有相同温度的平衡态C 时,将从外界吸热582 J , 则从平衡态A 变到平衡态C 的准静态等压过程中,系统对外界所作的功为 166 J 。 8.不考虑相对论效应,电子从静止开始通过电势差为U=300V 的静电场加速后, 其德布罗意波长为___0.07__nm 。 (电子静止质量:kg 101.931 -?=e m ;电子电量:C 10 6.119 -?=e ; 普朗克常量:s J 10 63.634 ??=-h ) 9.描述微观粒子运动的波函数ψ(r , t )须满足的条件是 单值 、连续、有限、归一。

东北大学DIP实验一

实验一 一、插值和采样 1 (a)读入图像head.jpg并显示。 >> A=imread('C:\Documents and Settings\Administrator\桌面\head.jpg'); imshow(A) (b)计算图像维度。 >> size(A) ans = 256 256 (c)此图像大小为40cm*40cm,计算图像的采样距离。 x=40cm/256=0.15625cm=1.5625mm 同理,y=1.5625mm (d)逻辑坐标(图像坐标)为(22, 54)、(126, 241)的点,其空间坐标是多少? 逻辑坐标(图像坐标)为(22, 54)的点,空间坐标为

(22*1.5625mm,54*1.5625mm)=(34.375mm,84.375mm); 同理,逻辑坐标(图像坐标)为(126, 241)的点,空间坐标为(196.875mm,376.05625mm)。 (e)求空间坐标为(14.2188, 5.3125)、(21.4063,34.5313)处的像素值。>>b=40/256; b = 0.1563 >> x3=(14.2188/b)-1 x3 = 90.0003 >> y3=(5.3125/b)-1 y3 = 33 >> x4=floor(x3) x4 = 90 >> x5=ceil(x3) x5 = 91 >> C1=A([x4],[y3]) C1 = 115 >> C2=A([x5],[y3]) C2 = 108 >> C3=0.9997*C1+0.0003*C2 C3 = 115 >> x6=(21.4063/b)-1

(完整版)东北大学单色仪定标实验详细过程

首先是实验报告中的记录表格,那本书上并没有给出完整表格,只给了一个表头,我们画表格的时候则要画至少19行(推荐20行乃至21行会更好些),老师在检查完实验报告后说许多人的表格画的不合格,大都是因为行数画少了。 其次就是实验前预习,老师讲解的时候真的会提问的,不过没有扣分就是了。问的问题大致是六个,分别是: 1.单色仪的结构原理 2.单色仪定标的原理 3.单色仪定标的意义 4.如何识别谱图 5.单色仪鼓轮读数怎么读 6.显微镜的使用方法 前3个问题在书中都能找到,后三个问题稍后我会说明,这6个问题也就是整个实验的核心内容,弄懂了这6个问题整个实验操作就不会犯太大的错误。 进教室并将书包放好之后,老师会将实验报告收上来,然后让我们看一段幻灯片(自动播放的),同时她在那检查实验报告,幻灯片的内容就是上述的6个问题的答案,所以万一课前没来得及预习,将幻灯片里的内容记下来也可以。幻灯片结束之后就是老师讲解了,这里我们略过,直接看实验过程吧。

注:单色仪的两狭缝宽度千万不要调! 光谱、读数显微镜与单色仪

透镜和汞灯

以上就是我们实验时用到的仪器。

首先打开汞灯,刚开始不要急着观察,汞灯需要点亮一段时间才能达到最大亮度。 接着是调整单色仪鼓轮的位置 注意:单色仪的鼓轮是配有一个反射镜的(让我拿下去了),单色仪鼓轮上主尺的读数是左大右小(老师可能会问到),和读数显微镜的主尺标示不一样,如上图所示。 而在实验时我们观察单色仪鼓轮读数是通过反射镜来观察,如下图:

从反射镜中看主尺读数就是左小右大了,如此时的读数应为18.311mm左右(主尺上一个格1mm,测微鼓轮一个格0.01mm)。

东北大学C++实验报告6

东北大学C++实验报告6 -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

实验六 1.实验要求 (1)定义Point类,有坐标_x,_y两个成员变量;对Point类重载“++”(自增)、“――”(自减)运算符,实现对坐标值的改变。 (2)定义一个车(vehiele)基类,有Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop等成员函数。观察虚函数的作用。 2. 实验内容及实验步骤 (1) 编写程序定义Point类,在类中定义整型的私有成员变量_x_y,定义成员函数Point& operator++();Point operator++(int);以实现对Point类重载“++”(自增)运算符,定义成员函数Point&operator--();Point operator--(int);以实现对Point类重载“--”(自减)运算符,实现对坐标值的改变。程序名:1ab8_1.cpp。 (2) 编写程序定义一个车(vehicle)基类,有Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop等成员函数。在main()函数中定义vehicle、bicycle、motorcar、motorcycle的对象,调用其Run()、Stop()函数,观察其执行情况。再分别用vehicle类型的指针来调用这几个对象的成员函数,看看能否成功;把Run、Stop定义为虚函数,再试试看。程序名:lab8_2.cpp。 3. 源程序 Lab8_1 #include using namespace std; class Point{ public: Point(int X,int Y): _x(X),_y(Y){} Point operator++(); Point operator++(int); Point operator--(); Point operator--(int); void Putout() const; private:

2016年东北大学实验室安全考试 96分

1、[判断题]火灾对实验室构成的威胁最为严重,最为直接。应加强对火灾三要素(易燃物、助燃物、点火源)的控制。(分值1.0) 你的答案:正确 2、[判断题]同位素试剂是非密封型放射源。(分值1.0) 你的答案:正确 3、[判断题]内照射指放射性物质呼吸道吸入、消化道进入、皮肤伤口渗入等途径进入体内,造成 放出的射线及化学毒性对人体器官的双重损伤。(分值1.0) 你的答案:正确 4、[判断题]Ⅴ类放射源为极低危险源。不会对人造成永久性损伤。(分值1.0) 你的答案:正确 5、[判断题]辐射事故分为特别重大辐射事故、重大辐射事故、较大辐射事故和一般辐射事故四个 等级。(分值1.0) 你的答案:正确 6、[判断题]离开放射性实验室前必须洗手。(分值1.0) 你的答案:正确 7、[判断题]万用表电阻档可测量绝缘电阻。(分值1.0) 你的答案:错误 8、[判断题]50毫安的工频电流就可以使人遭到致命电击。(分值1.0) 你的答案:正确 9、[判断题]在进行电子线路板焊接后的剪脚工序时,剪脚面应背离身体特别是脸部,防止被剪下 引脚弹伤。(分值1.0) 你的答案:正确 10、[判断题]漏电保护器对两相触电(人体双手触及两相电源),不起保护作用。(分值1.0)你的答案:正确 11、[判断题]打开含有高压变压器或电容器的电子仪器的盖子是危险的。(分值1.0) 你的答案:正确 12、[判断题]声级计可放置在高温、潮湿、有污染的地方。(分值1.0) 你的答案:错误 13、[判断题]大型设备运行不需要两名以上工作人员在场。(分值1.0) 你的答案:错误 14、[判断题]高速设备和精密设备应在管理人员指导下使用。(分值1.0) 你的答案:正确 15、[判断题]消防队在扑救火灾时,有权根据灭火的需要,拆除或者破损临近火灾现场的建筑。(分值1.0)

东北大学操作系统实验三报告

操作系统实验报告班级物联网1302班 学号 姓名

实验 3 进程同步和通信-生产者和消费者问题模拟 1. 目的: 调试、修改、运行模拟程序,通过形象化的状态显示,使学生理解进程的概念,了解同步和通信的过程,掌握进程通信和同步的机制,特别是利用缓冲区进行同步和通信的过程。通过补充新功能,使学生能灵活运用相关知识,培养创新能力。 2. 内容及要求: 1) 调试、运行模拟程序。 2) 发现并修改程序中不完善的地方。 3) 修改程序,使用随机数控制创建生产者和消费者的过程。 4) 在原来程序的基础上,加入缓冲区的写互斥控制功能,模拟多个进程存取一个公共缓冲区,当有进程正在写缓冲区时,其他要访问该缓冲区的进程必须等待,当有进程正在读取缓冲区时,其他要求读取的进程可以访问,而要求写的进程应该等待。 5) 完成1) 、2) 、3)功能的,得基本分,完成4)功能的加2 分,有其它功能改进的再加2 分3. 程序说明: 本程序是模拟两个进程,生产者(producer)和消费者(Consumer)工作。生产者每次产生一个数据,送入缓冲区中。消费者每次从缓冲区中取走一个数据。缓冲区可以容纳8 个数据。因为缓冲区是有限的,因此当其满了时生产者进程应该等待,而空时,消费者进程应该等待;当生产者向缓冲区放入了一个数据,应唤醒正在等待的消费者进程,同样,当消费者取走一个数据后,应唤醒正在等待的生产者进程。就是生产者和消费者之间的同步。 每次写入和读出数据时,都将读和写指针加一。当读写指针同样时,又一起退回起点。当写指针指向最后时,生产者就等待。当读指针为零时,再次要读取的消费者也应该等待。 为简单起见,每次产生的数据为0-99 的整数,从0 开始,顺序递增。两个进程的调度是通过运行者使用键盘来实现的。 4. 程序使用的数据结构 进程控制块:包括进程名,进程状态和执行次数。缓冲区:一个整数数组。 缓冲区说明块:包括类型,读指针,写指针,读等待指针和写等待指针。 5. 程序使用说明 启动程序后,如果使用0键则运行一次生产者进程,使用'c'键则运行一次消费者进程。通过屏幕可以观察到两个进程的状态和缓冲区变化的情况。 6. 实验流程图 源程序 #include

东北大学图像处理实验报告

计算机图像处理实验报告 哈哈哈哈哈哈实验台31 1.应用MATLAB语言编写显示一幅灰度图像、二值图像、索引图像及 彩色图像的程序,并进行相互之间的转换 1)彩色图像转换为灰度图像、索引图像、二值图像 A=imread('F:\colorful.jpg'); subplot(221);imshow(A);title('彩色图像'); I1=rgb2gray(A); subplot(222);imshow(I1);title('灰度图像'); [X1,map]=rgb2ind(A,256); subplot(223);imshow(X1);title('索引图像'); BW=im2bw(A); subplot(224);imshow(BW);title('二值图像'); 彩色图像灰度图像 索引图像二值图像

2)灰度图像转换为索引图像、二值图像 clear A=imread('F:\colorful.jpg'); B=rgb2gray(A); subplot(131);imshow(B);title('灰度图像'); [X2,map]=gray2ind(B,128); subplot(132);imshow(X2);title('索引图像'); BW2=im2bw(B); subplot(133);imshow(BW2);title('二值图像'); 灰度图像索引图像二值图像 3)索引图像转为灰度图像、二值图像、彩色图像 clear A=imread('F:\colorful.jpg'); [X,map]=rgb2ind(A,256); subplot(221);imshow(X);title('索引图像'); I3=ind2gray(X,map); subplot(222);imshow(I3);title('灰度图像'); BW3=im2bw(X,map,0.5); subplot(223);imshow(BW3);title('二值图像'); RGB=ind2rgb(X,map); subplot(24);imshow(RGB);title('还原彩色图像'); 索引图像灰度图像 二值图像还原彩色图像

东北大学操作系统第一次实验报告

实验1:熟悉Linux系统 一、题目:熟悉Linux系统 二、目的: 熟悉和掌握Linux系统基本命令,熟悉Linux编程环境,为以后的实验打下基础。 1、启动、退出、ls(显示目录内容)、cp(文件或目录的复制)、mv(文件、目录更名或移动)、rm(删除文件或目录)、mkdir(创建目录)、rmdir(删除空目录)、cd(改变工作目录)… 2、C语言编辑、编译 三、内容及要求: 1、熟练掌握Linux基本文件命令; 2、掌握Linux编辑程序、对源代码进行编译、连接、运行及调试的过程; 3、认真做好预习,书写预习报告; 4、实验完成后要认真总结、完成实验报告。 四、内容及要求: 在Linux环境下编制、调试源程序的实际过程(每一步的具体说明)。 实验2:进程状态 一、题目:进程状态

二、目的: 自行编制模拟程序,通过形象化的状态显示,使学生理解进程的概念、进程之间的状态转换及其所带来的PCB内容、组织的变化,理解进程与其PCB间的一一对应关系。 三、内容及要求 1、设计并实现一个模拟进程状态转换及其相应PCB组织结构变化的程序; 2、独立设计、编写、调试程序; 3、程序界面应能反映出在模拟条件下,进程之间状态转换及其对应的PCB 组织的变化。 4、进程的状态模型(三状态、五状态、七状态或其它)可自行选择, 5、代码书写要规范,要适当地加入注释; 6、鼓励在实验中加入新的观点或想法,并加以实现; 7、认真进行预习,完成预习报告; 8、实验完成后,要认真总结,完成实验报告。 四、程序流程图

图4.1 进程转换流程五、使用的数据结构及其说明 struct PCB //进程控制块PCB { char name; //名字标识 string state; //状态 int time; //执行时间 }; typedefstruct PCB ElemType; structQNode { ElemType data; structQNode *next; }; //链式队列结点 typedefstructQNodeQNode; //结点 typedefstructQNode *PNode; typedefstruct { PNodefrnt; PNode rear;

东北大学汇编实验

(附录二) 汇编语言程序设计 实验报告

实验1 数据传送指令 1、实验目的:了解和掌握 MOV、PUSH、POP、XCHG四条指令的作用和在编程中的用法。 2、实验要求: (Ⅰ)采用立即数寻址方式将19E0H,3F56H,0AF37H,9A81H 分别送给EAX、EBX、ECX、EDX四个寄存器。 记录:操作前 EAX= 750A3388 、 EBX= 7EFDE000 、 ECX= 00000000 、 EDX= 01361005 操作后 EAX= 000019E0 、 EBX= 00003F56 、 ECX= 0000AF37 、 EDX= 00009A81 操作过程中所用到的指令: INCLUDE Irvine32.inc .code main PROC call DumpRegs mov eax,19E0H mov ebx,eax mov ecx,ebx mov edx,ecx call DumpRegs

exit main ENDP END main (Ⅱ)采用采用寄存器寻址方式将19E0H送给EBX、ECX、EDX 三个寄存器。 记录:操作前 EAX= 750A3388 、 EBX= 7EFDE000 、 ECX= 000000000 、 EDX= 013C1005 操作后 EAX= 000019E0 、 EBX= 000019E0 、 ECX= 000019E0 、 EDX= 000019E0 操作过程中所用到的指令: INCLUDE Irvine32.inc .code main PROC call DumpRegs mov eax,19E0H mov ebx,eax mov ecx,ebx

东北大学大学物理2011

一、 填空题 1. 已知两分振动的振动方程分别为:t x ωcos 1= 和 )2 cos(32π ω+ = t x , (其中 x 的单位为m ,t 的单位为s ),则合振动的振幅为A = ______m 。 2. 在驻波中,设波长为λ,则相邻波节和波腹之间的距离为_______ 。 3.火车A 行驶的速率为20m/s ,火车A 汽笛发出的声波频率为640Hz ;迎面开来另一列 行驶速率为25m/s 的火车B ,则火车B 的司机听到火车A 汽笛声的频率为 Hz . (空气中的声速为: 340m/s) 4.在空气中,用波长为λ= 500 nm 的单色光垂直入射一平面透射光栅上,第二级缺级 光栅常数 d =2.3×10 -3 mm ,则在观察屏上出现的全部主极大条纹条数为__ _条。 5.光的偏振现象说明光波是____ ______。 6.一体积为V 的容器内储有氧气(视为理想气体,氧气分子视为刚性分子),其压强为P ,温度为T ,已知玻耳兹曼常数为k 、普适气体常数(摩尔气体常数)为R , 则此氧气系统的分子数密度为_____ 、此氧气系统的内能为_______。 7.处于平衡态A 的理想气体系统,若经准静态等容过程变到平衡态B ,将从外界吸热416 J ; 若经准静态等压过程变到与平衡态B 有相同温度的平衡态C 时,将从外界吸热582 J , 则从平衡态A 变到平衡态C 的准静态等压过程中,系统对外界所作的功为 J 。 8.不考虑相对论效应,电子从静止开始通过电势差为U=300V 的静电场加速后, 其德布罗意波长为_____nm 。 (电子静止质量:kg 101.931 -?=e m ;电子电量:C 10 6.119 -?=e ; 普朗克常量:s J 10 63.634 ??=-h ) 9.描述微观粒子运动的波函数ψ(r , t )须满足的条件是 、连续、有限、归一。 二、 选择题

东北大学c++实验报告

实验六 1?实验要求 (1)定义Point类,有坐标_x, _y两个成员变量;对Point类重载牛+ ”(自增)、“一-(自减)运算符,实现对坐标值的改变。 (2)定义一个车(vehiele)基类,有Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop等成员函数。观察虚函数的作用。 2.实验容及实验步骤 (1)编写程序定义Point类,在类中定义整型的私有成员变量_x_y,定义成员函数Point& operato叶+() ; Point operato叶+(int);以实现对Point 类重载++ ”(自增)运算符,定义成员函数Point& operator ------------------------------ ();Point operator -------- (int);以实现对Point类重载(自减)运算符,实现对坐标值的改变。程序名:1ab8_1. cpp。 ⑵编写程序定义一个车(vehicle)基类,有Run、Stop等成员函数,由此派 生出自行车(bicycle)类、汽车(motorcar)类,从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop等成员函数。在main()函数中定义vehicle、bicycle、motorcar、motorcycle 的对象,调用其Run()、Stop()函数,观察其执行情况。再分别用vehicle类型的指针来调用这几个对象的成员函数,看看能否成功;把Run、Stop定义为虚函数,再试试看。程序名:lab8_2. cpp。 3.源程序 Lab8 1 #in clude using n amespace std;

操作系统实验三(题目四)实验报告_李旦兰_20083308

操作系统实验三 实验报告 姓名李旦兰学号20083308 班级软件0802 指导教师那俊 实验名称存储管理 开设学期2010 – 2011第一学期 评定成绩 评定人签字 评定日期 东北大学软件学院2010年11月

实验三_B 一.实验题目 用高级语言编写和调试一个简单的文件系统,模拟文件管理的工作过程。(题目四)二.实验目的 (1)进一步认识虚拟存储器的工作原理; (2)进一步认识文件系统的内部功能以及内部实现; (3)深入理解操作系统中文件系统的理论知识,加深对教材中的重要算法的理解; (4)掌握操作系统的原理及实现方法,提高综合运用各专业课知识的能力。 三.实验内容以及要求 (1)设计一个支持n个用户的简单二级文件系统,每个用户可保存m个文件,用户在一次运行中只能打开一个文件; (2)采用二级或二级以上的多级文件目录管理; (3)对文件应设置存取控制保护方式,如“只能执行”、“允许读”、“允许写等”;(4)系统的外部特征应接近于真实系统,可设置下述文件操作命令:Login 用户登录;Dir 列出文件目录; Create 建立文件;Delete 删除文件; Read 读文件;Write 写文件;Open 打开文件; Close 关闭文件。 (5)通过键盘使用该文件系统,系统应显示操作命令的执行结果。 四.实验环境 操作系统:Windows 7 开发语言:VC++ 开发工具:Microsoft Visual C++ 2008 Express Edition 五.程序设计思想 通过阅读实验指导书,整理出实验大体的思路,确定实体以及它们之间的关系。实体关系有三张表(主文件目录,用户文件目录以及打开文件目录)、命令服务和用户构成。用户负责输入命令。命令服务实现命令检查以及调用相关模块执行相应的命令功能。 (1)主文件目录(MFD),包括用户名和文件目录指针; struct user MFD[1]={{"0",0}};//MFD(用户名文件目录指针) (2)用户文件目录(UFD),包括文件名、保护码以及文件长度; struct file UFD[10];//用户文件目录(UFD-文件名保护码文件长度) (3)打开文件目录(AFD),包括打开文件名、打开保护码以及读写指针。采用数组形式存储打开的文件,数组每个元素保存一个打开文件的信息 struct file AFD[5]={{"0",0,0,0},{"0",0,0,0},{"0",0,0,0},{"0",0,0,0},{"0",0,0,0}};//运行文件目录(AFD)——一次运行用户可以打开个文件 在此模拟文件管理系统中可以实现的操作有: (1)用户登录:login,用户通过登录从而使用系统功能; (2)创建文件:create,创建一个指定名字的新文件,即在目录中增加一项,不考虑

东北大学 操作系统实验四报告

操作系统实验报告 班级物联网1302班 学号 姓名

实验4 进程的管道通信 1. 实验目的 1)加深对进程概念的理解,明确进程和程序的区别。 2)进一步认识并发执行的实质。 3)分析进程争用资源的现象,学习解决进程互斥的方法。 4)学习解决进程同步的方法。 5)了解Linux系统中进程通信的基本原理。 进程是操作系统中最重要的概念,贯穿始终,也是学习现代操作系统的关键。通过本次实验,要求理解进程的实质和进程管理的机制。在Linux系统下实现进程从创建到终止的全过程,从中体会进程的创建过程、父进程和子进程之间的关系、进程状态的变化、进程之间的互斥、同步机制、进程调度的原理和以管道为代表的进程间的通信方式的实现。 2. 内容及要求: 这是一个设计型实验,要求自行编制程序。 使用系统调用pipe()建立一条管道,两个子进程分别向管道写一句话: Child process1 is sending a message! Child process2 is sending a message! 父进程从管道读出来自两个子进程的信息,显示在屏幕上。 要求: 1)父进程先接收子进程1发来的消息,然后再接收子进程2发来的消息。 2)实现管道的互斥使用,当一个子进程正在对管道进行写操作时,另一子进程必须等待。使用系统调用lockf(fd[1],1,0)实现对管道的加锁操作,用lockf(fd[1],0,0)解除对管道的锁定。 3)实现父子进程的同步,当子进程把数据写入管道后,便去睡眠等待;当父进程试图从一空管道中读取数据时,也应等待,直到子进程将数据写入管道后,才将其唤醒。 3.相关的系统调用 1) fork() 用于创一个子进程。 格式:int fork(); 返回值:在子进程中返回0;在父进程中返回所创建的子进程的ID值;当返回-1时,创建失败。 2) wait() 常用来控制父进程与子进程的同步。 在父进程中调用wait(),则父进程被阻塞,进入等待队列,等待子进程结束。当子进程结束时,父进程从wait()返回继续执行原来的程序。 返回值:大于0时,为子进程的ID值;等于-1时,调用失败。 3) exit() 是进程结束时最常调用的。 格式:void exit( int status); 其中,status为进程结束状态。

操作系统实验报告1

操作系统实验一 姓名: 学号: 专业:计算机科学与技术 第一步:目录和文件组织 在您的home目录下有一系列的文件,您决定到时间整理一下了.您计划生成一些新的子目录,然后根据您的计划拷贝和移动这些文件到适当的目录;另外,这些文件不是都有用的,有一些是要删除掉的。 任务: 1.以用户名root密码123456配额的在tty1上登陆。 2.在您登陆系统以后,你将进入您的home目录.你可以使用"打印工作目录"检查这一情况 $ pwd /home/root 3.使用如下每条命令检查您是否还有文件在您的home目录下: $ ls$ ls -a$ ls –al 为什么第一和第二条命令返回不同的文件数? 第三条命令返回的在您当前的home目录下最大的文件是多少?46996

您的home目录下有子目录吗?没有 4.您现在使用touch为以后的步骤建立文件。这种扩展在接下来的命令中是如何工作的,在以后的章节中进行讨论。现在,仅仅按照下面的行键入就行了(在集合与集合之间使用包括花括号{}和下划线的字符) $ touch {report,memo,graph}_{sep,oct,nov,dec}_{a,b,c}{1,2,3}

5.使用命令ls检查最后一条命令的结果,你会发现它在您的home目录下生成了108个新的空文件(您不必数)。这些文件代表了您将使用的在这个步骤中的代表的数据文件。如果没有这些文件,该试验后面的步骤就无法进行。 6.为了组织您的文件,您必须先建立一些新目录,使用mkdir在您的home 目录中直接 建立一些子目录: $ mkdir a_reports $ mkdir september october november december 再使用ls 检查您的工作。

东北大学C++实验报告6

实验六 1.实验要求 (1)定义Point类,有坐标_x,_y两个成员变量;对Point类重载“++”(自增)、“――”(自减)运算符,实现对坐标值的改变。 (2)定义一个车(vehiele)基类,有Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop等成员函数。观察虚函数的作用。 2. 实验内容及实验步骤 (1) 编写程序定义Point类,在类中定义整型的私有成员变量_x_y,定义成员函数Point& operator++();Point operator++(int);以实现对Point类重载“++”(自增)运算符,定义成员函数Point&operator--();Point operator--(int);以实现对Point类重载“--”(自减)运算符,实现对坐标值的改变。程序名:1ab8_1.cpp。 (2) 编写程序定义一个车(vehicle)基类,有Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop等成员函数。在main()函数中定义vehicle、bicycle、motorcar、motorcycle的对象,调用其Run()、Stop()函数,观察其执行情况。再分别用vehicle类型的指针来调用这几个对象的成员函数,看看能否成功;把Run、Stop定义为虚函数,再试试看。程序名:lab8_2.cpp。 3. 源程序 Lab8_1 #include using namespace std; class Point{ public: Point(int X,int Y): _x(X),_y(Y){} Point operator++(); Point operator++(int); Point operator--(); Point operator--(int); void Putout() const; private: int _x,_y; };

东北大学-操作系统实验三分析报告

东北大学-操作系统实验三报告

————————————————————————————————作者:————————————————————————————————日期:

操作系统实验报告 班级物联网1302班 学号 姓名

实验3 进程同步和通信-生产者和消费者问题模拟1. 目的: 调试、修改、运行模拟程序,通过形象化的状态显示,使学生理解进程的概念,了解同步和通信的过程,掌握进程通信和同步的机制,特别是利用缓冲区进行同步和通信的过程。通过补充新功能,使学生能灵活运用相关知识,培养创新能力。 2. 内容及要求: 1) 调试、运行模拟程序。 2) 发现并修改程序中不完善的地方。 3) 修改程序,使用随机数控制创建生产者和消费者的过程。 4) 在原来程序的基础上,加入缓冲区的写互斥控制功能,模拟多个进程存取一个公共缓冲区,当有进程正在写缓冲区时,其他要访问该缓冲区的进程必须等待,当有进程正在读取缓冲区时,其他要求读取的进程可以访问,而要求写的进程应该等待。 5) 完成1)、2)、3)功能的,得基本分,完成4)功能的加2分,有其它功能改进的再加2分 3. 程序说明: 本程序是模拟两个进程,生产者(producer)和消费者(Consumer)工作。生产者每次产生一个数据,送入缓冲区中。消费者每次从缓冲区中取走一个数据。缓冲区可以容纳8个数据。因为缓冲区是有限的,因此当其满了时生产者进程应该等待,而空时,消费者进程应该等待;当生产者向缓冲区放入了一个数据,应唤醒正在等待的消费者进程,同样,当消费者取走一个数据后,应唤醒正在等待的生产者进程。就是生产者和消费者之间的同步。 每次写入和读出数据时,都将读和写指针加一。当读写指针同样时,又一起退回起点。当写指针指向最后时,生产者就等待。当读指针为零时,再次要读取的消费者也应该等待。 为简单起见,每次产生的数据为0-99的整数,从0开始,顺序递增。两个进程的调度是通过运行者使用键盘来实现的。 4. 程序使用的数据结构 进程控制块:包括进程名,进程状态和执行次数。 缓冲区:一个整数数组。 缓冲区说明块:包括类型,读指针,写指针,读等待指针和写等待指针。 5. 程序使用说明 启动程序后,如果使用'p'键则运行一次生产者进程,使用'c'键则运行一次消费者进程。通过屏幕可以观察到两个进程的状态和缓冲区变化的情况。

东北大学数据结构实验报告

实验报告 课程名称:数据结构班级:实验成绩: 实验名称:顺序表和链表的应用学号:批阅教师签字: 实验编号:实验一:实验日期:2017-11-25 指导教师:组号:实验时间:18:30~22:30 一、实验目的 (1)掌握线性表的基本操作(插入、删除、查找)以及线性表合并等运算在顺序存储结构、链式存储结构上的实现。重点掌握链式存储结构实现的各种操作。 (2)掌握线性表的链式存储结构的应用。 二、实验容与实验步骤 (1)实验容: 实现约瑟夫环,约瑟夫环(Joseph)问题的一种描述是:编号为1、2、3……n的n个人按照顺时针方向围坐一圈,每人持有一个密码(正整数)。一开始任选一个正整数作为报数的上限值m,从第一个人开始按照顺时针的方向自1开始顺序报数,报到m时停止报数。报m的人出列,将他的密码作为新的m值,从他的顺时针方向上的下一个人开始重新从1报数,如此下去,直至所有人全部出列为止。设计一个程序求出出列顺序。 (2)抽象数据类型和设计的函数描述,说明解决设想。 首先定义一个链表,用其中的data项存储每个人的编号,用password项存储每个人所持有的密码,并且声明一个指针。之后使用CreatList_CL函数来创建一个循环链表,在其中的data和password中存入编号和密码,最后使最后一个节点的next指向L,使其能够形成循环队列。定义了函数Display来显示链表当中的容,以确定存储的数据没有错误。定义了函数Delete_L来实现约瑟夫环中依次删除的功能,依次比较,如果某个人所持的密码和m 值相等,则删除这个结点,并且输出此时该结点的编号和密码,实现出列的功能。 (3)简短明确地写出实验所采用的存储结构,并加以说明。 该实验我主要采用的是线性表的链式存储结构,首先定义了链表的结构,其中包括data 项和password项,分别存储每个人的编号和所持密码,还声明了指向下一个结点的指针,该指针可以连接各个结点,并且将最后一个结点的指针指向第一个结点使之成为一个循环链表。 三、实验环境 操作系统:Windows 7 调试软件名称:Visio Studio2017 上机地点:信息楼B405 四、实验过程与分析 (1)主要的函数或操作部的主要算法,分析这个算法的时、空复杂度,并说明设计的巧妙之处。

东北大学2013-2014 第一学期 大学物理(下)作业

一、教材:选择填空题 1~5;计算题:13,14,18 二、附加题 (一)、选择题 1、一沿x 轴作简谐振动的弹簧振子,振幅为A ,周期为T ,振动方程用余弦函数表示, 如果该振子的初相为π3 4 ,则t =0时,质点的位置在: (A )过A x 21=处,向负方向运动; (B) 过A x 21 =处,向正方向运动; (C) 过A x 21- =处,向负方向运动; (D) 过A x 2 1 -=处,向正方向运动。 2、一物体作简谐振动,振动方程为:x =A cos(ωt +π/4 ) 在t=T/4(T 为周期)时刻,物体的加速度为: (A) 222ωA -. (B) 222ωA . (C) 232ωA -. (D) 232ωA . (二)、计算题 1、一物体沿x 轴做简谐运动,振幅A = 0.12m ,周期T = 2s .当t = 0时, 物体的位移x 0= 0.06m ,且向x 轴正向运动.求: (1)此简谐运动的运动方程; (2)t = T /4时物体的位置、速度和加速度; 2、一物体沿x 轴做简谐运动,振幅A = 10.0cm ,周期T = 2.0s .当t = 0时, 物体的位移x 0= -5cm ,且向x 轴负方向运动.求: (1)简谐运动方程; (2)t = 0.5s 时,物体的位移; (3)何时物体第一次运动到x = 5cm 处? (4)再经过多少时间物体第二次运动到x = 5cm 处? 3、若简谐振动方程为m ]4/20cos[1.0ππ+=t x ,求: (1)振幅、频率、角频率、周期和初相; (2)t =2s 时的位移、速度和加速度. 4、一简谐振动的振动曲线如图所示,求振动方程. 5、一物体沿x 轴作简谐振动,振幅为0.06m ,周期为2.0s ,当t =0时位移为0.03m ,且向轴正方向运动,求: (1)t =0.5s 时,物体的位移、速度和加速度; (2)物体从m 03.0-x =处向x 轴负方向运动开始,到达平衡位置,至少需要多少时间? 题图4

相关主题
文本预览
相关文档 最新文档