CSS页面布局及样式设计实验报告(5篇材料)

时间:2019-05-14 07:00:49下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《CSS页面布局及样式设计实验报告》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《CSS页面布局及样式设计实验报告》。

第一篇:CSS页面布局及样式设计实验报告

实 验 报 告

实验项目名称: CSS页面布局及样式设计

(所属课程: web系统与技术)

学 院:计算机学院 专业班级:11级计科信息 姓 名: 学 号: 实验日期: 实验地点:A06-404 合作者: 指导教师:李

本实验项目成绩: 教师签字: 日期:

一、实验目的

(1)掌握CSS中的定位属性使用方法。(2)掌握DIV+CSS的页面布局方式。(3)掌握CSS中的常用属性的使用方法。(4)理解CSS的样式构造。

二、实验条件

安装Web开发环境的微机。

三、实验内容

(1)重新对聊天室的注册页面、登陆页面和聊天页面进行页面布局。(1)对聊天室的注册页面、登陆页面和聊天页面进行样式设计。

四、实验步骤

(1)注册页面使用CSS将注册表单居中显示,表单内嵌入表格将文本与输入域格式化显示,表单内使用label标签。

(2)登录页面中添加div层用于显示在线用户数。

(3)登录页面使用div将登录表单,在线用户数,logo图片,超链接等页面元素重新定位布局。

(4)聊天页面改用div标签并使用CSS的position定位属性进行布局,框架内的独立页面使用float属性进行布局。

(5)使用CSS设置三个页面的背景颜色或背景图片。(6)注册页面使用CSS设计所有输入框和提交按钮的样式。

(7)登录页面使用CSS设置的超链接的字体和下划线、登录表单使用圆顶角、在线用户数使用图片数字,使用CSS设计登录按钮的显示样式。

第1页

共8页 实 验 报 告

(8)聊天页面中使用CSS设计信息发送表单和发送按钮的样式,设计用户信息列表和聊天信息段落的的显示样式。

五、实验结果

注册界面效果图及代码:

//总体框架 //添加图片代码

第二篇:css 实验报告

实验题目使用CCS美化“北京奥运吉祥物——福娃”网站

一、实验目的

用CCS美化网站,来控制网页样式。首先进行布局分析包括网页的头部,网页主体等。然后是摸块布局设计,页面总体布局设计、链接页面的CSS的文件、要遵循设计页面的通用规则,设计#heard对象部分由网页的logo部分和导航区构成,在是设计#content对象部分,content分为三列,第一行由分为头片新闻区,新闻区和公告栏,第二行分为福娃简介和福娃揭秘,第三行是精彩图片区、名人说福娃和投票调查区。最终使CSS用美化网站.。通过本次实验能熟练掌握CSS美化网站的基本技巧和技能,在以后的学习、工作生活中能够应用,为我们工作带来,生活带来方便。

二、实验内容

1、页面总体布局设计,可以通过对选择“插入记录

布局对象

DIV标签”命令的方法进行布局,也可以通过在代码视图中直接编写源代码的方进行布局,布局页面的HTM框架的代码。、连接页面的CSS文件,先建一个名为styie.css的文件,然后打开CSS样式面板,单击附加样式表,连接超链接。、设计网页的通用规则。通用规则对所有的标记都起作用,绝大部分标记都会涉及属性。打开CSS样式面板双击新建的那个文件,单击确定按钮,用相同的方法设置BODAY的字体和方法。、设计#header对象部分。包括logo#logo和导航#nav.网页logo部分是一个中间栏固定,左右栏自适应的结构,并在fianshlogo中插入透明fiansh、动画;导航区域由#NAV#navbgl两个区组成,使用css中超链接属性。、设计#content对象部分,#maincon为中间列,宽度固定,左右两列没有内容因此不需要考虑,而主体显示部分为三行,分别显示网页不同区域。、设计#footer对象部分。

三、实验情况和实验结果 页面总体布局

2网页logo效果图

3网页导航区效果图

4网页#firstmain效果图

四、CSS层叠样式表,是用于控制网页样式,是以HTML为基础提供丰富的格式化功能,由字体,颜色,背景,整体排版等。

1、了解了css的概念和特点,在网页中使用css的四种方式及选择器的语法格式及三种选择器;标签选择器、类选择器和ID选择器。

2、掌握了CSSde 创建及管理方式和其中常用的属性,应用css+DIV进行页实验体会 面布局的DIV标记,SPNA标记,盒子模型,元素的定位方式,布局流程和常用的布局类型。

3、学会了应用SCC+DIV对“北京奥运混吉祥物——福娃”网站的主页重新进行了设计的过程。、CSS是以HTML为基础,提供丰富的格式化功能,是将样式信息与网页内容分离的一种记性语言。

