微内核操作系统minix消息机制评测09656

微内核操作系统minix消息机制评测09656

ID:33846297

大小:104.60 KB

页数:3页

时间:2019-02-28

微内核操作系统minix消息机制评测09656_第1页
微内核操作系统minix消息机制评测09656_第2页
微内核操作系统minix消息机制评测09656_第3页
资源描述:

《微内核操作系统minix消息机制评测09656》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、交通科学第31卷第1期武汉理工大学学报(与工程版)Vol.31No.12007年2月JournalofWuhanUniversityofTechnologyFeb.2007(TransportationScience&Engineering)*微内核操作系统Minix消息机制评测1,2)1)王智黄河(武汉理工大学网络信息中心1)计算机科学与技术学院2)武汉430063)摘要:以基于微内核设计并实现的Minix操作系统为例,针对基于微内核设计的现代操作系统中所特有的消息机制,分析其设计原理与实现方法,指出其在系统中的重

2、要性.提出消息机制性能评测对象是一个完整的消息发送/接收过程的观点.给出了对Minix消息性能评测的方法、源程序和评测结果,提出提高微内核操作系统消息性能的建议.关键词:微内核操作系统;消息机制;Minix;性能评测中图法分类号:TP3161Minix操作系统层中是否有I/O任务进程需要运行,如有,使其一直运行到阻塞;再检查第3层中是否有服务器进Minix操作系统[1]是由荷兰学者Tanenbaum程需要运行,如有,也使其一直运行到阻塞;最后完全基于微内核思想设计并实现的一个类Linux检查第4层中是否有用户进程需要

3、运行,如有,使以教学为目的的现代操作系统.由于其规模小、完其至少运行一个时间片,然后使其阻塞,再调度下全基于微内核设计、丰富的文档和在新闻组一个等待运行的用户进程;如没有一个进程正等待运行,则调度空闲进程Idle运行.comp.os.Minix上,KeesJ.Bot等多位专家及时解答关于Minix的各种疑难问题,所以是用来1.1Minix中消息机制的设计原理与实现方法研究改进基于微内核设计的操作系统的首选操作Minix提供了3条原语来发送和接收消息,系统.它们均通过C库例程调用.它们分别是:(1)向进由于采用微内核结

4、构,Minix本身就是一组程dest发送一条消息.send(dest,&message);进程的集合.Minix系统结构可分为4层,如图1.(2)从进程source(或任何地方)接收一条消息.各层由一系列进程组成,各进程之间采用消息进receive(source,&message);(3)用来发送一条消行通信,每个进程都只和它相邻层或同层中的进息,并等待同一个进程的应答,send—rec(src—dst,程使用消息进行通信,但用户进程仅仅只能向第3&message).层的服务器进程发送消息,系统强制执行这一限以上3个

5、与消息有关的函数在Minix2.0.4的制.所有进程由第1层中的调度程序统一调度运386以上版本(以下同)中定义在/usr/src/lib/行,第1层到第4层优先级依次降低.i386/rts/—sendrec.s汇编语言源文件中,都在将执行库函数调用时的参数存入相应寄存器中后,使用“intSYSVEC”系统调用来调用相应函数.1.2消息机制在微内核操作系统Minix中的重要性和测试必要性图1Minix的4层结构在基于微内核设计的Minix操作系统中,内Minix使用的进程调度算法是:先检查第2核只是操作系统的一个很小

6、的部分,文件管理、内收稿日期:2006-07-10王智:男,27岁,硕士,主要研究领域为微内核操作系统与网络*国家863计划项目资助(批准号:2003AA1Z2020)第1期王智,等:微内核操作系统Minix消息机制评测·25·存管理、网络服务等都作为一个个服务置于内核定数目消息所用时间.之外,任何不能在一个部分中全部完成的工作都程序段1:Minix消息性能测试(用户程序)[2]要使用消息与其他部分通信以完成全部任务.#defineOK01)设备硬件中断被各设备的中断处理程序#defineTEST—MESSAGE77

7、/*测试所用消息编号#defineXXX(-9)/*测试任务进程号转化成一条消息发送给相应的驱动程序,往往驱intmain(void)动程序将此中断事件初步处理后又发送一条消息{给相应的服务器进程以进一步处理.longi;2)用户程序中的系统调用,被转化为一条消intr=0;息发送给相应的服务器进程,此服务器进程为了messagem;完成所需要的任务可能又向其他服务器进程或系m.m—type=TEST—MESSAGE;统内核发送相应的消息,即一个系统调用可能要for(i=0;i<1000000;i++){经过发送/接

8、收多条消息才能够完成预期的任务./*测试非测试对象用时间时将下一语句注释掉1.3Minix中消息机制性能测试对象r=sendrec(XXX,&m);消息机制的测试对象是一个完整的消息发if(r!=OK){printf(“%s/n”,“sendrecerror!”);送/接收过程,其中包括发送消息、接受消息和一exit(1);次进程调度三个部分,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。