Indometric


Posts Tagged ‘Java Programming’

Jun 25
Thursday

Concurrency—State Models & Java Programs

Filed under Java Programming

Between June 1985 and January 1987, a computerized radiation therapy machine called Therac-25 caused six known accidents involving massive overdoses with follow-on deaths and serious injuries. Although most accidents are systemic involving complicated interactions between various components and actions, and Therac-25 is not an exception in this respect, concurrent programming errors played an vital part in these six accidents. Race conditions between different concurrent actions in the control program resulted in occasional erroneous control outputs. Furthermore, the sporadic nature of the errors caused by faulty concurrent programs contributed to the falter in recognizing that here was a problem. The designers of the Therac-25 software seemed largely unaware of the principles and practice of concurrent programming.

The wide acceptance of Java with its in-built concurrency constructs means that concurrent programming is no longer restricted to the underground of programmers caught up in operating systems and embedded real-time applications. Concurrency is helpful in a wide range of applications everywhere responsiveness and throughput are issues. While most programmers are not engaged in the implementation of safety critical systems such as Therac-25, increasing numbers are using concurrent programming constructs in less esoteric applications. Errors in these applications and systems may not be frankly life-threatening but they adversely affect our quality of life and may have severe financial implications. An understanding of the principles of concurrent programming and an appreciation of how it is practiced are an essential part of the education of computing science undergraduates and of the background of software engineering professionals. The pervasive nature of computing and the Internet makes it also an vital topic for those whose primary activity may not be computing but who write programs none the less.

Continue…

All entries filed under this archive


Inheritance and Aggregation in Java Language
no responses - Posted 06.24.08
There are two fundamental mechanisms for building new classes from existing ones: inheritance and aggregation. It makes sense to inherit from an existing class Vehicle to define a class Car, since a car is a vehicle. The class Vehicle has several parts; therefore, it makes sense to define a composite ...continue
Java Instance and Static Members
no responses - Posted 06.24.08
Each object created will have its own copies of the fields defined in its class. The fields of an object are called instance variables. The values of the instance variables in an object comprise its state. Two distinct objects can have the same state, if their instance variables have the ...continue
Objects of Java
no responses - Posted 06.24.08
Class Instantiation The process of creating objects from a class is called instantiation. An object is an instance of a class. The object is constructed using the class as a blueprint and is a concrete instance of the abstraction that the class represents. An object must be created before it can ...continue
Basics of Java Programming
no responses - Posted 06.24.08
Introduction Before embarking on the road to Java programmer certification, it is important to understand the basic terminology and concepts in object-oriented programming (OOP). In this chapter, the emphasis is on providing an introduction rather than an exhaustive coverage. In-depth coverage of the concepts follows in due course in subsequent chapters ...continue


All content and source © 2010 Indometric. All rights reserved. See our Privacy Policy and DMCA Information