首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
This paper presents a software model checking algorithm that combats state explosion by decomposing each thread's execution into a sequence of transactions that execute atomically. Our algorithm infers transactions using the theory of reduction, and supports both left and right movers, thus yielding larger transactions and fewer context switches than previous methods. Our approach uses access predicates to support a wide variety of synchronization mechanisms. In addition, we automatically infer these predicates for programs that use lock-based synchronization.  相似文献   

2.
在系统不重启的情况下对操作系统进行缺陷修复对于保障服务器系统的性能、安全和可用性等方面具有重要意义。因传统操作系统并未针对在线更新进行实现,现有在线更新技术不能较好地处理被更新代码正处于"使用中"状态的问题,导致在有些场景下无法进行在线更新。本文针对这一问题,设计了一种用于传统操作系统的代码使用计数动态监测技术,通过将原始函数二进制码替换为与其对等的计数副本,以及修改相关线程的内核栈上返回地址,实现对于被更新代码执行情况的监测,从而发现可进行在线更新的时机。最后,本文基于开源的动态升级软件ksplice验证了上述工作的有效性。  相似文献   

3.
Dynamic software updating is critical for many systems that must provide continuous service. In addition, the Java language is gaining increasing popularity in developing distributed systems. Most previous works on updating are concerned with safely updating one class every time. It has many limitations on updating classes, such as not allowing deleting methods invoked in other classes. In this paper, the update transaction is purposed to dynamically update the class set, and some of its properties are discussed, such as atomicity, consistency, isolation, and durability (ACID). Then the property of type-safety is proven formally. In order to update without changing the Java Virtual Machine (JVM) and the Java programming language, this paper proposes a new implementation method. The method makes use of the Java class loading mechanism and reflection mechanism. We also present how to design an updatable Java program and a Java updating program. At the end of the paper, an experiment is made for analysis.  相似文献   

4.
Kuo  Tei-Wei  Hsu  Mei-Ling 《Real-Time Systems》2000,19(2):123-148
Thispaper describes the implementation of an integration frameworkto build real-time monitor programs based on software reuse.A custom-made real-time monitor program can be built very quicklyby integrating existing monitor programs on commercial operatingsystems, where limited real-time system support is provided.We address issues related to software control, output re-processing,data age, and interactivities of program executions. The feasibilityof this framework is demonstrated by the construction of an integrationenvironment and a monitor program built by the environment forsoft real-time applications in the Microsoft Windows operatingsystems. We also measure the incurred system overheads of thisapproach.  相似文献   

5.
In this paper, we propose an approach for the real-time performance analysis of distributed software with reliability constraints, called Athena. The approach is based on the real-time and reliability performance analysis of distributed program. In Athena, two important factors, imperfect nodes and the links reliability, are introduced. The algorithms proposed in Athena generates sub-graphs, counts the reliability of each sub-graph, calculates the transmission time for all the transmission paths of each data file, and computes response time of each data file with reliability constraint. In this way, the real-time performance of distributed software with reliability constrains can be evaluated.This paper is supported by National Science Foundation of China under grant 60273076.  相似文献   

6.
基于软件容错的动态实时调度算法   总被引:10,自引:1,他引:10  
在硬实时系统中,由于任务超时完成将会导致灾难性后果,因而硬实时系统具有严格的时间及可靠性限制条件.目前实时容错调度算法大部分针对硬件的容错,很少考虑软件运行的故障.提出了一种类似EDF基于软件容错的动态实时调度算法EBPA(expectation-based probing algorithm),该算法在任务执行过程中通过基于期望值的若干试探性检测步骤,提高了任务可执行性的预测,尽可能避免了任务早期的错误对后续任务的影响,因此提高了任务的完成率并同时有效地减少了浪费的CPU时间片.通过实验测试,同目前所知的同类算法相比,具有更佳的调度性能-调度成本比.  相似文献   