5、在学会使用CSS美化网站后,感CSS是一个神奇的东西,使我感觉好奇,是什么力让网页可以这样变化,在自己完完整整做了一遍后才知道其中的奥妙。

第三篇:css属性样式[范文模版]

HIDEFOCUS hideFocus 设置或获取表明对象是否显式标明焦点的值。HSPACE hspace 设置或获取对象的水平边距。ID id 获取标识对象的字符串。

innerText 设置或获取位于对象起始和结束标签内的文本。isContentEditable 获取表明用户是否可编辑对象内容的值。isDisabled 获取表明用户是否可与该对象交互的值。isMultiLine 获取表明对象的内容是包含一行还是多行的值。isTextEdit 获取是否可使用该对象创建一个 TextRange 对象。LANG lang 设置或获取要使用的语言。

LANGUAGE language 设置或获取当前脚本编写用的语言。lastChild 获取该对象 childNodes 集合中最后一个子对象的引用。longDesc 设置或获取对象长描述的统一资源标识符(URI)。

MARGINHEIGHT marginHeight 设置或获取显示框架中文本之前的上下边距高度。MARGINWIDTH marginWidth 设置或获取显示框架中文本之前的左右边距宽度。NAME name 设置或获取框架的名称。

nextSibling 获取对此对象的下一个兄弟对象的引用。nodeName 获取特定结点类型的名称。nodeType 获取所需结点的类型。nodue 设置或获取结点的值。

offsetHeight 获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度。offsetLeft 获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置。offsetParent 获取定义对象 offsetTop 和 offsetLeft 属性的容器对象的引用。offsetTop 获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置。offsetWidth 获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的宽度。onOffBehavior 获取表明指定的 Microsoft® DirectAnimation® 行为是否正在运行的对象。

outerHTML 设置或获取对象及其内容的 HTML 形式。outerText 设置或获取对象的文本。

ownerDocument 设置或获取结点关联的 document 对象。parentElement 获取对象层次中的父对象。parentNode 获取文档层次中的父对象。

parentTextEdit 获取文档层次中可用于创建包含原始对象的 TextRange 的容器对象。previousSibling 获取对此对象的上一个兄弟对象的引用。readyState 获取对象的当前状态。readyState 获取表明对象当前状态的值。

recordNumber 获取数据集中生成对象的原始记录。scopeName 获取为该元素定义的命名空间。

SCROLLING scrolling 设置或获取框架是否可被滚动。

SECURITY SECURITY 获取表明 frame 或 iframe 的源文件是否应用了特定的安全限制的值。

sourceIndex 获取对象在源序中的依次位置,即对象出现在 document 的 all 集合中的顺序。SRC src 设置或获取要由对象装入的 URL。STYLE 为该设置元素设置内嵌样式。

SYNCMASTER syncMaster 设置或获取时间容器是否必须在此元素上同步回放。SYSTEMBITRATE 获取系统中大约可用带宽的 bps。

SYSTEMCAPTION 表明是否要显示文本来代替演示的的音频部分。

SYSTEMLANGUAGE 表明是否在用户计算机上的选项设置中选中了给定语言。

SYSTEMOVERDUBORSUBTITLE 指定针对那些正在观看演示但对被播放的音频所使用的语言并不熟悉的用户来说是否要渲染配音或字幕。

TABINDEX tabIndex 设置或获取定义对象的 Tab 顺序的索引。tagName 获取对象的标签名称。

tagUrn 设置或获取在命名空间声明中指定的统一资源名称(URN)。TIMECONTAINER timeContainer 设置或获取与元素关联的时间线类型。TITLE title 设置或获取对象的咨询信息(工具提示)。uniqueID 获取为对象自动生成的唯一标识符。UNSELECTABLE 指定该元素不可被选中。VSPACE vspace 设置或获取对象的垂直边距。WIDTH width 设置或获取对象的宽度。

标签属性/属性

行为

行为 描述

clientCaps 提供关于 Internet Explorer 支持的特性的信息,以及提供即用即装的方法。download 下载文件并在下载完成后通知一个指定的回调函数。homePage 包含关于用户主页的信息。time 为 HTML 元素提供一个活动的时间线。

time2 为 HTML 元素或一组元素提供一个活动的时间线。

集合

集合 描述

all 返回对象所包含的元素集合的引用。attributes 获取对象标签属性的集合。

behaviorUrns 返回标识附加到该元素行为的统一资源名称(URN)字符串的集合。childNodes 获取作为指定对象直接后代的 HTML 元素和 TextNode 对象的集合。children 获取作为对象直接后代的 DHTML 对象的集合。

