操作系统
第34卷
V01.34
第17期
No.17
文章编号t
计算机工程
ComputerEngineering
2008年9月
September2008
文献标识码-A
中圈分类号 TP316
软件技术与数据库
100忙3428(2008)17—_0068一_03
构件化操作系统的跟踪调试方法
许康,李■,羹育昌
(中国科学技术大学计算机科学技术系,合肥230027)
■蔓:为了适应分布式构建化操作系统对性能调试的需求,采用了对构件化对象建立日志服务和增加构件化系统调用对进程的访问控制
的方法,从而为构件化操作系统设计出一种兼具逻辑性调试和性能调试功能的跟踪调试构件。该调试构件的设计已经在实验室开发出的一
个具有构件化概念的系统中得到了具体的实现,并体现出良好的功能扩展性和可移植性。关健词:构件化操作系统;跟踪调试;日志服务
Track—debugging
Method
for
ComponentOS
andTechnologyofChina,Hefei230027)
both
XUKang,LIXi,GONGYu-chang
(DepartmentofComputerScienceandTechnology,UniversityofScience
[AbstractlThecomponentoftrack—debuggingforcomponentOperationSystem(OS),whichhas
debuggingfunction,isproposedinthispaper.Thelogserviceforcomponentcomponentoftrack—debugging
call
logicdebuggingfunction
are
andperformance
setup,SOthatthis
andthecontrolofprocessbycomponentsyscall
adaptcomponentoperation
system’Sneedindistributionalapplication.Thiscomponentisimplementedin
laboratoryandrepresentsgoodcharacteristicforextendingandtransplanting.
[Keywords]componentOperationSystem(OS);track—debugging;logservice
1概述
构件化的开发方式,为搭建具有灵活内核以及动态可扩展特性的操作系统提供了实现依据。目前,已出现了许多以结构灵活、内核可定制为特点的构件化嵌入式操作系统…。随着分布式应用的扩大,构件化的分布式操作系统也在研究之中。在基于构件的操作系统里,内核所具有的各种基本功能,如进程的创建和调度、内存分配管理、设备管理等都是通过内核构件对象接I:1的形式来体现的,从而呈现出高度的模块化。构件化的系统对象和系统调用规范是这类系统的基本特征。系统所提供的构件库以及用户开发的应用程序构件都遵循相同的构件技术规范,都通过系统接口与内核交互,从这个意义上说,他们处于同样的地位。由于各构件间的耦合度较低,使构件的结构和功能对程序的运行性能会产生较大的影响,因此为构件化操作系统设计跟踪调试手段的时候也需要考虑性能因素。
目前的构件化操作系统还是以嵌入式应用为主,所以,其跟踪调试还集中在对串行程序的逻辑性调试上,随着系统向分布式方向的发展,其调试功能也有必要进行性能调试的扩展。本文即针对构件化操作系统设计出一种基于构件的性能调试方法。该方法将构件作为新的跟踪调试对象,能够加快在构件化系统上进行软件开发的效率,同时帮助提高系统的整体性能。
为收集表征程序运行状况的大量数据,并对其进行分析,进而优化程序结构,提高程序在该系统上的运行性能。
性能调试一般有基于事件跟踪和基于进程跟踪2种方法:(1)基于事件跟踪是将程序的执行过程看作是一个不断产生事件的过程,程序的一次执行产生的事件构成一张事件图,对程序的调试就是收集这张事件图,与预计的结果进行比较,看是否一致口J。其缺点是生成的事件种类和数量较多,所以会加大实现的难度及降低调试的效率。(2)基于进程跟踪是将一个程序的执行对应到系统中的一个进程或者多个进程组成的一个进程簇,对程序的调试就是对相应一个或多个进程的运行数据进行收集pJ。其缺点是忽视了多个程序之间的相互关联性,不利于实现对系统整体性能的跟踪。
在构件化操作系统里,一个程序的行为可以由一个构件化的系统调用序列来刻画,如图1所示。
2构件化系统的跟踪调试方法设计要点
2.1逻辑性调试
逻辑性调试是指调试程序中的错误,在构件化操作系统中,使用传统的进程调试手段即可完成对程序的逻辑性调试。2.2性能调试
性能调试是在传统的逻辑性调试基础上提出的。其方法
圈1构件化操作系统程序运行结构
因此,在构件处设置跟踪点收集每个构件化系统调用的作者筒介:许康(1983一),男,硕上研究生,主研方向:操作系统;
李曦,副教授;龚育昌,教授、博士生导师收藕日期:2007 10—10
E-mail:xukang@mail.ustc.edu.ca
—_68一
万方数据