青岛理工大学操作系统实验报告二

青岛理工大学操作系统实验报告二
青岛理工大学操作系统实验报告二

课程实验报告

计算机操作系统班级实验日期

学号实验成绩

实验2 Linux系统中程序编辑、编译与调试工具

实验目的及要求1、熟悉使用Linux字符界面、窗口系统的常用命令。

2、熟悉运用Linux常用的编程工具。

3、掌握在Linux操作系统环境上编辑、编译、调试、运行一个C语言程序的全过程。

操作系统:linux Unbuntu 11.10

实验工具:Vmware

实验内容

1、熟悉开机后登录Linux系统和退出系统的过程;

2、掌握一种Linux的编辑器,特别是字符界面的vi工具的使用(详见VI简易使用手栅);

3、掌握GCC编译器的基本用法(详见GCC使用手册及常用命令行);

4、掌握GDB调试程序的方法(详见GDB调试程序手册)。要求在实验报告上完整地进行一个数据结构中c程序的调试,源代码不能少于50行。

算法描述及实验步骤1、开机后登录Linux系统

2、利用Linux的编辑器,特别是字符面的vi工具的使用(详见VI简易使用手栅)

3、使用GCC编译器的基本用法,编译test.C

3、学会使用GDB调试程序的方法(详见GDB调试程序手册)。

4、

5、使用GCC编译器写一个数据结构中的链表的算法。

调试过程及实验结果

总结1、学会了使用Linux字符界面、窗口系统的常用命令。

2、掌握了运用Linux常用的编程工具。如:gcc

3、掌握在Linux操作系统环境上编辑、编译、调试、运行一个C语言程序的全过程

4、在学会了上边的要求后,又利用了C语言数据结构的链表,编写了一个

链表的算法。

附录50行的程序:

#include

#include

typedef struct pcb

{

int arrivetime;

struct pcb *next;

}pcb;

typedef struct list

{

pcb *head;

pcb *rear;

int a1;

}list;

void createlist(list *s)

{

int i;

for(i=1;i<=s->a1;i++)

{

pcb *a;

a=(pcb *)malloc(sizeof(pcb)); if(s->head==NULL)

{

s->head=s->rear=a;

scanf("%d",&(a->arrivetime));

}

else

{

s->rear->next=a;

s->rear=a;

scanf("%d",&(a->arrivetime)); }

}

}

void display(list *s)

{

int i;

pcb *p;

p=(pcb *)malloc(sizeof(pcb)); p=s->head;

for(i=1;i<=s->a1;i++)

{

printf("%d ",p->arrivetime); p=p->next;

}

}

int main()

{

list *s;

s=(list *)malloc(sizeof(list)); scanf("%d",&(s->a1)); createlist(s);

display(s);

return 0;

}

125青岛理工大学期末考试市场营销 专科 复习题及答案2

《市场营销》复习题及答案二 一、单项选择题 1、市场营销的核心是(C)。 A生产 B分配 C交换 D促销 2、从总体上看质量改进方案通常会增加企业的(B)。 A成本B盈利 C无形资产 D以上答案都不对 3、(C)是指企业利用多种信息载体与目标市场进行沟通的传播活动包括广告、人员推销、营业推广与公共关系等等。 A产品 B定价 C促销 D分销 4、消费者的购买单位是个人或(B)。 A集体 B家庭 C社会 D单位 5、服务是一方向另一方提供的基本上是(B)并且不导致任何所有权的产生。 A有形产品 B无形的任何活动或利益 C物质产品 D实体产品 6、按照不同的职能非营利组织可分为(D)。 A履行国家职能的非营利组织 B促进群体交流的非营利组织 C提供社会服务的非营利组 织 D AB和C 7、在产品生命周期的投入期消费品的促销目标主要是宣传介绍产品刺激购买欲望的产生因而主要应采用(A)促销方式。 A广告 B人员推销 C价格折扣 D营业推广 8、(C)差异的存在是市场细分的客观依据。 A产品 B价格 C需求偏好 D细分 9、企业要通过攻击竞争者而大幅度的扩大市场占有率应攻击(D)。 A近竞争者B“坏”竞争者 C弱竞争者 D强竞争者 10、威胁水平高而机会水平低的业务是(D)。 A理想业务 B冒险业务 C成熟业务 D困难业务 11、为鼓励顾客购买更多物品企业给那些大量购买产品的顾客的一种减价称为(B)。 A功能折扣 B数量折扣 C季节折扣 D现金折扣 12、向最终消费者直接销售产品和服务用于个人及非商业性用途的活动属于(A)。 A零售 B批发 C代理 D直销 二、多项选择题 1、市场营销理论在中国的传播和发展大致有以下几个阶段__ ABDE _______。