事件

事件 描述

onactivate 当对象设置为活动元素时触发。

onafterupdate 当成功更新数据源对象中的关联对象后在数据绑定对象上触发。onbeforedeactivate 在 activeElement 从当前对象变为父文档其它对象之前立即触发。onbeforeupdate 当成功更新数据源对象中的关联对象前在数据绑定对象上触发。onblur 在对象失去输入焦点时触发。oncontrolselect 当用户将要对该对象制作一个控件选中区时触发。ondeactivate 当 activeElement 从当前对象变为父文档其它对象时触发。onerrorupdate 更新数据源对象中的关联数据出错时在数据绑定对象上触发。onfocus 当对象获得焦点时触发。

onload 在浏览器完成对象的装载后立即触发。onmove 当对象移动时触发。onmoveend 当对象停止移动时触发。onmovestart 当对象开始移动时触发。onreadystatechange 当对象状态变更时触发。

onresizeend 当用户更改完控件选中区中对象的尺寸时触发。onresizestart 当用户开始更改控件选中区中对象的尺寸时触发。

ontimeerror 当特定时间错误发生时无条件触发,通常由将属性设置为无效值导致。

滤镜

滤镜属性 描述

Alpha 调整对象内容的不透明度。

AlphaImageLoader 在对象的边界和对象背景到内容之间显示图像,可选剪裁或缩放图像大小。当装入便携网络图像(PNG)时,从 0 到 100% 的 透明度都是支持的。Barn 以开门或关门的运动方式显示对象的新内容。

BasicImage 调整对象内容的颜色处理、图像旋转或不透明度。BlendTrans 以渐隐原始内容的形式显示对象的新内容。Blinds 以打开或关闭盲点的运动方式显示对象的新内容。Blur 模糊对象的内容以便使其看起来失去焦点。

CheckerBoard 以揭开覆盖在原始内容上的棋盘的形式显示对象的新内容。Chroma 将对象内容的指定颜色显示为透明。

Compositor 以新旧内容逻辑颜色组合的形式显示对象的新内容。每个版本的颜色和 alpha 值都会被计算用来决定输出图像的最终颜色。

DropShadow 创建对象内容的实体阴影,偏移量位于指定方向。这将使得内容看起来是浮动的因此会产生阴影。Emboss 使用灰度值对对象以浮雕纹理显示。Engrave 使用灰度值对对象以雕刻纹理显示。Fade 以渐隐原始内容的形式显示对象的新内容。FlipH 以沿水平方向翻转的形式显示对象内容。FlipV 以沿垂直方向翻转的形式显示对象内容。

Glow 在对象边缘外侧添加光晕以便使其看起来像发光的样子。Gradient 在对象的背景和内容之间显示一个渐变色彩的表面。GradientWipe 以在原有内容上覆盖渐变带的形式显示对象的新内容。Gray 以灰度显示对象内容。

ICMFilter 根据图像颜色管理(ICM)配置文件转换对象的彩色内容。这将允许指定内容的显示效果得以改善,或者在打印机或监视器等硬件设备上模拟显示。Inset 以对角线方向显示对象的新内容。Invert 反转对象内容的色调、饱和度和亮度。

Iris 以彩虹效果显示对象的新内容,这与照相机光圈打开相似。Light 在对象的内容上创建灯光效果。

MaskFilter 将对象内容的透明像素显示为彩色遮罩,将非透明像素显示为透明。Matrix 使用矩阵变换缩放、旋转或显现对象的内容。MotionBlur 以运动模糊的效果显示对象内容。

Pixelate 将对象的内容显示为彩色方块,其颜色取决于该方块所替代区域的平均颜色值。此滤镜显示可用于切换。

RadialWipe 以辐射状擦除的形式显现对象的新内容。RandomBars 以随机像素线爆炸的形式显现对象的新内容。RandomDissolve 以随机像素爆炸的形式显现对象的新内容。Redirect 目前还不支持。

RevealTrans 使用 24 种预先定义的切换效果显现对象的新内容。

Shadow 创建对象内容的实体阴影,偏移量位于指定方向。这将创建阴影效果。Slide 以图像滑行的形式显现对象的新内容。Spiral 以螺旋运动的形式显现对象的新内容。

Stretch 以拉伸覆盖原始内容的形式显现对象的新内容。有一个选项类似立方体从一个表面转到另外一个表面。Strips 以条形覆盖的形式显现对象的原始内容,好像有一把锯将原始内容锯开。Wave 在对象的内容上执行垂直方向的正弦波扭曲。

