首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 100 毫秒
1.
网络程序设计中的并发复杂性   总被引:3,自引:0,他引:3  
互联网已成为现代社会的重要信息基础设施,然而网络环境的并发性使得传统程序设计方法在开发高质量的网络程序时遇到了许多困难,严重影响了开发效率.并发问题对网络程序开发复杂度的影响可以类比多核处理器带来的"软件并发危机",然而其中的并发问题却远远没有得到应有的重视.网络并发问题目前并不存在普适的应对方法,甚至在不同方法之间存...  相似文献   

2.
<正> 死锁,不一定的时序和不一定的轮询都是并发程序设计问题,这些问题通常对顺序程序设计不感兴趣,甚至无关。这些问题发生在并发程序设计之中,而不管程序设计语言提供了什么样的并发程序设计设施。但是,程序设计语言中的并发设施的精确特性对这些问题的严重性与经常性确有影响。本章讨论三个并发程序设计问题:死锁,程序中的最大并发特性,以及Ada中的轮询偏向。 1.死锁当程序中的一个或多个任务被永远阻塞时,死锁就发生了,因为需求不能满足。在一些任务中,死锁会成为某些任务中的一种  相似文献   

3.
随着国产处理器和国产操作系统的逐步推广应用,越来越多的开发人员在国产平台下开发多线程程序.目前国产平台普遍采用的Qt Creator工具中缺乏可视化的并发性能分析工具,使得优化由于多线程同步/互斥和资源竞争带来的性能问题变得特别困难.设计一种Qt Creator下的并发性能分析方案,通过实时监控程序并发事件,采集程序运行过程中的并发性能数据,分析程序并发性能瓶颈和死锁原因,并以插件形式进行多视图数据显示.通过实验表明,该并发性能分析方案可以方便、快捷地辅助用户开发多线程并发程序,提高软件开发效率.  相似文献   

4.
随着处理器性能的不断提高和网络技术的迅速发展,越来越多的计算机应用系统涉及并行与分布式计算。开发这类系统远比传统的串行系统困难,这除了并行与分布式计算本身固有的复杂性外,还有一个原因是人们对并发性的实质缺乏真正了解,因而对并发模型进行深入广泛的研究具有重要的现实意义。并发模型是一种描述与解释并发与分布式系统的形式化数学模型,在理论上可提供对并发系统及其行为的深刻理解,在实践中可为并发系统的设计与分析提供指导方法。探讨并发性的语义往往也集中在并发模型的研究,以此作为并发语言与系统的指称结构。  相似文献   

5.
并发面向对象程序设计语言研究与进展   总被引:6,自引:0,他引:6  
随着面向对象程序设计的普及和对并发应用程序需求的增加,并发面向对象程序设计语言的设计日益成为研究热点。  相似文献   

6.
探讨了实时条件下多任务的程序设计技术,并给出了实现方案与基本编程模型.针对并发程序设计并发性、共享性的特点,对引入多线程机制如何提高软件系统处理速度,以及可能带来的问题进行充分研究,并结合三峡梯级AGC工程应用实际找出了瓶颈及制约因素,提出了针对性的解决策略.实际运行验证表明,该方案充分利用了UNIX小型机的资源优势,有效提高系统整体性能,满足了AGC系统对实时性的要求.  相似文献   

7.
并发约束程序设计语言COPS及其执行模型   总被引:1,自引:0,他引:1  
约束程序设计尤其是约束逻辑程序设计与并发约束程序设计在AI程序设计领域占据着越来越重要的位置。传统逻辑程序设计的基“计算即为定理证明”的计算风格虽获得了简洁优美的操作语义特性,但也付出了执行效率低的代价,当应用系统规模增大时,其性能严重下降以致崩溃。针对传统逻辑程序设计的这种可伸缩性问题,设计了一个基于并发约束程序设计概念的说明性语言COPS,旨在从语言设计与执行模型两方面降低说明性程序的不确定性,提高搜索与运行效率。在语言设计方面,通过引入确定性语言成分,避免不确定计算用于确定性目标所浪费的系统开销;在执行模型方面,在目标的并发穿叉执行与数据驱动的并发同步机制的基础上,实现“优先执行确定目标”策略与“最少假定”策略,作为约束传播的延伸,最大幅度地剪枝搜索空间,降低搜索复杂性。COPS提供的知识表示、推理与并发机制使其成为构造agent程序的理想语言。论文给出COPS语言的语法规范与执行模型的操作语义描述。  相似文献   

