(计算机应用技术专业论文)微机接口虚拟实验的研究.pdf_第1页
(计算机应用技术专业论文)微机接口虚拟实验的研究.pdf_第2页
(计算机应用技术专业论文)微机接口虚拟实验的研究.pdf_第3页
(计算机应用技术专业论文)微机接口虚拟实验的研究.pdf_第4页
(计算机应用技术专业论文)微机接口虚拟实验的研究.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

(计算机应用技术专业论文)微机接口虚拟实验的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华中科技大学硕士学位论文 摘要 随着计算机网络技术的不断成熟和进步,使得基于网络的远程教育成为可能。 作为网络远程教育不可或缺的一部分,虚拟实验的研究成为当前研究的热点。 分析了虚拟实验技术在远程教育中应用的重要意义,回顾了国内外在相关课题 上的研究成果。对微机接口的虚拟实验进行了探索性工作,提出了一个可编程控制 模型。 在分析了真实的微机接口实验系统的组成和m s d o s 和w i n d o w s9 x 操作系统下 用户控制程序和系统硬件的交互机制的基础上,我们得到了构建虚拟实验模型的思 路,即在用户控制程序和虚拟仪器之间引入软接口。结合微机接口虚拟实验环境的 具体要求,明确了软件接口的功能,即进行i 0 、中断指令的截获和对虚拟仪器的中 断进行虚拟。对抽象的虚拟实验模型进行了形式化定义。 在对8 0 3 8 6 和w i n d o w s9 x 的体系结构分析的基础上,我们对抽象的虚拟模型进 行了具体化,构建了w i n d o w s9 x 下具体的虚拟实验模型,并对模型的工作原理进行 了具体分析。 对v x d 技术进行了分析,并用v x d 技术实现了软接口的功能。对动态链接库和 虚拟仪器建模进行了分析,并用动态链接库技术实现了虚拟仪器驱动,用正向建模 技术实现了虚拟步进电机。 实验结果表明,可编程控制模型不仅能有效的解决微机接口的虚拟实验问题, 而且在某些方面甚至优于真实的硬件实验。该可编程控制模型也为其它控制类的虚 拟实验的构建提供了一种方法。 关键词:微机接口,虚拟实验,虚拟设备驱动程序 华中科技大学硕士学位论文 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to f c o m p u t e rn e t w o r k ,t h e r ei sag r e a t ep r o b a b i l i t yo f t h e r e m o t ee d u c a t i o nv i ai n t e m e t b e c a u s ev i r t u a l e x p e r i m e n t i sak e yp a r to ft h er e m o t e e d u c a t i o n :m a n y c o u n t r i e sp a ym u c h s t u d y t ot h ef i e l d t h et e c h n o l o g yo fv i r t u a le x p e r i m e n ta n dt h ee n l i g h t e n m e n to fi t s a p p l i c a t i o n i n r e m o t ee d u c a t i o na r ea l s ob e e nb r i e f l yd i s c u s s e d a ni n i t i a lw o r ki nt h ef i e l do fv i r t u a l e x p e r i m e n to fc o m p u t e ri n t e r f a c eh a sb e e nd o n ei nt h i st h e s i s ap r o g r a m m a b l ec o n t r o l m o d e lh a sb e e np r o v i d e d b ya n a l y s i n gt h e s t r u c t u r eo fp r a c t i c a l c o m p u t e r i n t e r f a c e e x p e r i m e n ta n d t h e m e c h a n i s mb e t w e e nu s e r p r o g r a m a n d s y s t e m h a r d w a r eo nm s d o sa n dw i n d o w s 9 x ,w e g e taw a y w h i c hb u i l d sas o f t w a r ei n t e r f a c eb e t w e e nu s e rp r o g r a ma n d s y s t e mh a r d w a r e s o f t w a r ei n t e r f a c ec a nc a p t u r ei oa n di n t e r r u p ti n s t r u c t i o n ,a n ds e n dav i r t u a li n t e r r u p tt o v i r t u a li n s t r u m e n t w ed e f i n eaa b s t r a c tv i r t u a lm o d e l b ? a n a l y z i n g s t r u c t u r eo f8 0 3 8 6a n dw i n d o w s 9 x ,w e c o n c r e t et h ev i r t u a l m o d e l ,b u i l dav i r t u a lm o d e l o nw i n d o w s9 xa n da n a l y s et h em e c h a n i s m md i s c u s st h et e c h n o l o g yo f v x d ,c o m p l e t et h ef u n c t i o no fs o f t w a r ei n t e r f a c eb y v x d w ed i s c u s st h et e c h n o l o g yo fd l la n d b u i l d i n gv i r t u a li n s t r u m e n tm o d e l ,c o m p l e t e v i r t u a ld r i v e rb yd l la n dv i r t u a ls t e p m o t o r b yf o r w a r dm o d e l i n g a st h er e s u l t s h o w s ,t h ep r o g r a m m a b l ec o n t r o lm o d e lc a nn o to n l ys o l v ev i r t u a l e x p e r i m e n t o f c o m p u t e ri n t e r f a c e ,b u t a l s oa c h i e v eb e t t e re f f e c tt h a n p r a c t i c a l e x p e r i m e n t t h em o d e lp r o v i d e saw a y t ob u i l do t h e rc o n t r o lv i r t u a le x p e r i m e n t k e yw o r d s :c o m p u t e ri n t e r f a c e ,v i r t u a le x p e r i m e n t ,v x d i j 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他 个人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体, 均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名:卒励) 日期:缈年肇月甥日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校 有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅 和借阅。本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数 据廑送行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密口,在年解密后适用本授权书。 本论文属于 不保密口。 ( 请在以上方框内打“4 ”) 学位论文作者签名 日期:w 口“年v 月吕日 指导溯虢彩o e i 庐吼晦 矾 华中科技大学硕士学位论文 1 1 课题背景 1 绪言 随着计算机网络技术的不断成熟和进步,使得基于网络的远程教育成为可能。 运用现代计算机网络和多媒体技术实行远程网络教育,不仅具有传统远程教育突破 时空限制,覆盖面广、全方位为各类社会成员提供教育服务的优势,还克服了传统 远程教育在交互上的局限性,形成了一种主动的、协作的、开放的教育环境“。发 展基于的网络远程教育,是符合我国国情的最具潜力的一种新型教育模式。 远程实验教学是整个远程教育中的一个重要组成部分。1 。但远程实验教学与远 程教育中的理论教学的方式是有区别的:在远程教育中,理论课的许多课程是通过 远距离的多媒体教学手段完成的;而实验的基点是学生必须亲自动手实践,因此相 对于远程教育的理论教学模式而言,它是近距离性的。这样,在远程教育中就产生 了实验教学与远程教学模式不适应的状况。为了解决实验的近距离性与教学手段的 远距离性的矛盾,国内外一些远程教育机构曾采用过各种方法。例如,为了解决科 学技术课程远程教学的实验问题,英国开放大学曾专门设计了家庭实验箱,编写了 详细的实验指导书,并将它们一起寄给学生使用,用完再寄还。此外如借用实验室、 实验流动车、集中实验等也是曾用过的方法。但这些方法,有的仅适合少数或简单 实验的情况,有的由于与理论教学不相衔接而致效果不佳。直到2 0 世纪9 0 年代崛 起的虚拟实验才给远程实验教学带来了希望,它可使实验教学完全远程化,因而从 根本上解决目前的实验教学与远程教育模式不相适应的状况。因此,虚拟实验成为 当前研究的热点“1 。 虚拟实验是随着现代计算机技术的进步而产生和发展的一种实验模式。虚拟实 验主要依托的技术是虚拟现实( v i r t u a lr e a l i t y ) 技术和虚拟仪器( v i t u a l i n s t r u m e n t ) 技术,实际上是计算机科学与技术的延伸。所谓虚拟现实技术。就是 充分利用高性能的计算机硬件与软件资源及各类先进的传感器的一种集成技术,其 主要技术构成为实时三维图形生成的技术、多传感交互技术以及高分辨率显示技术 等“。”。虚拟现实技术能够生成实时的、具有三维信息的人工虚拟环境,演练者( 操 作人员) 可以进入其中,产生逼真的身临其境感,并像在真实世界中一样地与该环 境进行实时操纵和相互交流。虚拟现实技术现已迅速成熟和发展,并在许多领域得 l 华中科技大学硕士学位论文 到广泛应用。所谓虚拟仪器就是指具有虚拟仪器面板的个人计算机,它是计算机资 源、模块化功能硬件与用于数据分析、过程通信及图形用户界面的有机结合融。与 传统仪器相比较,虚拟仪器自身不带任何仪器面板,它是利用计算机强大的图形环 境与在线帮助系统,建立图形化的虚拟仪器面板,从而完成对仪器控制、数据采集、 数据分析以及数据显示。 虚拟实验在广义上似乎也是一种模拟实验,但它在实验的本体逼真性和应用普 适性,以及在给予实验者现场实时感受和实验效果等方面,传统的计算机模拟实验 是根本无法相比的。它主要有以下优点o0 。:临时性,指学生可以感到自己处于虚拟 实验室的体验,产生一种逼真的存在感;自主性,指学生可以自主的选择或组合虚 拟实验环境;多感受性,指学生在虚拟实验室环境中考察时具有多种感知能力,如 视觉、听觉、触觉、运动觉、嗅觉、味觉等;实时交互性,指学生在虚拟实验室中 与物体、事件相互作用的真实程度;形象性,指虚拟实验可以把枯燥的实验变成形 象的实验;安全性,指在虚拟实验室里做实验远比在现实实验室安全。 虚拟实验一般是通过虚拟实验室而进行的。所谓虚拟实验室,是指由虚拟现实 技术生成的一类适于进行虚拟实验的实验系统,包括相应实验室环境、有关的实验 仪器设备、实验对象以及实验信息资源等。虚拟实验室可以是某一现实实验室的真 实实现,也可以是虚拟构想成的实验室。在虚拟实验室中,实验者有逼真的感觉, 他似乎是在真正的现实实验室里近距离进行现场操作。它主要有以下特点“:仿真 性,在虚拟现实技术和虚拟仪器技术的支持下,虚拟实验室与真正的实验室同等完 美,虚拟仪器和真实仪器功能相同,操作方法一样,实验者在虚拟实验室里做实验、 训练技能和汲取知识,与在现实实验室里同样方便;开放性,虚拟实验室有可能给 任何实验者在任何时间里广泛地提供赖以学习、工作和研究的场所:超时空性,虚 拟实验室能够将过去世界、现在世界、未来世界、微观世界、宏观世界等拥有的物 体和发生的事件单独呈现或进行有机组合,并随时随地供给实验者进行实验;可操 作性,实验者可以通过使用专门设备,用人类的自然技能实现对虚拟实验室的物体 或事件进行操作。 虚拟实验最大的优点是它的互动性,同时互动性的实现也是一个最大的难点。 在实验者进行虚拟实验的过程中,虚拟仪器如何针对实验者的所有操作序列进行正 确的响应,使实验者获得与进行真实实验完全相同的体验,是构建虚拟实验的核心 问题。尤其在控制类的相关实验中,可编程控制是交互性的集中体现。研究可编程 虚拟实验不仅可以解决特定领域内相关课程中虚拟实验的互动性问题,还可以为解 决虚拟实验环境的构建提供一种有效的思路。 2 华中科技大学硕士学位论文 1 2 国内外研究状况 目前国内外有很多组织都已经开展了虚拟实验系统的研究和建设工作,但由于 开展远程实验的理论和技术目前还不是很完善,所以已经建好并投入使用的虚拟实 验系统并不多。 国外的一些虚拟实验系统如下: r o h r i gc 等建立的一种交互式的网上学习环境,客户端在安装一个用来访问远 程实验室的称为s o f t m e d i a 软件后,学生就可以远程访问远程的真实设备,在网上 做一些简单的交互式硬件实验“。加拿大的q u a n s e rc o n s u l t i n g 公司的w e b l a b 系 统在w e b 上通过远程控制的方式进行直升机模型的控制实验n 2 1 。密歇根大学的h s c o t tf o g l e r 等研制的v i c h e r 系统将虚拟现实技术应用在化学工程教育的领域, 实现了催化剂钝化和非恒温反应等虚拟化学实验用于化学工程教育和设计“”。美国 的j o h ncw a l l e r 等设计了一个虚拟的气相色谱质谱仪供学生在w e b 上学习使用“。 澳大利亚r m i t 大学的j o h nb a l l 等设计的虚拟热传递实验可以帮助学生快速地掌握 这个抽象的概念“。加拿大l i c e f 研究中心的hhs a li a h 等设计了一套通用的远 程交互式虚拟电子工程实验软件,使得对电子工程虚拟实验的配置和重新设计工作 得到简化“”。t r u m h o w e rrd 等设计了一个生物医药实验室,该实验系统主要用 虚拟仪器来构建实验室“。h a h nd 等设计了一个用于电路芯片开发和课程实验的虚 拟设备,通过使用v e r i l o g 进行硬件仿真,和c + + 建立宿主环境驱动,可以仿真芯 片与环境的交互,提高学习效率,提高学生对芯片开发的认识。 同国外相比,国内的虚拟实验系统的研究还处于萌芽状态,一些虚拟实验系统 如下: 华中科技大学计算机学院为计算机有关课程建立了网上虚拟实验室,该系统采 用客户服务器结构,在服务端主要完成实验的管理,在客户端实验者可以在虚拟实 验的集成环境中选择虚拟仪器进行实验。 总结当前国内外的经验,可以看出,从理论上来讲,现在虚拟实验问题的解决 主要有四种思路,模拟演示实验、远程设备控制实验、基于虚拟仪器的虚拟实验和 基于w e b 的虚拟实验。 i 模拟演示实验。网络条件下的演示实验主要有视频演示和动画演示两种方 式。视频演示是指将演示实验的过程完全拍摄下来,经过编辑和处理后放到服务器 上供学生和教师在教学过程中使用。动画演示是指采用动画制作软件对实验过程进 行演示。 3 华中科技大学硕士学位论文 2 远程设备控制实验。远程设备控制是指实验者通过与网络连接的计算机输入 数据,这些数据通过网络传送到服务器,服务器对这些数据进行处理以控制相关实 验设备工作,再收集实验数据传送到实验者的计算机上。其优点是技术比较成熟, 难度较小,容易实现,而且关于计算机与可编程设备的通讯已经有了规范的协议 i e e e 4 8 8 2 ,但网络传输量大,延迟比较大,还必须存在真实的实验设备。在现在的 网络条件下,多用于局域网内部。 3 基于虚拟仪器的虚拟实验。在网络教学的条件下,理工科实验要使用的大量 的专业实验仪器无法被实验者使用,而使用虚拟仪器技术可以在屏幕上提供给实验 者多种专业仪器来完成实验。虚拟仪器技术具有高效、易用、开放、灵活、更新快、 功能强大、性价比高、用户定义等优点。 s m i t h ,m r 最早提出了虚拟仪器的概念:虚拟仪器对于给它的命令必须做出与 真实仪器相同的反映,这意味着,从用户的角度来看,虚拟仪器给使用者提供的接 口与实际仪器相同;虚拟仪器的操作必须给编写程序者以真实的体验;虚拟仪器必 须保证能够在虚拟环境运行的代码在真实环境同样能够运行;控制虚拟仪器的代码 平台无关,即控制虚拟仪器不需要专门的开发语言。“。 目前虚拟仪器的开发和研究是大学理工科专业实验研究的重要方向。利用计算 机技术可以开发出多种仪器的软件包,利用一台计算机就可以构成一个完整的实验 室设备系统。在网络教学条件下,我们可以在服务器端放置大量的虚拟仪器软件包。 实验者可以通过网络来访问服务器,下载软件包进行实验或直接在服务器提供的实 验交互界面上进行实验。 4 基于w e b 的虚拟实验。基于w e b 的虚拟实验即在w e b 中创建一个可视化的三 维环境,其中每一个可视化的三维物体代表一种实验对象。用户可以使用系统提供 的交互手段对这些三维物体进行操作。虚拟实验环境可以针对不同的实验科目分别 设计具体的实验环境。虚拟实验环境要具有以下基本功能:提供基于w e b 的三维立 体环境:提供可视化的实验对象;提供可视化操作机制;提供实验者之间的交流机 制;提供实验者之间的协作机制。 从实现技术的角度来讲,当前的虚拟实验的实现主要采用以下几种技术,j a v a 技术、组件技术、v r m l 技术、q u i c k t i m ev r 技术、l a b v i e w 技术和虚拟机技术。 1 使用j a v a 进行开发。j v m ( j a v a 虚拟机) 的存在使得使用j a v a 开发的程序 具有源代码级可移植性和二进制级可移植性。另外j a v a 语言的下标检查机制和自动 内存管理机制也为其增加了较强的稳定性和安全性。目前使用这种技术开发出的系 统有:普渡大学的交互式硬件实验系统。2 “、北京大学的3 w n v l a b 系统等。 4 华中科技大学硕士学位论文 2 使用组件技术进行开发。使用微软的组件对象技术使得不同软件开发的组件 在网络上可以互相进行操作。使用组件技术进行开发的另一个好处在于它的代码复 用性,这一点对持续开发过程尤为重要,这样我们就可以构造一个可重用的虚拟设 备库。“。利用组件技术开发出来的系统有:国防科大的虚拟示波器。、武汉大学 的虚拟电子实验室“。 3 使用v r m l ( v i r t u a lr e a l i t ym o d e l i n gl a n g u a g e ) 技术进行三维虚拟实验室 的开发。v r m l 是在i n t e r n e t 上营造虚拟环境的技术。它在w e b 网上创建可导航的、 超链接的三维虚拟现实空间。v r m l 的基本工作原理可概括为:文本描述、远程传输、 本地计算生成o “。所谓文本描述指v r m l 并不是用三维坐标点的数据来描述三维物 体的,因为这样会有很大的数据量,在i n t e r n e t 上传输会遇到很多困难,v r m l 用 类似h t m l 标记文本语言来描述三维场景,就像我们的编程语言,比如,一个立方体 的描述文本是:b o x ( s i z e3 0 3 03 0 ) 。v r m l 就是一种描述语言标准,规定了用 来描述三维场景的文本描述语言:远程传输是指用户浏览v r l 描述的虚拟场景时, 需要通过i n t e r n e t 将描述场景的文本传送到本地,一般来说,文本描述是嵌在w e b 页面中,在浏览器请求相应页面对与页面描述文本一起传送本地;本地计算生成是 指描述虚拟场景的数据传送到本地后,浏览器对它进行解释计算,动态地生成虚拟 场景,比如,描述球形的文本,浏览器会在屏幕上绘制一个立体的球形。将v r m l 技术运用于虚拟实验室的开发有以下几个好处:基于i n t e r n e t 、分布式、三维、动 态交互、低用户配置需求、低网络带宽要求、开放式国际标准、多媒体集成、境界 逼真等。在2 1 世纪中,v r 技术和远程教育的结合将是其最重要的应用之一。 4 q u i c k t i m ev r 技术。q u i c k i i m ev r ( q t v r ) 是一种基于静态图像的、在微 机平台上能够实现的初级虚拟现实技术。它的基本特点是能够实现对一个物体或空 间进行3 6 0 度全景观察。利用它来创建虚拟场景,我们可以在一个大厅里环绕四周, 以任意一个角度观察这个空间,也可以围绕某一个物体,在3 6 0 度的范围观察它。 基于静态图像的虚拟现实技术,在三个方面优于普通意义上的虚拟现实技术: 首先,在环境要求上,普通意义上的虚拟现实技术需要特殊的专用设备,如头盔式 显示器、高性能的图形工作站等,价格昂贵难以普及,而q t v r 系统对硬件没有特殊 要求,在普通微机上便可实现虚拟现实环境,它的成本极低。其次,从目前国内外 现有v r 系统上来看,都采用计算机生成图像的方式来建立三维模型,图像的分辨率、 质量、复杂度、真实性都不是很高,复杂场景造型数据量巨大,而且常常由于场景 的快速切换出现抖动和延迟。而q t v r 系统采用3 6 0 度全景摄影照片作素材,根据真 实世界影像来进行三维建模,所以图象质量高,立体效果好,真实性极强,另外, 华中科技大学硕士学位论文 q t v r 系统采用先进的图像压缩与还原算法,不仅使造型数据量小,而且在空间呈献 时,没有很大的延迟:第三,目前大部分v r 系统的制作都需要编程来生成三维模型、 检测特殊外部设备的状态及反馈、进行交互控制等,这就限制了普通人涉及这个领 域的开发,而q t v r 系统的v r 场景的生成模式是图像拍摄、数字化( 扫描) 、生成场 景播放,不需要任何编程知识,任何普通人都可以胜任”1 。 5 使用专用平台和开发语言,如l a b v i e w ( 1 a b o r a t o r yv i r t u a li n s t r u m e n t e n g i n e e r i n gw o r k b e n c h ) 。这也是虚拟仪器的开发方法。这种方法就是以计算机作 为仪器统一的硬件平台,充分利用计算机的运算、存储、回放、调用、显示及文件 管理等智能化功能,同时把传统仪器的专业化功能和面板控件软件化,使之与计算 机结合构成一台从外观到功能都完全与传统硬件仪器相同,同时又充分享用了计算 机智能资源的全新仪器系统。其中最具有代表性的图形化编程软件是美国n i 公司的 l a b v i e w 。l a b v i e w 是一种基于图形编程语言( g 语言) 的开发环境,它具有十分强大 的功能,包括数值函数运算、数据采集、信号处理、输入输出控制、信号生成、图 像的获取、处理和传输等等。l a b v i e w 与c 、p a s c a l 等传统编程语言有着诸多相似 之处,如相似的数据类型、数据流控制结构、程序调试工具,以及模块化的编程特 点等。但二者最大的区别在于:传统编程语言用文本语言编程,而l a b v i e w 使用图形 语言( 即各种图标、图形符号、连线等) 编程,界面非常直观形象,而且使用的都是 测试工程师们熟悉的旋钮、开关、波形图等,因此是一种直觉式图形程序语言。对 于构建虚拟仪器,l a b v i e w 有许多特点和优势,诸如:仪器控制与数据采集的图形 化编程;直观明了的前面板用户界面和流程图式的编程风格;内置的编译器可加快 执行速度;数据采集d a q 函数库可让用户采集测量信号或发出控制信号,适合应用 于快速且直接的控制;6 5 0 多种仪器驱动程序,可驱动超过5 0 多家厂商所制造的仪器; 内容丰富的高级分析库,可进行信号处理、统计、曲线拟合以及复杂的分析工作; 利用a c t i v e x ,d d e 以及t c p i p 进行网络连接和进程通信;适用于w i n d o w sn t 9 5 、 m a co s 、h p 2 u x 、s u n 以及c o n c u r r e n t 实时计算机,等等。l a b v i e w 现成的人机界面 工具可帮助用户很快地构成所需的图形化人机界面,包括趋势图、按钮、l e d 指示 灯和图表等,完全无需从头开始去设计这些元件。并可更进一步以l a b v i e w 的p c t 具 箱或其它绘图软件来订制人机界面元件,藉以呈现仪控符号和系统流程,l a b v i e w 的特色还在于拥有功能超强且庞大的分析函数库,足以与专业数学分析套装软件相 匹敌。 6 虚拟机技术。所谓虚拟机就是指执行应用程序的虚拟运行时环境。它虚拟了 全部或者大部分应用程序可以访问的资源,如寄存器、内存、外设等,每个虚拟机 6 华中科技大学硕士学位论文 都有自己独立的地址空间。采用虚拟机技术,不仅可以实现跨平台,而且可以在既 定的系统下,模拟任何所需要的任何硬件平台。如加拿大卡尔加里大学使用虚拟机 技术,在普通的p c 和w i n d o w s 系统下面,模拟了p o w e r p c ( r i s c 结构) 处理器和摩托 罗拉6 8 k ( c i s c 结构) 的芯片,使得实验者可以不需要专用的实验设备的基础上进行 嵌入式系统课程的实验。北京大学也采用虚拟机技术来辅助芯片的开发,取得了良 好的效果。 1 3 本课题的研究工作 从前面的讨论中,我们可以看出,虚拟实验在技术上最大的难题就是交互性。 即虚拟实验系统必须对实验者的输入,反馈出同实际设备完全相同或者类似的响应。 本课题研究的是微机接口技术这门课的虚拟实验。主要研究实验者的控制程序 与虚拟仪器的交互机制和虚拟仪器的构建,并在这些研究的基础上建立了微机接口 虚拟实验模型。微机接口虚拟实验的研究,为我们提供了构建相关控制类虚拟实验 的思路。 首先,我们在研究实际的微机接口实验的基础上,提出了一个较抽象的微机接 口的虚拟实验模型。接着,对w i n d o w s9 x 操作系统的体系结构逆行了分析,在此基 础上,对抽象的虚拟模型进行了具体化,构建了w i n d o w s9 x 下具钵的虚拟实验模型。 然后,对这个模型中的软接口和虚拟仪器的实现技术进行了研究,最后,对前面的 研究工作进行了总结,并对需进一步完善和值得探讨的地方进行了展望。文章的组 织也是按这种方式进行的。 华中科技大学硕士学位论文 2 微机接口虚拟实验模型 本章首先对当前国内一些厂商生产的微机接口实验系统的组成和特点进行了分 析,然后抽象出了当前真实微机接口实验系统的组成和特点。接着,分析了m s - d o s 和w i n d o w s9 x 操作系统下用户控制程序和系统硬件的交互机制,发现在这两种操作 系统下用户控制程序和系统硬件的交互的一个共同点,即可以通过软接口进行交互。 最后,仿照真实微机实验系统的组成和应用程序与系统硬件的交互机制,结合虚拟 实验环境的要求,提出了一个微机接口的虚拟实验模型。 2 1 真实微机接口实验系统的组成和特点 当前国内开发和生产微机接口实验系统的厂家很多,如启东达爱思计算机公司、 胜西公司、华工赛百数据系统公司。使用这些公司的实验系统都能完成微机接口的 基本实验,如8 2 5 5 的实验、8 2 5 3 的实验、a d 转换实验、d a 转换实验、中断实 验等。 启东达爱思计算机公司的d a i s 一8 0 8 6 h + 型实验系统主要由p c i 接口板和面包板 组成。其实验室组建方案主要是计算机+ 实验系统。该系统的主要特点是选择高速度 大规模可编程器件作为系统的主控芯片,具有完善的硬件断点、无限止暂停( 夭折 处理) ,w i n d o w s d o s l e d 多个操作平台自由选择,提供单步、断点、连续等丰富 的调试手段。提供双踪p c 示波器,通过集成开发环境可在计算机屏幕上显示被测试 端的输出波形。同时配备开发应用版和示教综合版集成软件,形成了仿真开发与教 学实验相结合的多用途实验型开发系统,充分激发了学生的动手及思维能力,有效 提高了实验效率、实验成功率和教学质量。 胜西公司的s x l 一1 0 0 型实验系统主要由功能实验板、p c i 接口板和面包板三部 分组成。其实验室组建方案有两种:方案一,实验系统+ 示波器;方案二,计算机+ 实验系统+ 示波器。该系统的主要特点有两点:其一,采用模块化设计,降低了成本, 提高了灵活性;其二,该系统软件配有系统调试软件,系统调试软件分d o s 版和 w i n d o w s 版两种,都是中文、多窗口介面。集源程序编辑、工程文件编译、连接、 调试于一体,每项功能均为汉字下拉菜单,简明易学。经常使用的功能均各有热键, 这样可以提高程序的调试效率。 8 华中科技大学硕士学位论文 华工赛百数据系统公司的m f i d 一2 型实验系统主要由功能实验板、i s a 或p c i 接 口板和扩展主板三部分组成。其实验室组建方案主要是计算机+ 实验系统+ 示波器。 该系统的主要特点是,采用模块化设计,提供了灵活性,通过实验系统各个模块的 灵活组合,学校可自行开发其他实验项目。同时它也配备了开发应用版和演示版的 集成软件,有效提高了实验效率、实验成功率和教学质量。 综上所述,我们可以看出,当前真实的微机接口实验系统一般都由实验平台集 成软件、计算机、驱动板、扩展主板和各种实验板卡组成,如图2 1 所示。 实 验各 平扩 种 台 计驱 展实 集 算动 主验 成 机板 板板 软 卡 件 图2 1 微机接口实验系统组成 实验平台集成软件主要是为用户提供一个软件开发平台,让用户在此平台上能 方便地开发、调试、运行自己的应用程序。该软件一般运行在m s d o s 环境或w i n d o w s 环境下。用户编写的控制程序都是1 6 位的d o s 程序。 驱动板,用于总线信号转换与驱动。它和主机通过i s a 插槽或p c i 插槽连接, 和扩展主板之间通过一条扁平电缆相连接。 扩展主板,它用来接收来自驱动卡的主机总线信号,在扩展成多个标准接口和非 标准接口,可以连接各种具有标准接口和非标准接口的微机控制设备。 各种实验板卡是根据实验需要设计的控制设备,如步迸电机、音乐发生器、声 光报警器等。 采用这种组成结构的主要的特点是,灵活性好,用户可以通过各种实验模块的 组合开发新的实验项目,此外提供的m s d o s 或w i n d o w s 下的集成开发环境可以提高 用户的实验效率。 2 2 应用程序和系统硬件的交互 我们以m s d o s 操作系统和w i n d o w s9 x 操作系统下的应用程序和系统硬件的交 互为例进行分析。 幅一d o s 操作系统是1 6 位的单任务操作系统,在该操作系统下用户的应用程序 9 华中科技大学硕士学位论文 和系统资源的交互过程如图2 2 所示。“。 图2 2d o s 下应用程序与系统硬件交互图 从图2 2 中我们可以看出,m s d o s 操作系统采用模块化和层次化相结合的软件 技术,既把m s d o s 分成几个功能相对独立的模块,又使这些模块之间呈现层次关系。 但是m s d o s 缺乏对设备i 0 全面控制的机制。 内核与硬件间的两层隔离。在内核与硬件之间有b i o s 和r o m - b i o s 两层隔离, 保证了d o s 内核的设备独立性。i o s y s 模块是d o s 的基本输入输出系统b i o s ,它调 用r o m b i o s 的设备基本i o 功能的软中断,向内核提供设备驱动程序服务。这样, d o s 内核模块的代码中没有一条输入输出指令,也没有这类软中断调用指令。 r o m - 8 1 0 s 是机器提供的固化程序模块,它负责系统硬件的检查并提供一个自举过程 负责把操作系统引导记录读入内存;它安排了系统硬件中断并提供了这些中断的中 断处理程序;尤为重要的是,它通过对接口编程直接对设备进行i o 操作,并把这 些实现的基本i o 功能以软中断的形式向上提供服务。 用户程序一般只调用d o s 内核提供的系统功能( 称系统调用) 和d o s 中断功能。 但是,用户程序也可绕过d o s ,直接调用r o m - b i o s 的设备i o 中断,甚至可直接对 设备硬件进行编程。 w i n d o w s9 x 是3 2 位的多任务操作系统,在该操作系统下用户的应用程序和系 统资源的交互过程如图2 3 所示。 i o 华中科技大学硕士学位论文 fd o s 应用程序w i n l 6 应用程序w i n 3 2 应用程序 i!i d o s 虚拟机 s y s t e m 虚拟机 i: 虚拟机管理器( v m m ) tf 00 v x o l 1 v x d r o y b i o s 基本i o 系统硬件 图2 3w i n d o w s9 x 下应用程序与系统硬件的交互图 从图2 3 中我们可以看出,w i n d o w s9 x 操作系统采用虚拟机、模块化和层次化 三者相结合的技术。既把w i n d o w s9 x 分成几个功能相对独立的模块,又使这些模块 之间呈现层次关系,同时又能使1 6 位程序和3 2 位程序在一个操作系统下运行,保 证了良好的兼容性。 由于虚拟机的作用,用户程序不能直接访问硬件,需要通过系统调用才能同系 统硬件进行交互。w i n d o w s9 x 可以对系统i o 进行全面控制。 通过上述对h i s d o s 和w i n d o w s9 x 操作系统下应用程序和系统硬件的交互过程 的分析,我们可以发现,通常应用程序和系统硬件的交互并不是直接进行的,而是 通过系统调用进行的,即在应用程序和系统硬件之间存在一个软接口,这个软接 口是两者交互的桥梁。 2 3 微机接口虚拟实验模型 所谓虚拟实验环境就是要求对真实的实验进行完全仿真。通过上述我们对抽象 出来的微机接口实验系统的硬件组成的分析,我们发现要构建微机接口的虚拟实验 系统,只需要对各种实验板专和应用程序与硬件之间的交互机制进行仿真。其中最 关键的是用户编写的控制程序和真实仪器的交互的仿真。仿照用户程序和系统硬件 可以通过软接口进行交互,我们可以在用户的控制程序和虚拟仪器之间也设置一个 华中科技大学硕士学位论文 软接口,这个软接口用作用户控制程序和虚拟仪器交互的桥梁。根据这种设想我们 提出了一个虚拟实验模型,使用该模型能够完成虚拟微机接口实验系统的构建。该 模型如图2 4 所示。 l 用户控制程序fj 各种虚拟仪器 、 ji 匠扭习 图2 4 微机接口虚拟实验模型 定义1 :虚拟模型= 。v 是模型中的各独立部分的集台,各独立部分 具有独立的功能和特征,能和其它部分交互。e 指的是各独立部分之间的关系的集 合。 定义2 :v = d a ,s i ,v i j 。d a 代表用户控制程序的集合。s i 代表软接口的集 合。v i 代表虚拟仪器的集合。 定义3 :d a = f a 。:i k ) 。用户控制程序a j 是用户最终进行实验时编写的控制 程序。对于用户编写的程序,我们没有任何的要求。不需要用户采用专用的编程语 言,不需要用户调用专门的函数库。一切都和实际环境中的操作相同。 定义4 :s i = i 。:ie k 。软接口i ,我们可以把它看作一个访问代理。”,它的 主要功能是用户控制程序和虚拟仪器之间交互的桥梁。由于我们对用户控制程序的 要求是,不需要用户采用专用的编程语言,不需要用户调用专门的函数库。一切都 和实际环境中的操作相同。因此,我们的软接口不能提供特殊的服务函数给用户控 制程序调用,这样在用户控制程序和软接口的通讯上存在困难,通过分析用户程序, 我们发现用户程序访问真实仪器的指令主要是向( 从) 某个指定的端口写入( 读出) 数据或开中断,而真实仪器通过硬件中断触发用户程序中自行编写的中断处理函数。 因此,如果软接口能截获用户控制程序的输入输出和中断指令,并虚拟硬件中断, 那么软接口就能完成用户控制程序和虚拟仪器的交互仿真”1 。因此,软接口的主 要功能是,截获用户控制程序的输入输出和中断指令,然后再把这些指令进行翻译, 并转发给虚拟仪器。软接口接收虚拟仪器的中断请求,然后再向用户控制程序发出 虚拟中断a 通过软接口,就可以实现用户控制程序和虚拟仪器之间的透明访问,能 华中科技大学硕士学位论文 获得和真实实验相同得实验效果,达到实验教学得目的。 定义5 :v i = d 。:i n 。虚拟仪器d 。是对真实实验板卡的仿真。基本上是模 拟硬件机制,能够根据接收的指令进行相应的动作,也可发出中断请求。 定义6 :e = 【d s ,s d ,s v ,v s ) 。关系d s 主要指的是d a 向s i 发出i 0 或中断指 令,s i 对这些指令进行处理。关系s d 主要指s i 对d a 发出虚拟中断,s i 执行中断 处理函数。关系s v 主要指s i 向v i 发送端口状态,s i 对这些状态进行处理。关系 v s 主要指v i 发送端口状态给s i 或对s i 发出中断请求,s i 对端口状态和中断请求 进行处理。 定义7 :d s = ( d s n a m e ,d a ,s i ,d s l d ,d s v a l u e ,d s p a r a m ,d s e x t e n d p a r a 【1 1 ) 。其中, d s n a m e 是行为名称;d a 是行为的发出者;s i 是行为的接收者;d s l d 是行为的标识: d s v a h e 是行为的值;d s p a r a m ,d s e x t e n d p a r a m 是行为的参数。 定义8 :s d = s d n a m e ,s i ,d a ,s d l d ,s d v a l u e ,s d p a r a m ,s d e x t e n d p a r a m ) 。其中, s d n a m e 是行为名称;s i 是行为的发出者:d a 是行为的接收者;s d l d 是行为的标识; s d v a l u e 是行为的值;s d p a r a m ,s d e x t e n d p a r a m 是行为的参数。 定义9 :s v = s v n a m e ,s i ,v i ,s v l d ,s v v a l u e ,s v p a r a m ,s v e x t e n d p a r a m 。其中, s v n a m e 是行为名称;s i 是行为的发出者:v i 是行为的接收者;s v i d 是行为的标识; s v v a l u e 是行为的值;s v p a r a m ,s v e x t e n d p a r a m 是行为的参数。 定义1 0 :v s = v s n a m e ,v i ,s i ,v s i d ,v s v a l u e ,v s p a r a m ,v s e x t e n d p a r a m 。其中, v s n a m e 是行为名称:v i 是行为的发出者;s i 是行为的接收者:v s i d 是行为的标识; v s v a l u e 是行为的值;v s p a r a m ,v s e x t e n d p a r a m 是行为的参数。 2 4 小结 在本章中,我们首先分析了真实的微机接口实验系统的组成和特点,接着分析 了m s d o s 和w i n d o w s9 x 操作系统下用户控制程序和系统硬件的交互机制,发现在 这两种操作系统下用户控制程序和系统硬件的交互的一个共同点,即可以通过软接 口进行交互。 在前面的分析基础上,我们结合虚拟实验的要求,得到了构建虚拟实验模型的 思路,即在用户控制程序和虚拟仪器之间引入软件口。最后,在对用户控制程序的 分析上,明确了软件接口的功能,即进行输入输出和中断指令的截获和对虚拟仪器 的中断进行虚拟,从而构建出我们的虚拟实验模型。对虚拟实验模型进行了形式化 定义。 华中科技大学硕士学位论文 3w i n d o w s9 x 下的虚拟实验模型 通过第二章的讨论,我们设计出一个微机接口的虚拟实验模型,但这个模型比 较抽象,是在较高层次上的探讨。在本章中,我们在上一章建立的微机接口虚拟模 型基础上,通过对i s t e lc p u 体系结构、寄存器结构、工作模式、w i n d o w s9 x 体系 结构、虚拟机、虚拟设备驱动程序( v x o ) 和虚拟机管理器( 、b i ) 探讨,进一步的 深化了上一章提出的虚拟模型,建立了w i n d o w s9 x 下具体的微机接口虚拟模型。 3 1i n t e l8 0 3 8 6 的体系结构 w i n d o w s9 x 是基于3 2 位硬件结构而设计的操作系统,因此要了解w i n d o w s9 x 操作系统的体系结构,必须首先了解3 2 位微处理器的体系结构: 微型计算机从i n t e l 公司的8 0 3 8 6 c p u 开始就进入到3 2 位微处理器时代,直到 今天的p e n t i u m 处理器,其处理器仍然是3 2 位结构,尽管其工作频率有了很大提 高,内核也采用了流水线和超标量等体系结构,但其微处理器在本质上,无论是从 体系结构看还是从内部寄存器结构看都具有很大的延续性和继系性

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论