Wheel 以旋转运动的形式显现对象的新内容,好像轮子滚过原始内容。Xray 更改对象内容的颜色深度将其以黑白显示。

Zigzag 在对象上将对象的新内容进行来回移动以便覆盖原始内容。

方法

方法 描述

addBehavior 给元素附加一个行为。appendChild 给对象追加一个子元素。

applyElement 使得元素成为其它元素的子元素或父元素。

attachEvent 将指定函数绑定到事件,以便每当该事件在对象上触发时都调用该函数。blur 使元素失去焦点并触发 onblur 事件。clearAttributes 从对象中删除全部标签属性和值。cloneNode 从文档层次中复制对对象的引用。

componentFromPoint 通过特定事件返回对象在指定坐标下的位置。contains 检查对象中是否包含给定元素。

detachEvent 从事件中取消指定函数的绑定,这样当事件触发时函数就不会收到通知了。dragDrop 初始化拖曳事件。fireEvent 触发对象的指定事件。

focus 使得元素得到焦点并执行由 onfocus 事件指定的代码。getAdjacentText 返回邻接文本字符串。getAttribute 获取指定标签属性的值。

getAttributeNode 获取由 attribute.name 属性引用的 attribute 对象。getElementsByTagName 获取基于指定元素名称的对象集合。getexpression_r 获取给定属性的表达式。hasChildNodes 返回表明对象是否有子对象的值。insertAdjacentElement 在指定位置插入元素。

insertAdjacentHTML 在指定位置的元素中插入给定的 HTML 文本。insertAdjacentText 在指定位置插入给定的文本。

insertBefore 在文档层次中插入元素作为父对象的子结点。mergeAttributes 复制所有读/写标签属性到指定元素。

normalize 合并邻接 TextNode 对象以便生成一个常规的文档对象模型。removeAttribute 删除对象的给定标签属性。

removeAttributeNode 从对象中删除删除 attribute 对象。removeBehavior 分离元素的行为。removeChild 从元素上删除子结点。

removeexpression_r 从指定属性中删除表达式。removeNode 从文档层次中删除对象。replaceAdjacentText 替换元素的邻接文本。replaceChild 用新的子元素替换已有的子元素。replaceNode 用其它元素替换对象。

scrollIntoView 将对象滚动到可见范围内,将其排列到窗口顶部或底部。setActive 设置对象为当前对象而不将对象置为焦点。setAttribute 设置指定标签属性的值。

setAttributeNode 设置 attribute 对象为对象的一部分。setexpression_r 设置指定对象的表达式。swapNode 交换文档层次中两个对象的位置。

对象

对象 描述

runtimeStyle 代表了居于全局样式表、内嵌样式和 HTML 标签属性指定的格式和样式之上的对象的格式和样式。

style 代表了给定元素所有可能的内嵌样式的当前设置。

样式

样式标签属性 样式属性 描述 ACCELERATOR accelerator 设置或获取表明对象是否包含快捷键的字符串。

background-attachment backgroundAttachment 设置或获取背景图像如何附加到文档内的对象中。

background-color backgroundColor 设置或获取对象内容后的颜色。

background-position-x backgroundPositionX 设置或获取 backgroundPosition 属性的 x 坐标。

background-position-y backgroundPositionY 设置或获取 backgroundPosition 属性的 y 坐标。

behavior behavior 设置或获取 DHTML 行为的位置。border-bottom borderBottom 设置或获取对象下边框的属性。

border-bottom-color borderBottomColor 设置或获取对象下边框的颜色。border-bottom-style borderBottomStyle 设置或获取对象下边框的样式。border-bottom-width borderBottomWidth 设置或获取对象下边框的宽度。border-color borderColor 设置或获取对象的边框颜色。border-left borderLeft 设置或获取对象左边框的属性。

border-left-color borderLeftColor 设置或获取对象左边框的颜色。border-left-style borderLeftStyle 设置或获取对象左边框的样式。border-left-width borderLeftWidth 设置或获取对象左边框的宽度。border-right borderRight 设置或获取对象右边框的属性。

border-right-color borderRightColor 设置或获取对象右边框的颜色。border-right-style borderRightStyle 设置或获取对象右边框的样式。border-right-width borderRightWidth 设置或获取对象右边框的宽度。border-style borderStyle 设置或获取对象上下左右边框的样式。border-top borderTop 设置或获取对象上边框的属性。

border-top-color borderTopColor 设置或获取对象上边框的颜色。border-top-style borderTopStyle 设置或获取对象上边框的样式。border-top-width borderTopWidth 设置或获取对象上边框的宽度。border-width borderWidth 设置或获取对象上下左右边框的宽度。