7.
In this paper we address the important problem of instruction fetch for future wide issue superscalar processors. Our approach focuses on understanding the interaction between software and hardware techniques targeting an increase in the instruction fetch bandwidth. That is the objective, for instance, of the Hardware Trace Cache (HTC). We design a profile based code reordering technique which targets a maximization of the sequentiality of instructions, while still trying to minimize instruction cache misses. We call our software approach, Software Trace Cache (STC). We evaluate our software approach, and then compare it with the HTC and the combination of both techniques. Our results on PostgreSQL show that for large codes with few loops and deterministic execution sequences the STC offers better results than a HTC. Also, both the software and hardware approaches combine well to obtain improved results.  相似文献   

8.
提出了一种通过发送HEX文件到TMS320F28335进行程序升级的新方法.配置TMS320F28335为FLASH启动模式,通过预烧写升级程序到FLASH中,可实现在串口发送HEX文件升级用户程序的功能.详细介绍了该方法实现原理和开发过程,并且给出软件流程图和关键代码.实验证明,该方法操作方便,可靠性高,大大提高了效率.  相似文献   

9.
Fathi  E.T. Bosse  E. Caseault  J. 《Micro, IEEE》1987,7(6):21-28
This versatile network uses multiple microprocessors and a split-bus architecture to collect and process real-time data from a variety of sources and then transfer it to different destinations.  相似文献   

10.
马明理  陈刚  董金祥 《计算机测量与控制》2006,14(11):1551-1553,1556
介绍了一种新的多线程内存分配技术(NIXMalloc)的设计和实现,提出了两种高效的分配策略及其自适应调优方法,有效地提高多线程应用程序的内存管理性能;其中Local分配策略对超级块对象Span进行了线程私有化,基于超级块对象为单位的垃圾回收和内存布局调整使多线程性能更优越;Global分配策略采用了自适应调优方法,在动态检测应用程序内存使用情况的基础上进行内存预取和线程缓存限值的动态调整;实验证明NIXMalloc可改善内存管理性能,提高吞吐量,同时降低内存使用量;在多线程应用系统中能获得较好的时空效率。  相似文献   

11.
SMA:一种新的多线程处理器模型   总被引:1,自引:0,他引:1       下载免费PDF全文
本文提出一种新的多线程处理器模型,它结合了前瞻性执行机制和多线程执行机制,既能从更大的指令窗口中开发出更多的ILP,又能屏蔽各种长延迟操作,达到较高的资 源利用率。本文深入讨论了SMA模型及其特点,并进行了初步的性能分析。  相似文献   

12.
基于多线程结构的编译优化技术   总被引:2,自引:0,他引:2       下载免费PDF全文
编码优化是多线程技术中的一个重要组成部分,也是目前多线程研究中比较薄弱的环节。本文讨论了初步多线程换型中相关的编译优化技术,并给出了基本的分析和比较结果  相似文献   

13.
Multibody system dynamics is a vast area of study that mayoften involve the need to know the vibration behaviour of rigid/flexiblesystems with configurations that change with time due to the existenceof moveable joints. This paper introduces and discusses the motivationbehind the development of a technique, based on a modified springelement, to model the dynamic behaviour of such moveable joints. Thistype of joint generally connects the constituent components ofmechanical systems. The modified element is used to establish linksbetween nodes inside the joint volume, for an arbitrary jointconfiguration, without the need to introduce any distortions in thefinite element mesh pertaining to the connected components. Itintroduces two parameters ideally suited for model updating, a geometryindependent parameter that defines global link stiffness and a geometrydependent one that gives a measure of link effectiveness as a functionof joint configuration. The element usage and a comparison of resultsobtained with a model using standard elements for selectedconfigurations are illustrated by means of an example.  相似文献   

14.
为了提高性能,Java内存模型允许编译器在优化过程中改变代码的执行顺序,同时该技术也会造成共享数据的更新顺序与本来的执行顺序不同。在多线程Java并发程序中,这些代码乱序执行会引起很多难以发现的错误。现有的Java程序模型检测技术并没有考虑这些顺序改变的问题。因此,本文提出了一种建立包含多线程交互及线程内代码乱序执行的完整模型,并利用模型检测工具进行穷举检测的算法。该算法可以发现原有技术无法发现的新问题,更好地检测高可靠性要求的Java并发程序。  相似文献   