操作系统实验报告一

重庆大学 学生实验报告 实验课程名称操作系统原理 开课实验室DS1501 学院软件学院年级2013专业班软件工程2 班学生姓名胡其友学号20131802 开课时间2015至2016学年第一学期 总成绩 教师签名洪明坚 软件学院制

《操作系统原理》实验报告 开课实验室:年月日学院软件学院年级、专业、班2013级软件工 程2班 姓名胡其友成绩 课程名称操作系统原理 实验项目 名称 指导教师洪明坚 教师 评语教师签名:洪明坚年月日 1.实验目的: ?进入实验环境 –双击expenv/setvars.bat ?检出(checkout)EPOS的源代码 –svn checkout https://www.360docs.net/doc/6b3985908.html,/svn/epos ?编译及运行 –cd epos/app –make run ?清除所有的临时文件 –make clean ?调试 –make debug ?在“Bochs Enhanced Debugger”中,输入“quit”退出调试 –调试指令,请看附录A 2.实验内容: ?编写系统调用“time_t time(time_t *loc)” –功能描述 ?返回从格林尼治时间1970年1月1日午夜起所经过的秒数。如果指针loc 非NULL,则返回值也被填到loc所指向的内存位置 –数据类型time_t其实就是long ?typedef long time_t; 3.实验步骤: ?Kernel space –K1、在machdep.c中,编写系统调用的实现函数“time_t sys_time()”,计算用户秒数。需要用到 ?变量g_startup_time,它记录了EPOS启动时,距离格林尼治时间1970年1午夜的秒数 ?变量g_timer_ticks

青岛理工大学2018下学期期末考试产业经济学复习题二与答案

产业经济学复习题二与答案 一、名词解释(每题4分,共20分) 1.配第-克拉克定律 2.市场进入障碍 3.产业组织政策 4.策略性进入壁垒 5.市场绩效 二、单项选择(每题1分,共20分) 1.以下说法正确的是( ) A. 产业包括生产领域的活动 B. 产业包括流通领域的活动 C. 产业包括服务及文化教育领域的活动 D. 以上说法都正确 2.产业组织理论的核心问题是( ) A. 马歇尔冲突 B. 交易费用 C. 霍夫曼比例 D. 配第-克拉克定理 3.下面哪些不是利用非信息性广告传递产品质量信息的事例?( ) A. 李华手机在其西祠手机版里直接标示出其产品价格。 B. 有实力的商店花大价钱装修其店堂和门面。 C. 有军事实力的国家进行公开的军事演习。 D. TCL手机请金喜善担任其形象代言人。 4.产业经济中通常用( )衡量厂商的市场势力 A. 市场份额 B. 厂商规模 C. 价格成本差 D. 产品价格 5.下面哪个因素不是进入壁垒的来源( ) A. 规模经济性 B. 产品差别化 C. 短期平均成本 D. 在位企业的绝对成本优势 6.构成进入壁垒的非结构性因素是( ) A. 规模经济 B. 必要资本量 C. 企业的产品扩散策略 D. 政府管制 7.产业组织是指( ) A.同一产业内企业间的组织或市场关系 B.产业中同类企业的总和 C.企业与企业之间的经济关系 D.市场主体间的市场活动的集合 8.HHI指数的优势在于( )

A.必须收集到该市场上所有企业的市场份额信息 B. 计算量不大 C.HHI对规模最大的前几个企业的市场份额变化反映特别敏感 D.便于收集资料 9.掠夺性定价的特征有( ) A.定价一般长期性的 B.所有企业都可以采用此战略 C. 价格一般定在低于平均利润之下 D.对市场结构产生有利的影响 10.产业经济学研究的领域是( ) A.国民经济总量 B.企业 C.家庭 D.产业 11.把产业分为主导、先导产业的关联分类法是( ) A.技术关联方式分类法 B.战略关联分类法 C.原料关联分类法 D.方向关联分类法 12.中国封建时期最重要的产业政策是( ) A.农本思想 B.工商业思想 C.水利基础设施建设思想 D.农工商思想 13.霍夫曼比例是指( ) A.消费品工业净产值与资本品工业净产值的比例 B.供给与需求的比例 C.轻工业品净产值与重工业品净产值的比例 D.以上都对。 14.SCP 理论指的是( ) A. 市场结构—市场主体—市场绩效 B. 市场结构—市场行为—市场绩效 C. 市场行为—市场结构—市场效果 D. 市场结构—消费主体—产品状况 15.罗斯托关于经济增长本质研究的角度是( ) A. 从总量的变化过程来研究产业结构的变化趋势 B. 从部门的变化过程来研究经济总量增长的规律 C. 从均衡竞争的假设条件来研究经济增长 D. 从“次优论”的角度来研究经济增长。 16.产业结构优化的目标是( ) A. 实现产业结构的高度化和合理化 B. 实现经济的飞速发展 C. 促进各产业间的协调发展 D. 调整不协调的产业结构