bottom bottom 设置或获取对象相对于文档层次中下个定位对象的底部的位置。

clear clear 设置或获取对象是否允许在其左侧、右侧或两边放置浮动对象,以防下段文本显示在浮动对象上。

clip clip 设置或获取定位对象的哪个部分可见。

cursor cursor 设置或获取当鼠标指针指向对象时所使用的鼠标指针。display display 设置或获取对象是否要渲染。

filter filter 设置或获取应用于对象的滤镜或滤镜集合。height height 设置或获取对象的高度。

layout-grid layoutGrid 设置或获取指定文本字符版面的组合文档格线属性。layout-grid-mode layoutGridMode 设置或获取文本布局网格是否使用二维。left left 设置或获取对象相对于文档层次中下个定位对象的左边界的位置。margin margin 设置或获取对象的上下左右边距。

margin-bottom marginBottom 设置或获取对象的下边距宽度。margin-left marginLeft 设置或获取对象的左边距宽度。margin-right marginRight 设置或获取对象的右边距宽度。margin-top marginTop 设置或获取对象的上边距宽度。

overflow-x overflowX 设置或获取当内容超出对象宽度时如何管理对象内容。overflow-y overflowY 设置或获取当内容超出对象高度时如何管理对象内容。pixelBottom 设置或获取对象的下方位置。pixelHeight 设置或获取对象的高度。pixelLeft 设置或获取对象的左侧位置。pixelRight 设置或获取对象的右侧位置。pixelTop 设置或获取对象的上方位置。

pixelWidth 设置或获取对象的宽度。posBottom 设置或获取以 bottom 标签属性指定的单位的对象下方位置。

posHeight 设置或获取以 height 标签属性指定的单位的对象高度。position position 设置或获取对象所使用的定位方式。

posLeft 设置或获取以 left 标签属性指定的单位的对象左侧位置。posRight 设置或获取以 right 标签属性指定的单位的对象右侧位置。posTop 设置或获取以 top 标签属性指定的单位的对象上方位置。posWidth 设置或获取以 width 标签属性指定的单位的对象宽度。

right right 设置或获取对象相对于文档层次中下个已定位的对象的右边界的位置。float styleFloat 设置或获取文本要绕排到对象的哪一侧。

text-autospace textAutospace 设置或获取自动留空和文本的窄空间宽度调整。top top 设置或获取对象相对于文档层次中下个定位对象的上边界的位置。visibility visibility 设置或获取对象的内容是否显示。z-index zIndex 设置或获取定位对象的堆叠次序。zoom zoom 设置或获取对象的放大比例。

注释

IFRAME 元素也就是文档中的文档,或者好像浮动的框架(FRAME)。frames 集合提供了对 IFRAME 内容的访问。请使用 frames 集合读写 IFRAME 内包含的元素。例如,如果要访问 iframe 内 body 对象的 backgroundColor 样式,语法应为:

sColor = document.frames(“sFrameName”).document.body.style.backgroundColor;

通过 iframe 对象所在页面的对象模型,你可以访问 iframe 对象的属性,但不能访问其内容。例如,访问 iframe 对象的 border 样式的语法应为:

sBorderValue = document.all.oFrame.style.border;

注意 iframe 的属性必须使用前缀 document.all 访问,例如 document.all.iframeId.marginWidth。Internet Explorer 5.5 支持浮动框架的内容透明。如果想要为浮动框架定义透明内容,则必须满足下列条件。

与 IFRAME 元素一起使用的 ALLOWTRANSPARENCY 标签属性必须设置为 true。

在 IFRAME 内容源文档,background-color 或 BODY 元素的 BGCOLOR 标签属性必须设置为 transparent。

参看使用透明的浮动框架可以获得关于透明浮动框架更多的信息。

此元素在 Microsoft® Internet Explorer 4.0 的 HTML 和脚本中可用。

此元素是一个块元素。

此元素需要关闭标签。

示例

下面的例子使用了 IFRAME 元素创建了包含页面 sample.htm 的框架。

下面的例子返回了对 IFRAME 包含的文档的 all 集合的引用。

var collAll = document.frames(“IFrame1”).document.all

第四篇:页面替换算法实验报告

操作系统页面替换算法实验报告

姓名: 沈慧 班级: 计091 学号: 0913022006

页面替换算法

一.目的和要求

(一)目的

存储管理的主要功能之一是合理地分配空间。请求页式管理是一种常用的虚拟存储管理技术。

本实验的目的是通过请求页式管理中页面置换算法的模拟设计,来了解虚拟存储技术的特点,掌握请求页式管理的页面置换算法。

(二)要求

