Distributed Open Inventor is an extension to the popular Open Inventor toolkit for interactive 3D graphics. The toolkit is extended with the concept of a distributed shared scene graph, similar to distributed shared m...
详细信息
ISBN:
(纸本)9781581131413
Distributed Open Inventor is an extension to the popular Open Inventor toolkit for interactive 3D graphics. The toolkit is extended with the concept of a distributed shared scene graph, similar to distributed shared memory. From the application programmer's perspective, multiple workstations share a common scene graph. The proposed system introduces a convenient mechanism for writing distributed graphical applications based on a popular tool in an almost transparent manner. Local variations in the scene graph allow for a wide range of possible applications, and local low latency interaction mechanisms called input streams enable high performance while saving the programmer from network peculiarities.
Level - Beginner, but attendees should have some experience with a high-level programming *** tutorial is designed for those who have some familiarity with a programming language, but who are new to Ada. In the mornin...
详细信息
ISBN:
(纸本)9781605582740
Level - Beginner, but attendees should have some experience with a high-level programming *** tutorial is designed for those who have some familiarity with a programming language, but who are new to Ada. In the morning, we will discuss the basics of programming in Ada, including types, packages, syntax rules, and other Ada programming constructs. In the afternoon, we will cover Ada's object-oriented programming and concurrent-programming features. Many examples will be shown; freely downloadable Ada programming environments and tools will be demonstrated.
The term inheritance anomaly was coined in 1993 by Matsuoka and Yonezawa [15] to refer to the problems arising by the coexistence of inheritance and concurrency in concurrent object oriented languages (COOLs). The qui...
详细信息
ISBN:
(纸本)9781581138122
The term inheritance anomaly was coined in 1993 by Matsuoka and Yonezawa [15] to refer to the problems arising by the coexistence of inheritance and concurrency in concurrent object oriented languages (COOLs). The quirks arising by such combination have been observed since the early eighties, when the first experimental COOLs were designed [3]. In the nineties COOLs turned from research topic to widely used tools in the everyday programming practice, see e.g. the Java [9] experience. This expository paper extends the survey presented in [15] to account for new and widely used COOLs, most notably Java and C# [19]. Specifically, we illustrate some innovative approaches to COOL design relying on the aspect oriented programming paradigm [13] that aim at better, more powerful abstraction for concurrent OOP, and provide means to fight the inheritance anomaly.
Automatic generation of code from Petri-Nets is an important topic. This paper presents a new approach to automatically translate Petri nets into concurrent program. In the proposed approach, place in Petri net is vie...
详细信息
Automatic generation of code from Petri-Nets is an important topic. This paper presents a new approach to automatically translate Petri nets into concurrent program. In the proposed approach, place in Petri net is viewed as variable and transition as operating statement which change place marking according to enable and firing semantics. In order to conveniently translate Petri net to CC++ program code, sequence block and independent transition is defined and a graph called virtual Petri net is constructed. The translation rules of sequence structure, concurrent structure, select structure and loop structure of Petri nets are developed. According to these presented translation rules, an algorithm of concurrent program code generated automatically for Petri net was proposed. Finally, through case study, the effectiveness of the developed approach is illustrated.
Today, mobile applications use thousands of concurrent tasks to process multiple sensor inputs to ensure a better user experience. With this demand, the ability to manage these concurrent tasks efficiently and easily ...
详细信息
ISBN:
(纸本)9781450394451
Today, mobile applications use thousands of concurrent tasks to process multiple sensor inputs to ensure a better user experience. With this demand, the ability to manage these concurrent tasks efficiently and easily is becoming a new challenge, especially in their lifetimes. Structured concurrency is a technique that reduces the complexity of managing a large number of concurrent tasks. There have been several languages or libraries (e.g., Kotlin, Swift, and Trio) that support such a paradigm for better concurrency management. It is worth noting that structured concurrency has been consistently implemented on top of coroutines across all these languages and libraries. However, there are no documents or studies in the literature that indicate why and how coroutines are relevant to structured concurrency. In contrast, the mainstream community views structured concurrency as a successor to structured programming; that is, the concept of “structure” extends from ordinary programming to concurrent programming. Nevertheless, such a viewpoint does not explain, as the concept of structured concurrency came out more than 40 years later after structured programming was introduced in the early 1970s, whereas concurrent programming started in the 1960s. In this paper, we introduce a new theory to complement the origin of structured concurrency from historical and technical perspectives—it is the foundation established by coroutines that gives birth to structured concurrency.
This brief announcement outlines a new model for high-level concurrent and distributed programming based on constraint entailment, and how model-based verification methods can be directly applied to Java programs sync...
详细信息
ISBN:
(纸本)9781581138023
This brief announcement outlines a new model for high-level concurrent and distributed programming based on constraint entailment, and how model-based verification methods can be directly applied to Java programs synchronizing using the model.
The contribution of this paper is the first Hardware Transactional Memory (HTM) where the object structure is recognized and harnessed. Our approach is similar to hardware support of paged virtual memory using a virtu...
详细信息
ISBN:
(纸本)9781595939739
The contribution of this paper is the first Hardware Transactional Memory (HTM) where the object structure is recognized and harnessed. Our approach is similar to hardware support of paged virtual memory using a virtually addressed cache and a TLB, and is based on a cache hierarchy that allows the addressing of objects by unique object identifiers. The object-aware HTM allows cache overflows of uncommitted data. It also enables a novel commit and conflict detection mechanism. In this preliminary evaluation, the Lee-TM application exhibits overflows that in most previous HTMs would have had to be handled by software, impacting on performance. The simulation provides an insight into the scalability characteristics of the proposed HTM, which uses object and field granularity, lazy versioning and lazy conflict detection. For example, with 32 cores the broadcast of write sets is at under 5% of the bus bandwidth, showing the potential of object-aware HTM systems.
The Ada programming language is an excellent vehicle for teaching concurrent programming because support for concurrency has been designed into the language. The paper shows how primitives from other concurrent progra...
详细信息
ISBN:
(纸本)9780897917575
The Ada programming language is an excellent vehicle for teaching concurrent programming because support for concurrency has been designed into the language. The paper shows how primitives from other concurrent programming languages (occam, Linda, Joyce) can be simulated within Ada. This enables students to study other constructs without the overhead of learning a new language and programming environment. The simulations use inheritance which was introduced into the new Ada 95 standard. They can also be used as examples of inheritance when teaching object-oriented programming.
The paper describes the capabilities of the integrated environment TOST in teaching some of the basic IT concepts such as Mutual exclusion, concurrent processes synchronization, and Deadlock. The purpose of TOST is to...
详细信息
ISBN:
(数字)9781728132228
ISBN:
(纸本)9781728132235
The paper describes the capabilities of the integrated environment TOST in teaching some of the basic IT concepts such as Mutual exclusion, concurrent processes synchronization, and Deadlock. The purpose of TOST is to be used in Operating systems and Parallel programming courses. It allows the student to develop and run sample programs in two simple PASCAL-style and C-style programming languages and to monitor the data in the main system tables. A set of well-known concurrent processing problems are presented in order to illustrate the TOST usage in teaching IT specialists.
The efficiency of Ada's rendezvous concept is compared with concurrent Pascal's monitor concept. The differences between the two approaches, as well as a number of issues relating to their implementation, are ...
详细信息
ISBN:
(纸本)9780897910309
The efficiency of Ada's rendezvous concept is compared with concurrent Pascal's monitor concept. The differences between the two approaches, as well as a number of issues relating to their implementation, are presented. The results indicate that a concurrent programming language should provide both types of concepts.
暂无评论