8.
Ada并发程序设计   总被引:2,自引:0,他引:2  
<正> 该书1984年出版,作者系美国贝尔实验室的Narain Gehani。该书从公认的第一个提供高级通用并发程序设计设施的Ada语言着手,全面地介绍了Ada语言中的并发程序设计设施,以及如何有效利用这些设施编写并发程序;概述了在其它语言的并发程序设计设施;讨论了并发程序设计中的一些细节问题;书末还附录了Ada顺序程序设计的概要。目前,各种大小的并行计算机及操作系统都已相继问世并投入实际使用。并行处理将是今后几年计算机工程和应用的发展方向之一,也是新一代计算机的核心技术之一。但是如果缺乏高度并行的程序设计语言和方法,将会给广泛的应用带来很大障碍,这已引起计算机各  相似文献   

9.
多线程技术是提高程序并发性和效率的重要手段,在网络应用、数据库应用软件、因特网以及嵌入式系统的开发中得到广泛的应用。深入分析多线程及其同步机制、死锁问题,并将多线程技术运用到JavaME开发中的图像平滑移动、低层界面设计、无线消息接收、竞技游戏、移动电子商务开发实践中,并分析开发中会出现的死锁问题,对开发高效率的JavaME应用程序具有重要意义。  相似文献   

10.
针对基于传统OS API开发网络并发服务器所存在的不足,提出了基于面向对象通信接口机制将其进行封装,强化其接口类型,提高并发性,提高了并发服务器的可移植性、健壮性和扩展性。  相似文献   

11.
基于并发技术的Web Service的设计与研究   总被引:1,自引:1,他引:0  
Web Service是SOA中最基本的元素,Web Service的质量影响了基于服务流程的各个方面.提出了用并发技术提高WebService质量的设想,讨论了WebService并发的模型,并对模型的并发效率进行了比较.在实现技术上提出了抽象资源层沣的概念,并以抽象资源层为线索,总结出了设计具有并发能力的Web Service的方法,该方法对于改造和开发企业级Web Set-vice有一定的适应性.  相似文献   

12.
The rise of mobile computing platforms has given rise to a new class of applications: mobile applications that interact with peer applications running on neighbouring phones. Developing such applications is challenging because of problems inherent to concurrent and distributed programming, and because of problems inherent to mobile networks, such as the fact that wireless network connectivity is often intermittent, and the lack of centralized infrastructure to coordinate the peers.We present AmbientTalk, a distributed programming language designed specifically to develop mobile peer-to-peer applications. AmbientTalk aims to make it easy to develop mobile applications that are resilient to network failures by design. We describe the language׳s concurrency and distribution model in detail, as it lies at the heart of AmbientTalk׳s support for responsive, resilient application development. The model is based on communicating event loops, itself a descendant of the actor model. We contribute a small-step operational semantics for this model and use it to establish data race and deadlock freedom.  相似文献   

13.
Java语言因其突出的简单性、可移植性、安全性和支持并发机制的程序设计等优良特性,使它成为基于Internet网络应用开发的首选语言。其价值主要体现在强大的开发分布式网络应用的能力上,而RMI则是开发纯Java的网络分布式应用系统的核心解决方案。通过对Java RMI分布式应用程序实例的分析,给出了Java RMI分布式应用程序的实现和运行方法,为Java语言应用开发人员提供参考。  相似文献   