模拟页式虚拟存储管理中硬件的地址转换和缺页中断,并用最佳页面替换算法(OPT)、最近最少使用页面替换算法(LRU)、先进先出调度算法(FIFO)处理缺页中断。

二、算法描述

1.先进先出(FIFO)置换算法的思路

该算法总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。该算法实现简单,只需把一个进程已调入内存的页面,按照先后次序连接成一个队列,并设置一个替换指针,使它总指向最老的页面。

2.最近久未使用(LRU)置换算法的思路

最近久未使用置换算法的替换规则,是根据页面调入内存后的使用情况来进行决策的。该算法赋予每个页面一个访问字段,用来记录一个页面自上次被访问以来所经历的时间,当需淘汰一个页面的时候选择现有页面中其时间值最大的进 行淘汰。

3.最佳(OPT)置换算法的思路

其所选择的被淘汰的页面,奖是以后不使用的,或者是在未来时间内不再被访问的页面,采用最佳算法,通常可保证获得最低的缺页率。

三、方案设计

1、数据结构 class RAMPAGE { protected: int *RAM;//内存各块,存放各页

int ramcount;//内存块数

int *PAGE;//接收用户要访问的各页

int pagecount;//页数

int *CHANGEPAGE;//存放淘汰的各页 int maxpage;//页的最大页号

int shortage;//缺页的数量 public: RAMPAGE();//初始化

void input();//用户输入

void FIFO();//FIFO算法 void LRU();//LRU算法 void OPT();//OPT算法

~RAMPAGE();//释放空间

};

三、测试与运行

1、输入要测试的数据

2、采用FIFO方法进行页面置换

3、采用LRU算法进行页面置换

4、采用OPT算法进行页面置换

源程序代码:

#include #include #include using namespace std;class RAMPAGE { protected: int *RAM;//内存各块,存放各页 int ramcount;//内存块数

int *PAGE;//接收用户要访问的各页

int pagecount;//页数

int *CHANGEPAGE;//存放淘汰的各页 int maxpage;//页的最大页号

int shortage;//缺页的数量 public: RAMPAGE();//初始化

void input();//用户输入

void FIFO();//FIFO算法 void LRU();//LRU算法 void OPT();//OPT算法

~RAMPAGE();//释放空间 };RAMPAGE::RAMPAGE(){ ramcount=0;//内存块数

pagecount=0;//页数

maxpage=0;//页的最大页号 } void RAMPAGE::input()//用户输入 { cout<<“请输入内存块数:”;cin>>ramcount;//用户输入块数

RAM=new int [ramcount];//内存各块,存放各页 cout<<“请输入给定的页面:以#结尾”<>page;//用户输入页号

PAGE2[i]=page;//该页进入预分配空间

if(page>maxpage)maxpage=page;//找出最大页 i++;} pagecount=i;//记录用户输入的页数 CHANGEPAGE=new int[pagecount];PAGE=new int[pagecount];//接收用户要访问的各页

for(i=0;i

} delete [] PAGE2;//释放预申请空间 }

void RAMPAGE::FIFO(){ cout<<“使用FIFO算法:”<=maxpage||ramcount>=pagecount){ cout<<“缺页次数:”<<0<int j=0,k=0,l=0;//j记录内存序号,k记录淘汰页空间序号,l记录未被写入的内存块号

cout<<“内存各块存储变化:”<in=0;for(j=0;j

}

if(in==0)//页不在内存块

{

shortage++;

if(RAM[ramcount-1]!=-1)//最后一个内存块标记为-1,表示它未被写入过页号

{

CHANGEPAGE[k]=RAM[l];//!-1,则要进行淘汰,记录要被淘汰的页号

k++;

}

RAM[l]=PAGE[i];//新页写入块,将该块初次写入

l++;

if(l==ramcount)l=0;}

}