操作系统实验报告-实验二

操作系统实验报告——实验二:C编程环境 实验目的 1.熟悉Linux下C程序设计的环境; 2.对系统调用有初步了解。 实验内容 1.Linux下C语言程序的开发过程 a、在用户主目录下用vi编辑C语言源程序(源程序已附后),如:$vi hello.c。 b、用gcc编译C语言源程序:$gcc ./hello.c -o example 这里gcc是Linux下的C语言程序编译器(GNU C Compiler),./hello.c表示待编译的源文件是当前工作目录下的hello.c,-o example表示编译后产生的目标代码文件名为example。 c、若编译不正确,则进入vi修改源程序,否则,运行目标代码:$./example 。注意: 这只是gcc最基本的用法,其他常用选项有:-c , -S , -O , -O2, -g 等。 2.编辑、调试下面c语言程序,说明该程序的功能。 #include #include int main() { int n,a[200],carry,temp,i,j,digit = 1; printf("Please input n:"); scanf("%d",&n); a[0] = 1; for( i = 2; i <= n; ++i) { for( j = 1, carry = 0; j <= digit; ++j) { temp = a[j-1] * i + carry; a[j-1] = temp % 10; carry = temp / 10; } while(carry) { a[++digit-1] = carry % 10; carry /= 10; } } printf("Result is:\n%d ! = ",n); for( i = digit; i >=1; --i) { printf("%d",a[i-1]); }

操作系统实验报告三

课程实验报告 课程名称姓名实验名称实验目的及要求 实验3进程并发与同步 1、加深对进程概念的理解,区分进程并发执行与串行执行; 2、掌握进程并发执行的原理,理解进程并发执行的特点; 3、了解fork()系统调用的返回值,掌握用fork()创建进程的方法;熟悉wait、exit等系统调用; 4、能利用相应的系统调用实现进程树与进程间的同 步。 实 验操作系统:linux Un bu ntu 11.10 环 境实验工具:Vmware 实验内容 1、编写一C语言程序,实现在程序运行时通过系统调用fork()创建两个子进程,使父、子三进程并发执行,父亲进程执行时屏幕显示“I am father ”,儿子进 程执行时屏幕显示“ I am son ",女儿进程执行时屏幕显示“ I am daughter ”。 要求多次连续反复运行这个程序,观察屏幕显示结果的顺序,直至出现不一样的情况为止。要求有运行结果截图与结果分析 2、连续4个fork()的进程家族树,family1-1.c 程序清单如下: #in clude main () { fork(); fork(); fork(); fork(); printf( A\n ”); } 请根据程序运行结果,画出进程家族树,并分析原 因。

3、 修改程序1,在父、子进程中分别使用 wait 、exit 等系统调用“实现”其同 步推进,父进程必须等待儿子进程与女儿进程结束, 才可以输出消息。 写出相应的同 步控制,并分析运行结果。 4、 创建一个子进程,并给它加载程序,其功能是调用键盘命令“ ls -I ”,已知 该键盘命令的路径与文件名为: /bin/ls 。父进程创建子进程, 并加载./child2 程序。 写出相应的程序代码并分析程序运行结果。 1、编写一 C 语言程序,实现在程序运行时通过系统调用 fork()创建两个子进 程,使父、子三进程并发执行,父亲进程执行时屏幕显示“ I am father ”, 儿子进程执行时屏幕显示“ I am son ”,女儿进程执行时屏幕显示“ I am daughter "。并且反复的测试,观察每一次的执行的顺序有什么不同 2、修改程序1,在父、子进程中分别使用 wait 、exit 等系统调用“实现”其同 步推进,父进程必须等待儿子进程与女儿进程结束,才可以输出消息。 4、创建一个子进程,并给它加载程序,其功能是调用键盘命令“ ls -I ”,已知 该键盘命令的路径与文件名为: /bin/ls 。父进程创建子进程, 并加载./child2 程序。 法 描 述 及 实 验 步 骤 调 试过 程及实 验结果