15.
余敦辉  王意  张万山 《计算机应用》2018,38(12):3612-3617
针对现有软件众包平台对工人能力考虑不足,导致分配给工人的任务完成质量低下的问题,提出了一种软件众包工人能力动态度量算法(ADM),实现工人能力的动态度量。首先,基于静态技能覆盖率,实现工人初始能力的计算;其次,对于工人历史完成的单个任务,综合任务复杂度、任务完成质量及任务开发时效,实现开发能力的计算,并根据时间因子计算随时间衰减的开发能力;然后,根据所有历史完成任务的时间先后顺序,实现能力度量值的动态更新;最后,基于历史任务技能覆盖率,计算工人对于待分配任务的开发能力。实验结果表明,与用户可靠性度量算法相比,所提出的能力动态度量算法具有较好的合理性与有效性,使能力度量吻合度平均值最高达到90.5%,能有效指导任务分配。  相似文献   

16.
针对SDN网络中交换机在网络流量高峰期流表匹配率低以及控制器负载过重的问题,提出了一种基于自回归移动平均(ARMA)模型预测的交换机流表更新算法。算法首先收集每个取样周期内的新增流表项数量作为历史数据,然后使用ARMA模型对收集的历史数据进行分析,预测下一个周期内新增加的流表项数量,并结合当前流表空间的使用情况,清除交换机中过去一段时间内使用频率较低的流表项。采用真实数据中心网络数据的模拟实验结果表明,与流表更新的一般方法相比,该算法有效地提高了交换机流表的匹配率,并减少了交换机与控制器之间交互的次数,降低了控制器端的负载。  相似文献   

17.
Multicore computers are ubiquitous. Expert developers as well as developers with little experience in parallelism are now asked to create multithreaded software to exploit parallelism in mainstream shared‐memory hardware. However, finding and fixing parallel programming errors is a complex and arduous task. Programmers thus rely on tools such as race detectors that typically focus on reporting errors due to incorrect usage of synchronization constructs or due to missing synchronization. This arsenal of debugging techniques, however, is incomplete. This article presents a new perspective and addresses a largely unexplored direction of defect localization where a wrong usage of nonparallel programming constructs might cause wrong parallel application behavior. In particular, we make a contribution by showing how to use data‐mining techniques to locate defects in multithreaded shared‐memory programs. Our technique analyzes execution anomalies in a condensed representation of the dynamic call graphs of a multithreaded object‐oriented application and identifies methods that contain a defect. Compared with race detectors that concentrate on finding incorrect synchronization, our method is able to reveal a wider range of defects that affect the control flow of a parallel program. Results from controlled experiments show that our data‐mining approach finds not only race conditions in different types of multicore applications but also other errors that cause incorrect parallel program behavior. Data‐mining techniques offer a fruitful new ground for parallel program debugging, and we also discuss long‐term directions for this interesting field. Copyright © 2012 John Wiley & Sons, Ltd.  相似文献   

18.
在大规模的采用面向对象技术的软件开发过程中,自动化测试能起到重要作用.面向对象的程序设计方法对软件的自动化测试提出了新的问题.例如,多态、继承和动态绑定等在过程式的程序设计中不存在的问题.提出了一种支持面向对象软件测试的自动化测试方法.其中,首先提出了一种面向对象测试模型;对一个被测软件,基于该模型描述其测试特征,并基于反射机制获得对象的结构,可自动生成测试代码;并在此基础上实现了一个微软平台上的对象测试自动化工具.  相似文献   

19.
本文以空值的完全语义为基础,以空值环境下基于5值(5VL)的选择运算为工具,深入研究了基于关于模型的含空值关系数据库的数据更新策略和实现算法  相似文献   

20.
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号