14.
面向对象模型潜在的并发计算能力为并发程序设计提供了更高层次的解决方案。为了充分利用这种潜在的并发招行能力,必须在对象模型中显式地给出并发控制。本文给出了一种描述并发对象的机制,即:把对象的并发控制作为对象的单独属性进行描述,在定义子类时,把对象的并发描述与对象的方法分开进行继承。我们的目标是使得引进的并发机制尽量少地与对象模型的各个重要特性相冲突,减轻继承异常。另外,我们提出的并发模型允许对象内部的并发。  相似文献   

15.
This paper deals with application of concurrent object-oriented programming with Actors to solve dynamic programming problems in a distributed computing environment. This area of research is often called distributed artificial intelligence. Using a dynamic programming example of chained matrix multiplication, a method of managing dynamic programming searches in a distributed programming environment with Actors is presented. Distributed computations with Actors are visualized by means of Time-Varying Automata (for cases with no intra-actor concurrency) or using a class of high-level nets called Hierarchical Colored Petri Nets (for cases with intra-actor concurrency). Design and implementation features of the specific Actor-based programming environment, using a concurrent extension of C++, are also discussed.  相似文献   

16.
The problem with threads   总被引:5,自引:0,他引:5  
Lee  E.A. 《Computer》2006,39(5):33-42
For concurrent programming to become mainstream, we must discard threads as a programming model. Nondeterminism should be judiciously and carefully introduced where needed, and it should be explicit in programs. In general-purpose software engineering practice, we have reached a point where one approach to concurrent programming dominates all others namely, threads, sequential processes that share memory. They represent a key concurrency model supported by modern computers, programming languages, and operating systems. In scientific computing, where performance requirements have long demanded concurrent programming, data-parallel language extensions and message-passing libraries such as PVM, MPI, and OpenMP dominate over threads for concurrent programming. Computer architectures intended for scientific computing often differ significantly from so-called general-purpose architectures.  相似文献   

17.
In this paper, we propose a semantic framework to debug synchronous message passing-based con- current programs, which are increasingly useful as parallel computing and distributed systems become more and more pervasive. We first design a concurrent programming language model to uniformly represent exist- ing concurrent programming languages. Compared to sequential programming languages, this model contains communication statements, i.e., sending and receiving statements, and a concurrent structure to represent com- munication and concurrency. We then propose a debugging process consisting of a tracing and a locating procedure. The tracing procedure re-executes a program with a failed test case and uses specially designed data structures to collect useful execution information for locating bugs. We provide for the tracing procedure a struc- tural operational semantics to represent synchronous communication and concurrency. The locating procedure backward locates the ill-designed statement by using information obtained in the tracing procedure, generates a fix equation, and tries to fix the bug by solving the fix equation. We also propose a structural operational semantics for the locating procedure. We supply two examples to test our proposed operational semantics.  相似文献   

18.
由于缺乏一个为人们接受的描述并发对象系统语义的形式化模型,开发面向对象程序设计语言的开发受到了很大的制约,为了给并发面向对象程序设计定义一个公共的语义框架,人们分别以π演算和actor模型为基础进行了研究。  相似文献   

19.
Atomic blocks, a high-level language construct that allows programmers to explicitly specify the atomicity of operations without worrying about the implementations, are a promising approach that simplifies concurrent programming. On the other hand, temporal logic is a successful model in logic programming and concurrency verification, but none of existing temporal programming models supports concurrent programming with atomic blocks yet. In this paper, we propose a temporal programming model (αPTL) which extends the projection temporal logic (PTL) to support concurrent programming with atomic blocks. The novel construct that formulates atomic execution of code blocks, which we call atomic interval formulas, is always interpreted over two consecutive states, with the internal states of the block being abstracted away. We show that the framing mechanism in projection temporal logic also works in the new model, which consequently supports our development of an executive language. The language supports concurrency by introducing a loose interleaving semantics which tracks only the mutual exclusion between atomic blocks. We demonstrate the usage of αPTL by modeling and verifying both the fine-grained and coarse-grained concurrency.  相似文献   

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

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