60青岛理工大学期末考试管网与泵站试卷(B)标准答案

管网与泵站试卷(B)标准答案 一、名词解释:(10题,每题3分,共30分) 1、生活污水日变化系数:一年中最大日生活污水量与平均日污水量的比值称为生活污水日 变化系数。(3分) 2、覆土厚度:指排水管道外壁顶端到地面的垂直距离。(3分) 3、管顶平接:指在排水管网衔接时,使上游管段终端和下游管段起端的管顶标高相同的衔 接方式。(3分) 4、降雨历时:是指连续降雨的时段,可以指一场雨全部降雨的时间,也可指其中个别的连 续时段。(3分) 5、苏林系数:由于雨水管渠由于雨水流行时间比按照最大流量计算的流行时间大20%,对 用满流流速计算出的管内雨水流行时间乘以大于一的系数,称为苏林系数。(3分) 6、折减系数:由于缩小了管道排水断面尺寸使雨水管段上游蓄水,增长泄水时间。因此采 用增长管道中流行时间的办法,达到适当折减设计流量,进而缩小管道断面尺寸的目的,而对管内流行时间乘以一系数,叫做折减系数(2分)。是苏林系数与管道调蓄利用系数两者的乘积。(1分) 7、极限强度法:即承认降雨强度随降雨历时增长而减小的规律性,同时认为汇水面积的增 长与降雨历时成正比,而且汇水面积随降雨历时的增长较降雨强度随降雨历时增长而减小的速度更快,这种用于确定雨水管道设计的理论车称为极限强度法。(3分) 8、传输流量:是指在排水管网中,从污水管网上游管段和旁侧管段流来的污水量。(3分) 9、截留倍数:在合流制管渠系统中,不从合流制管道系统溢流井泄出,沿管道输送到污水 处理厂的雨水量,通常按旱流流量Qf的指定倍数计算,该指定倍数称为截流倍数。(3分) 10、“干室式”泵站;集水池与水泵间用不透水墙进行分割,集水池只允许进入水泵内,不进 入机器间的泵房布置形式称为“干室式”泵站(3分)。 二、简答:(5题,每题8分,共40分) 1、简述排水系统的主要布置形式有哪几类?主要适用于何种情况? 答:(1)正交式布置:在地势向水体适当倾斜的地区,各排水流域的干管可以最短距离沿与水体垂直相交的方向布置,称为正交式布置。(1.5分) (2)截流式布置:正交式布置中沿河岸再敷设主干管,并将各干管的污水截流送至污水厂,这种布置形式称截流式布置。(1.5分) (3)平行式布置:在地势向河流方向有较大倾斜的地区,为了避免因干管坡度及管内流速过大,使管道受到严重冲刷,可使干管与等高线及河道基本上平行、主干管与等高线及河道成一定斜角敷设,这种布置也称平行式布置。(1.5分) (4)分区布置:在地势高低相差很大的地区,当污水不能靠重力流流至污水厂时,可采用分区布置形式。(1.5分) (5)辐射状分散布置:当城市周围有河流,或城市中央部分地势高、地势向周围倾斜的地区,各排水流域的干管常采用辐射状分散市置。(1分) (6)环绕式布置:围绕一个地区主要污水厂布置的各分区干管布置形式。(1分) 2、污水管道最小埋设深度应满足的三个要素分别是什么?并简述主要内容。 答:污水管道的最小覆土厚度,一般应满足下述三个因素的要求;

操作系统lab2实验报告

HUNAN UNIVERSITY 操作系统实验报告

目录 一、内容 (3) 二、目的 (3) 三、实验设计思想和练习题 (3) 练习0:填写已有实验 (3) 练习1:实现 first-fit 连续物理内存分配算法(需要编程) (3) 练习2:实现寻找虚拟地址对应的页表项(需要编程) (8) 练习3:释放某虚地址所在的页并取消对应二级页表项的映射(需要编程) (11) 运行结果 (13) 四、实验体会 (13)