for(j=0;j

{cout<

cout<<“缺页次数:”<

cout<

}

void RAMPAGE::LRU(){ cout<<“使用LRU算法:”<=maxpage||ramcount>=pagecount){ cout<<“缺页次数:”<<0<

int i=0;for(i=0;icout<<“内存各块存储变化:”<for(j=0;j

if(PAGE[i]==RAM[j])

{

in=1;

break;

}

}

if(in==0&&RAM[ramcount-1]!=-1){

shortage++;

for(j=0;j

RAM2[j]=0;

for(j=0;j

{

for(p=i-1;p>=0;p--)

{ RAM2[j]++;//RAM2[]存储当前内存中各页的权值(距该页上次被访问待了多长时间)

if(RAM[j]==PAGE[p])break;

}

}

int max=0;for(j=0;j

{

if(RAM2[j]>max)

max=RAM2[j];//max标记最大的权值

}

for(j=0;j

{

if(max==RAM2[j])break;//定位max对应的最大权值页号的存储块号

}

CHANGEPAGE[k]=RAM[j];//将该块中的页号放入淘汰序列

RAM[j]=PAGE[i];//要访问的页写入内存块好

k++;// 淘汰数加1

}

if(in==0&&RAM[ramcount-1]==-1){

shortage++;

RAM[l]=PAGE[i];

l++;} }

for(j=0;j

cout<<“缺页次数:”<

for(int m=0;m

void RAMPAGE::OPT(){ cout<<“使用OPT算法:”<=maxpage||ramcount>=pagecount){ cout<<“缺页次数:”<<0<

int i=0;for(i=0;icout<<“内存各块存储变化:”<for(j=0;j

in=0;for(j=0;j

if(PAGE[i]==RAM[j])

{

in=1;

break;

}

}

if(in==0&&RAM[ramcount-1]!=-1){

shortage++;

for(j=0;j

RAM2[j]=0;

for(j=0;j

{

for(p=i+1;p

{ RAM2[j]++;//RAM2[]存储当前内存中各页的权值(距该页下次被访问要待多长时间)

if(RAM[j]==PAGE[p])break;

}

}

int max=0;for(j=0;j

{

if(RAM2[j]>max)

max=RAM2[j];

}

for(j=0;j

{

if(max==RAM2[j])break;

}

CHANGEPAGE[k]=RAM[j];

RAM[j]=PAGE[i];

k++;

}

if(in==0&&RAM[ramcount-1]==-1){

shortage++;

RAM[l]=PAGE[i];

l++;} }

for(j=0;j

cout<<“缺页次数:”<

for(int m=0;m

delete []PAGE;//释放访问各页空间

delete []CHANGEPAGE;//释放淘汰页空间 }

int main(){

率: RAMPAGE *task;

again: cout<<“说明:”<input();cout<<“**************************************************************”<

cout<<“输入 1 or 2 or 3选择算法:”;int number;cin>>number;switch(number){ case 1: task->FIFO();break;case 2: task->LRU();break;case 3: task->OPT();break;default : cout<<“选择出错!”<

cout<<“继续其他算法(1 or 2 or 3),0 跳过:”;cin>>number;switch(number){ case 1: task->FIFO();break;case 2: task->LRU();break;case 3: task->OPT();break;default : cout<<“跳过算法!”<

cout<<“***************************************************************”<

cout<<“继续其他算法(1 or 2 or 3),0 跳过:”;cin>>number;switch(number){ case 1: task->FIFO();break;case 2: task->LRU();break;case 3: task->OPT();break;

default : cout<<“跳过算法!”<

cout<<“***************************************************************”<

delete task;cout<<“结束程序/继续新任务?(y / n): ”;char goon;cin>>goon;if(goon=='y'){ system(“CLS”);

goto again;} return 0;}

第五篇:页面置换算法实验报告(精选)

《操作系统--页面置换算法》

实验报告

名: 范学升

号:1001050903

级:电科10-1班

业:电子信息科学与技术

一、实验目的

1.通过模拟实现几种基本页面置换的算法,了解虚拟存储技术的特点。

2.掌握虚拟存储请求页式存储管理中几种基本页面置换算法的基本思想,并至少用三种算法来模拟实现。

3.通过对几种置换算法页面的比较,来对比他们的优缺点,并通过比较更换频率来对比它们的效率。

二、实验内容:

设计一个虚拟存储区和内存工作区,并使用下述算法来模拟实现页面的置换: 1.先进先出的算法(FIFO)2.最近最久未使用算法(LRU)3.最佳置换算法(OPT)

三、实验分析

在进程运行过程中,若其所访问的页面不存在内存而需要把它们调入内存,但内存已无空闲时,为了保证该进程能够正常运行,系统必须从内存中调出一页程序或数据送磁盘的对换区中。但应调出哪个页面,需根据一定的算法来确定,算法的好坏,直接影响到系统的性能。

一个好的页面置换算法,应该有较低的页面更换频率。

假设分给一作业的物理块数为3,页面数为20个。页面号为(20个):

7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1

1.先进先出(FIFO)置换算法的思路

该算法总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。该算法实现简单,只需把一个进程已调入内存的页面,按照先后次序连接成一个队列,并设置一个替换指针,使它总指向最老的页面。

2.最近久未使用(LRU)置换算法的思路

最近久未使用置换算法的替换规则,是根据页面调入内存后的使用情况来进行决策的。该算法赋予每个页面一个访问字段,用来记录一个页面自上次被访问以来所经历的时间,当需淘汰一个页面的时候选择现有页面中其时间值最大的进 行淘汰。

3.最佳(OPT)置换算法的思路

其所选择的被淘汰的页面,奖是以后不使用的,或者是在未来时间内不再被访问的页面,采用最佳算法,通常可保证获得最低的缺页率。

4.数据结构

struct pageInfor { int content;//页面号 int timer;//被访问标记 };

class PRA { public:

PRA(void);int findSpace(void);//查找是否有空闲内存

int findExist(int curpage);//查找内存中是否有该页面 int findReplace(void);//查找应予置换的页面 void display(void);//显示 void FIFO(void);//FIFO算法 void LRU(void);//LRU算法

void BlockClear(void);//BLOCK清空,以便用另一种方法重新演示 pageInfor * block;//物理块 pageInfor * page;//页面号串 private: };

5.FIFO页面置换算法

当需要访问一个新的页面时,首先调用findExist(i)函数来查看物理块中是否就有这个页面,若要查看的页面物理块中就有,则调用display函数直接显示,不需要替换页面;如果要查看的页面物理块中没有,就需要寻找空闲物理块放入,若存在有空闲物理块,则将页面放入;若没有空闲物理块,则调用findReplace函数替换页面。并将物理块中所有页面timer++。

6.LRU页面置换算法

当需要访问一个新的页面,首先调用findExist(i)函数查看物理块中是否就有这个页面。

7.OPT页面置换算法

当需要访问一个新的页面,首先调用findExist(i)函数来查看物理块中是否有这个页面。

8.寻找置换页面函数findReplace比较三个物理块中的时间标记timer,找到时间最久的。

四、源程序结构分析

1. 程序结构

程序共有以下九个部分:

int findSpace(void);//查找是否有空闲内存

int findExist(int curpage);//查找内存中是否有该页面 int findReplace(void);//查找应予置换的页面 void display(void);//显示 void FIFO(void);//FIFO算法 void LRU(void);//LRU算法 void OPT(void);//OPT算法;

void BlockClear(void);//BLOCK清空,以便用另一种方法重新演示 int main()

//主程序

五、实验结果

1运行后的初始界面 opt算法

3.FIFO算法

4LRU算法

下载CSS页面布局及样式设计实验报告(5篇材料)word格式文档
下载CSS页面布局及样式设计实验报告(5篇材料).doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    园林布局实验报告

    校园园林草木实习报告一、 实习目的: 1.掌握校园内常见木本园林植物的中文名称及其识别特征 2.熟悉校园内常见草本园林植物或花卉的中文名称 3.了解校园内园林植物所属的科的......

    操作系统专题实验报告样式

    操作系统专题实验报告班级: 学号: 姓名:2014 年月日目录 1内核编译与系统调用...................... 3 1.1实验目的 .............................. 3 1.2实验内容 ...............

    用表格进行页面布局教案

    省淳中信息技术深度研课教学设计 【课题】 用表格进行页面布局 【课程标准】 1. 理解WWW、网页、主页、网站的基本概念及其相互关系。 2. 理解动态网页的概念,了解其工作过......

    页面置换算法实验报告(五篇模版)

    计算机体系结构 实验报告 班级:计科姓名:张华敏学号:0902班0909090814 FIFU算法 一, 实验内容: 编写一段程序来模拟页面置换算法中的FIFU算法的实现 二, 算法设计: 设置一个产生......

    虚拟内存页面置换算法实验报告[合集五篇]

    软件学院上机实验报告 课程名称:操作系统原理实验项目:虚拟内存页面置换算法实验室:地狱 018姓名 : 死神学号:专业班级 : 实验时间:2015/12 / 13 实验成绩 评阅教师一、实验目得及......

    页面置换算法模拟,实验报告[共5篇]

    中北大学软件学院 实 验 报 告 专业 软件工程 课程名称 计算机操作系统学号 姓名辅导教师 张静 成绩 实验日期 2015、11、20 实验时间1 实验名称 :实验四页面置换算法模拟 2、......

    操作系统 七次实验报告 常用页面置换算法模拟实验

    操作系统课程第七次实验报告姓名学号系计算机任课教师指导教师评阅教师实验地点综合楼B102实验时间2012-9-26实验课表现出勤和个人表现Q1(15+15(组长评分)=30分)得分:实验总分(......

    自荐书封面和自荐书格式及页面设计

    自荐人:xxx 毕业学校: xxxxx 求职意向: xxxxx 联系电话:xxxxxxxxx 自荐信尊敬的领导:封自荐信,向您展示一个完全真实的我。 我叫感谢您在百忙之中垂阅我的自荐书,怀着对贵的......