一、内容 本次实验包含三个部分。首先了解如何发现系统中的物理内存;然后了解如何建立对物理内存的初步管理,即了解连续物理内存管理;最后了解页表相关的操作,即如何建立页表来实现虚拟内存到物理内存之间的映射,对段页式内存管理机制有一个比较全面的了解。 二、目的 1.理解基于段页式内存地址的转换机制; 2.理解页表的建立和使用方法; 3.理解物理内存的管理方法。 三、实验设计思想和练习题 练习0:填写已有实验 使用eclipse中的diff/merge工具将实验1的代码填入本实验中代码中有“LAB1”的注释相应部分。 练习1:实现 first-fit 连续物理内存分配算法(需要编程) 在实现first fit 内存分配算法的回收函数时,要考虑地址连续的空闲块之间的合并操作。提示:在建立空闲页块链表时,需要按照空闲页块起始地址来排序,形成一个有序的链表。可能会修改default_pmm.c 中的default_init,default_init_memmap,default_alloc_pages, default_free_pages等相关函数。请仔细查看和理解default_pmm.c中的注释。 请在实验报告中简要说明你的设计实现过程。请回答如下问题: 你的first fit算法是否有进一步的改进空间。 解答: 分析思路: (1)数据结构: A.每个物理页利用一个Page结构体表示,查看kern/mm/memlayout.h包括:

操作系统实验报告三

课程实验报告

3、修改程序1,在父、子进程中分别使用wait、exit等系统调用“实现”其同步推进,父进程必须等待儿子进程与女儿进程结束,才可以输出消息。写出相应的同步控制,并分析运行结果。 4、创建一个子进程,并给它加载程序,其功能是调用键盘命令“ls -l”,已知该键盘命令的路径与文件名为:/bin/ls。父进程创建子进程,并加载./child2程序。写出相应的程序代码并分析程序运行结果。 算法描述及实验步骤 1、编写一C语言程序,实现在程序运行时通过系统调用fork( )创建两个子进 程,使父、子三进程并发执行,父亲进程执行时屏幕显示“I am father”, 儿子进程执行时屏幕显示“I am son”,女儿进程执行时屏幕显示“I am daughter”。并且反复的测试,观察每一次的执行的顺序有什么不同 2、修改程序1,在父、子进程中分别使用wait、exit等系统调用“实现”其同 步推进,父进程必须等待儿子进程与女儿进程结束,才可以输出消息。 4、创建一个子进程,并给它加载程序,其功能是调用键盘命令“ls -l”,已知该键盘命令的路径与文件名为:/bin/ls。父进程创建子进程,并加载./child2程序。 调试过程及实验结果

总结 1、实现在程序运行时通过系统调用fork( )创建两个子进程,使父、子三进程并发执行,父亲进程执行时屏幕显示“I am father”,儿子进程执行时屏幕显示“I am son”,女儿进程执行时屏幕显示“I am daughter”。这一点需要注意。返回结果时,由于每一次的不确定性,所以要想得到比较具有说服性的,就必须经过多次的测试。 2、连续4个fork()的进程家族树在进行实验的时候可能会出现进程输出信息一直一样的情况,需要多次执行输出才有可能会看到输出结果不一样的情况

青岛理工大学概率统计期末试卷—A(附答案)

学号:姓名:班级:..........................................................密.......................................................封...........................................................线.......................................................... 专业本科各专业年级2007级班2008~2009学年第 1 学期概率论与数理统计课程期末试卷试卷类型:A 卷 青岛理工大学试卷纸共 4 页第 1 页 试题要求:1、试题后标注本题得分;2、试卷应附有评卷用标准答案,并有每题每步得分标准;3、试卷必须装订,拆散无效;4、试卷必须

..........................................................密.......................................................封..........................................................线..........................................................

..........................................................密.......................................................封..........................................................线..........................................................

上海大学操作系统(二)实验报告(全)

评分: SHANGHAI UNIVERSITY 操作系统实验报告 学院计算机工程与科学 专业计算机科学与技术 学号 学生姓名

《计算机操作系统》实验一报告 实验一题目:操作系统的进程调度 姓名:张佳慧学号 :12122544 实验日期: 2015.1 实验环境: Microsoft Visual Studio 实验目的: 进程是操作系统最重要的概念之一,进程调度又是操作系统核心的主要内容。本实习要求学生独立地用高级语言编写和调试一个简单的进程调度程序。调度算法可任意选择或自行设计。例如,简单轮转法和优先数法等。本实习可加深对于进程调度和各种调度算法的理解。实验内容: 1、设计一个有n个进程工行的进程调度程序。每个进程由一个进程控制块(PCB)表示。进程控制块通常应包含下述信息:进程名、进程优先数、进程需要运行的时间、占用CPU的时间以及进程的状态等,且可按调度算法的不同而增删。 2、调度程序应包含2~3种不同的调度算法,运行时可任意选一种,以利于各种算法的分析比较。 3、系统应能显示或打印各进程状态和参数的变化情况,便于观察诸进程的调度过程。 操作过程: 1、本程序可选用优先数法或简单轮转法对五个进程进行调度。每个进程处于运行R(run)、就绪W(wait)和完成F(finish)三种状态之一,并假设起始状态都是就绪状态W。为了便于处理,程序进程的运行时间以时间片为单位计算。进程控制块结构如下: 进程控制块结构如下: PCB 进程标识数 链指针 优先数/轮转时间片数 占用 CPU 时间片数 进程所需时间片数 进程状态 进程控制块链结构如下:

其中:RUN—当前运行进程指针; HEAD—进程就绪链链首指针; TAID—进程就绪链链尾指针。2、算法与框图 (1) 优先数法。进程就绪链按优先数大小从高到低排列,链首进程首先投入运行。每过一个时间片,运行进程所需运行的时间片数减 1,说明它已运行了一个时间片,优先数也减 3,理由是该进程如果在一个时间片中完成不了,优先级应该降低一级。接着比较现行进程和就绪链链首进程的优先数,如果仍是现行进程高或者相同,就让现行进程继续进行,否则,调度就绪链链首进程投入运行。原运行进程再按其优先数大小插入就绪链,且改变它们对应的进程状态,直至所有进程都运行完各自的时间片数。 (2) 简单轮转法。进程就绪链按各进程进入的先后次序排列,进程每次占用处理机的轮转时间按其重要程度登入进程控制块中的轮转时间片数记录项(相当于优先数法的优先数记录项位置)。每过一个时间片,运行进程占用处理机的时间片数加 1,然后比较占用处理机的时间片数是否与该进程的轮转时间片数相等,若相等说明已到达轮转时间,应将现运行进程排到就绪链末尾,调度链首进程占用处理机,且改变它们的进程状态,直至所有进程完成各自的时间片。 (3) 程序框图

操作系统实验报告 实验三

昆明理工大学信息工程与自动化学院学生实验报告 (2012 —2013 学年第二学期) 课程名称:操作系统开课实验室:信自楼445 2013 年 5 月 16 日 一、实验要求 对给定的一个页面走向序列,请分别用先进先出算法和二次机会算法,计算淘汰页面的顺序、缺页次数和缺页率,具体的页面走向可参考教材例题或习题。 二、实验目的 存储管理的主要功能之一是合理地分配空间。请求页式管理是一种常用的虚拟存储管理技术。通过本次实验,要求学生通过编写和调试地址转换过程的模拟程序以加强对地址转换过程的了解,通过请求页式存储管理中页面置换算法模拟设计,了解虚拟存储技术的特点,掌握请求页式存储管理的页面置换算法。 三、实验原理及基本技术路线图(方框原理图) 用C或C++语言模拟实现请求式分页管理。要求实现:页表的数据结构、分页式内存空间的分配及回收(建议采用位图法)、地址重定位、页面置换算法(从FIFO,LRU,NRU中任选一种)。 提示:可先用动态申请的方式申请一大块空间,然后假设该空间为内存区域,对该空间进行

流程图:

数据结构定义: 我提供定义了两个类。第一个类就是页面类,在这类里面包括一些重要的数据成员。

有页号(page_no),页框号(frame_no),页面是否在内存的标志(flag(1表示在内存,0表示不在内存)),访问次数(times)。另一个类是进程控制块类PCB。类的数据成员有id(进程编号),name(进程名),size(进程大小),*p(页类指针)。在本类中,有一些成员函数:构造函数(用来初始化本类的所有数据),displayPCB(输出函数),convert(地址映射函数),allocation(分配函数),restore(回收函数)。另外还有一些类外的函数:initMemorySpace(初始化内存空间的函数),displayMemorySpace(输出内存空间的状态1(表示占用)0(表示空))。 四、所用仪器、材料(设备名称、型号、规格等)。 计算机一台 五、实验方法、步骤 程序代码: #include #include #include using namespace std; const int frame_size=1024;//页框长度,固定为 1k const int page_size=1024;//页面长度,固定为 1k const int memory_size=102400;//内存容量,固定为 100k const int frame_number=memory_size/frame_size;// 100k/1k=100 frames int *memory;//指针变量,用来存内存的状态1还是0。 void initMemorySpace()//初始化内存空间 { int i,ran,times; time_t t;//定义time_t对象 t t=time(0); srand(t);//随机改变每秒 times=0;//变量times初始化为0,变量的功能是检查内存空间是否有一半空了没。 memory=new int[frame_number];//申请内存空间,有frame_number 这么大的空间 for(i=0;i

操作系统实验报告

操作系统教程 实 验 指 导 书 姓名: 学号: 班级:软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的循环次数:

计算机操作系统 实验报告

操作系统实验报告 学院:计算机与通信工程学院 专业:计算机科学与技术 班级: 学号: 姓名: 指导教师: 成绩: 2014年 1 月 1 日

实验一线程的状态和转换(5分) 1 实验目的和要求 目的:熟悉线程的状态及其转换,理解线程状态转换与线程调度的关系。 要求: (1)跟踪调试EOS线程在各种状态间的转换过程,分析EOS中线程状态及其转换的相关源代码; (2)修改EOS的源代码,为线程增加挂起状态。 2 完成的实验内容 2.1 EOS线程状态转换过程的跟踪与源代码分析 (分析EOS中线程状态及其转换的核心源代码,说明EOS定义的线程状态以及状态转换的实现方法;给出在本部分实验过程中完成的主要工作,包括调试、跟踪与思考等) 1.EOS 准备了一个控制台命令“loop ”,这个命令的命令函数是 ke/sysproc.c 文件中的ConsoleCmdLoop 函数(第797行,在此函数中使用 LoopThreadFunction 函数(第755 行)创建了一个优先级为 8 的线程(后面简称为“loop 线程”),该线程会在控制台中不停的(死循环)输出该线程的ID和执行计数,执行计数会不停的增长以表示该线程在不停的运行。loop命令执行的效果可以参见下图: 2. 线程由阻塞状态进入就绪状态 (1)在虚拟机窗口中按下一次空格键。 (2)此时EOS会在PspUnwaitThread函数中的断点处中断。在“调试”菜单中选择“快速监视”,在快速监视对话框的表达式编辑框中输入表达式“*Thread”,然后点击“重新计算”按钮,即可查看线程控制块(TCB)中的信息。其中State域的值为3(Waiting),双向链表项StateListEntry的Next和Prev指针的值都不为0,说明这个线程还处于阻塞状态,并在某个同步对象的等待队列中;StartAddr域的值为IopConsoleDispatchThread,说明这个线程就是控制台派遣线程。 (3)关闭快速监视对话框,激活“调用堆栈”窗口。根据当前的调用堆栈,可以看到是由键盘中断服务程序(KdbIsr)进入的。当按下空格键后,就会发生键盘中断,从而触发键盘中断服务程序。在该服务程序的最后中会唤醒控制台派遣线程,将键盘事件派遣到活动的控制台。 (4)在“调用堆栈”窗口中双击PspWakeThread函数对应的堆栈项。可以看到在此函数中连续调用了PspUnwaitThread函数和PspReadyThread函数,从而使处于阻塞状态的控制台派遣线程进入就绪状态。 (5)在“调用堆栈”窗口中双击PspUnwaitThread函数对应的堆栈项,先来看看此函数是如何改变线程状态的。按F10单步调试直到此函数的最后,然后再从快速监视对

Windows操作系统实验三实验报告

Windows操作系统C/C++ 程序实验 姓名:___________________ 学号:___________________ 班级:___________________ 院系:___________________ ______________年_____月_____日

实验三Windows 2000/xp线程同步 一、背景知识 二、实验目的 在本实验中,通过对事件和互斥体对象的了解,来加深对Windows 2000/xp线程同步的理解。 1) 回顾系统进程、线程的有关概念,加深对Windows 2000/xp线程的理解。 2) 了解事件和互斥体对象。 3) 通过分析实验程序,了解管理事件对象的API。 4) 了解在进程中如何使用事件对象。 5) 了解在进程中如何使用互斥体对象。 6) 了解父进程创建子进程的程序设计方法。 三、工具/准备工作 在开始本实验之前,请回顾教科书的相关内容。 您需要做以下准备: 1) 一台运行Windows 2000/xp Professional操作系统的计算机。 2) 计算机中需安装V isual C++ 6.0专业版或企业版。 四、实验内容与步骤 1. 事件对象 清单4-1程序展示了如何在进程间使用事件。父进程启动时,利用CreateEvent() API创建一个命名的、可共享的事件和子进程,然后等待子进程向事件发出信号并终止父进程。在创建时,子进程通过OpenEvent() API打开事件对象,调用SetEvent() API使其转化为已接受信号状态。两个进程在发出信号之后几乎立即终止。 步骤1:登录进入Windows 2000/xp Professional。 步骤2:在“开始”菜单中单击“程序”-“Microsoft V isual Studio 6.0”–“Microsoft V isual C++ 6.0”命令,进入V isual C++窗口。 步骤3:在工具栏单击“打开”按钮,在“打开”对话框中找到并打开实验源程序3-1.cpp。 步骤4:单击“Build”菜单中的“Compile 3-1.cpp”命令,并单击“是”按钮确认。系统

青岛理工大学英语2018下学期期末考试复习题A及答案

复习题A Section A Multiple Choice Directions: Choose the best answer from the four choices marked A, B, C and D. 1. Columbia students may at first be intimated by the city’s strong ______. A. famous B. deputation C. reputation D. well-known 2. The university has _____ many changes over the years. A. witnessed B. experiences C. occurred D. taken pace 3.—Will you stay for _________ supper with us? —Sure, I'd love to. Home cooking is just what I like. A. a B. an C. the D. / 4. Students should ____ their own interests, as well as do their school work. A. pursue B. pursuit C. in pursuit of D. be pursued 5. —__________is your father? —He's an engineer in a big factory. A. Who B. What C. Which D. Where 6. Housing policies _____ from school to school. A. differ B. varies C. different D. variety 7. I usually sleep with the window open _____ it’s really cold. A. if B. because C. so D. unless 8. I keep the lesson simple because small kids can’t ______ that much. A. absorb B. take up C. recover D. complain 9. —Have you read the book Harry Potter? —Sure. Eric is also _______ it and we become friends because of that. A. proud of B. afraid of C. serious about D. interested in 10. —Good morning. I'd like a birthday gift for my mother. —What about this scarf? It is beautiful and it______ soft and smooth. A. feels B. looks C. seems D. becomes 11. Global warming poses a serious ______ for the future. A. defeat B. threaten C. treaty D. threat 12._________ running after success, we have a lot of other interesting things to do in our lives. A. By B. On C. Besides D. Except 13. —Excuse me, sir, visiting hours are over. You _______ leave. —Pardon me, nurse. I didn't hear the bell. A. may B. can C. must D. need 14. The survey ____ that 50% of the old couples live separate from their children. A. reveals B. releases C. recovers D. interveals 15. —Why didn't you cry for help when you were robbed? —If I opened my mouth, they might find my four gold teeth. That would be ______! A. bad B. much worse C. worst D. the worst 16. At the farewell party, Kobe Bryant said, "________ the support of my fans, it would be hard for me to achieve such great success.” A. With B. Under C. Through D. Without 17. —Could you please tell me________ , Sonia? —It's on the first Tuesday of May. We hold special parties and give teachers thank-you notes that day.

操作系统实验报告

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

实验一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循环:

操作系统实验报告.

学生学号0121210680225 实验课成绩 武汉理工大学 学生实验报告书 实验课程名称操作系统 开课学院计算机科学与技术学院 指导老师姓名刘军 学生姓名李安福 学生专业班级软件sy1201 2014 — 2015 学年第一学期

《操作系统》实验教学大纲 课程编号: 课程名称:操作系统/Operating System 实验总学时数:12学时 适应专业:计算机科学与技术、软件工程 承担实验室:计算机科学与技术学院实验中心 一、实验教学的目的和任务 通过实验掌握Linux系统下常用键盘命令、系统调用、SHELL编程、后台批处理和C程序开发调试手段等基本用法。 二、实验项目及学时分配 序号实验项目名称实验学时实验类型开出要求 01 Linux键盘命令和vi 2 设计必开 02 Linux下C编程 2 设计必开 03 SHELL编程和后台批处理 2 设计必开 04 Linux系统调用(time) 2 设计必开 05 Linux进程控制(fork) 4 设计必开 三、每项实验的内容和要求: 1、Linux键盘命令和vi 要求:掌握Linux系统键盘命令的使用方法。 内容:见教材p4, p9, p40, p49-53, p89, p100 2、Linux下的C编程 要求:掌握vi编辑器的使用方法;掌握Linux下C程序的源程序编辑方法;编译、连接和运行方法。 内容:设计、编辑、编译、连接以及运行一个C程序,其中包含键盘输入和屏幕输出语句。 3、SHELL编程和后台批处理 要求:掌握Linux系统的SHELL编程方法和后台批处理方法。 内容:(1) 将编译、连接以及运行上述C程序各步骤用SHELL程序批处理完成,前台运行。 (2) 将上面SHELLL程序后台运行。观察原C程序运行时输入输出情况。 (3) 修改调试上面SHELL程序和C程序,使得在后台批处理方式下,原键 盘输入内容可以键盘命令行位置参数方式交互式输入替代原键盘输入内容, 然后输出到屏幕。 4、Linux系统调用使用方法。

相关文档
最新文档