Spelling suggestions: "subject:"java"" "subject:"lava""
221 |
Efficient shared object space support for distributed Java virtual machineLam, King-tin., 林擎天. January 2012 (has links)
Given the popularity of Java, extending the standard Java virtual machine (JVM) to become cluster-aware effectively brings the vision of transparent horizontal scaling of applications to fruition. With a set of cluster-wide JVMs orchestrated as a virtually single system, thread-level parallelism in Java is no longer confined to one multiprocessor. An unmodified multithreaded Java application running on such a Distributed JVM (DJVM) can scale out transparently, tapping into the vast computing power of the cluster.
While this notion creates an easy-to-use and powerful parallel programming paradigm, research on DJVMs has remained largely at the proof-of-concept stage where successes were proven using trivial scientific computing workloads only. Real-life Java applications with commercial server workloads have not been well-studied on DJVMs. Their natures including complex and sometimes huge object graphs, irregular access patterns and frequent synchronizations are key scalability hurdles. To design a scalable DJVM for real-life applications, we identify three major unsolved issues calling for a top-to-bottom overhaul of traditional systems.
First, we need a more time- and space-efficient cache coherence protocol to support fine-grained object sharing over the distributed shared heap. The recent prevalence of concurrent data structures with heavy use of volatile fields has added complications to the matter. Second, previous generations of DJVMs lack true support for memory-intensive applications. While the network-wide aggregated physical memory can be huge, mutual sharing of huge object graphs like Java collections may cause nodes to eventually run out of local heap space because the cached copies of remote objects, linked by active references, can’t be arbitrarily discarded. Third, thread affinity, which determines the overall communication cost, is vital to the DJVM performance. Data access locality can be improved by collocating highly-correlated threads, via dynamic thread migration. Tracking inter-thread correlations trades profiling costs for reduced object misses. Unfortunately, profiling techniques like active correlation tracking used in page-based DSMs would entail prohibitively high overheads and low accuracy when ported to fine-grained object-based DJVMs.
This dissertation presents technical contributions towards all these problems. We use a dual-protocol approach to address the first problem. Synchronized (lock-based) and volatile accesses are handled by a home-based lazy release consistency (HLRC) protocol and a sequential consistency (SC) protocol respectively. The two protocols’ metadata are maintained in a conflict-free, memory-efficient manner. With further techniques like hierarchical passing of lock ownerships, the overall communication overheads of fine-grained distributed object sharing are pruned to a minimal level. For the second problem, we develop a novel uncaching mechanism to safely break a huge active object graph. When a JVM instance runs low on free memory, it initiates an uncaching policy, which eagerly assigns nulls to selected reference fields, thus detaching some older or less useful cached objects from the root set for reclamation. Careful orchestration is made between uncaching, local garbage collection and the coherence protocol to avoid possible data races. Lastly, we devise lightweight sampling-based profiling methods to derive inter-thread correlations, and a profile-guided thread migration policy to boost the system performance. Extensive experiments have demonstrated the effectiveness of all our solutions. / published_or_final_version / Computer Science / Doctoral / Doctor of Philosophy
|
222 |
JavaFlow : a Java DataFlow MachineAscott, Robert John 10 February 2015 (has links)
The JavaFlow, a Java DataFlow Machine is a machine design concept implementing a Java Virtual Machine aimed at addressing technology roadmap issues along with the ability to effectively utilize and manage very large numbers of processing cores. Specific design challenges addressed include: design complexity through a common set of repeatable structures; low power by featuring unused circuits and ability to power off sections of the chip; clock propagation and wire limits by using locality to bring data to processing elements and a Globally Asynchronous Locally Synchronous (GALS) design; and reliability by allowing portions of the design to be bypassed in case of failures. A Data Flow Architecture is used with multiple heterogeneous networks to connect processing elements capable of executing a single Java ByteCode instruction. Whole methods are cached in this DataFlow fabric, and the networks plus distributed intelligence are used for their management and execution. A mesh network is used for the DataFlow transfers; two ordered networks are used for management and control flow mapping; and multiple high speed rings are used to access the storage subsystem and a controlling General Purpose Processor (GPP). Analysis of benchmarks demonstrates the potential for this design concept. The design process was initiated by analyzing SPEC JVM benchmarks which identified a small number methods contributing to a significant percentage of the overall ByteCode operations. Additional analysis established static instruction mixes to prioritize the types of processing elements used in the DataFlow Fabric. The overall objective of the machine is to provide multi-threading performance for Java Methods deployed to this DataFlow fabric. With advances in technology it is envisioned that from 1,000 to 10,000 cores/instructions could be deployed and managed using this structure. This size of DataFlow fabric would allow all the key methods from the SPEC benchmarks to be resident. A baseline configuration is defined with a compressed dataflow structure and then compared to multiple configurations of instruction assignments and clock relationships. Using a series of methods from the SPEC benchmark running independently, IPC (Instructions per Cycle) performance of the sparsely populated heterogeneous structure is 40% of the baseline. The average ratio of instructions to required nodes is 3.5. Innovative solutions to the loading and management of Java methods along with the translation from control flow to DataFlow structure are demonstrated. / text
|
223 |
JESSICA: Java-enabled single-system-image computing architectureMa, Jin-ming., 馬展明. January 1999 (has links)
published_or_final_version / abstract / toc / Computer Science and Information Systems / Master / Master of Philosophy
|
224 |
Έξυπνες κάρτες / Smart cardsΑντωνόπουλος, Νικόλαος 26 January 2009 (has links)
Στην παρούσα διπλωματική εργασία μελετάμε τις έξυπνες κάρτες καθώς και τις τεχνολογίες που σχετίζονται με αυτές. Ιδιαίτερη έμφαση δίνεται στην τεχνολογία Java Card την οποία άλλωστε χρησιμοποιούμε για την ανάπτυξη μιας πιλοτικής εφαρμογής έξυπνης κάρτας ασθενούς.
Στο πρώτο κεφάλαιο αναφερόμαστε γενικά στις έξυπνες κάρτες. Πραγματοποιούμε μια σύντομη ιστορική αναδρομή και μελετάμε τους τομείς εκείνους στους οποίους βρίσκουν εφαρμογή, παρουσιάζοντας έτσι μερικά από τα πλεονεκτήματα τους. Στο δεύτερο κεφάλαιο αναφερόμαστε στην αρχιτεκτονική και στο υλικό των έξυπνων καρτών. Αφού παρουσιάσουμε τα διαφορετικά είδη καρτών που υπάρχουν αναφερόμαστε σε κάθε σύστημα υλικού μίας έξυπνης κάρτας όπως για παράδειγμα στον επεξεργαστή, στην μνήμη κ.α. Στο τρίτο κεφάλαιο μελετάμε το λογισμικό των έξυπνων καρτών. Αναφερόμαστε στον τρόπο επικοινωνίας με την κάρτα, στα υπάρχοντα λειτουργικά συστήματα για έξυπνες κάρτες καθώς και στα πρότυπα που έχουν κυριαρχήσει. Κλείνοντας το κεφάλαιο πραγματοποιούμε μια σύντομη εισαγωγή στην κρυπτογραφία. Στο τέταρτο κεφάλαιο αναφερόμαστε λεπτομερώς στην τεχνολογία Java Card. Μελετάμε τόσο την αρχιτεκτονική όσο και τα συστατικά της τεχνολογίας αυτής όπως είναι η εικονική μηχανή και το περιβάλλον εκτέλεσης. Αναφερόμαστε ακόμα σε διάφορα θέματα συναφή με την τεχνολογία αυτή. Στο πέμπτο και τελευταίο κεφάλαιο ασχολούμαστε με την υλοποίηση μιας πιλοτικής εφαρμογής έξυπνης κάρτας ασθενούς. Αφού περιγράψουμε τις λειτουργικές και τις τεχνικές προδιαγραφές αναφερόμαστε σε θέματα σχεδιασμού της εφαρμογής και τέλος δείχνουμε αναλυτικά τον τρόπο λειτουργίας της. / In the present diploma thesis we study the smart cards in addition to the technologies that are related with them. Particular accent is given in the Java Card technology which we use in order to develop a demo application of a patient’s smart card.
In the first chapter we set out general characteristics of smart cards. We make a short historical retrospection and we study some particular fields in which they are applicable, presenting their advantages. In the second chapter we refer to the architecture and hardware of smart cards. After we present the variety of the existing smart cards we overhaul the hardware of smart cards, for example CPU, memory etc. In the third chapter we examine the software of smart cards. We set out the way of communication with the card, in the existing operating systems for smart cards as well as in the models that have dominated. Closing the chapter we make a short reference in smart card’s cryptography. In the fourth chapter we make a more detailed reference to Java Card technology. We study the architecture and the components of this technology which are the virtual machine and the executing environment. We also refer to various subjects relevant with this technology. In the fifth and last chapter we deal with the development of a demo application. It is a smart card that is used widely in many hospitals around the world. It is used by these hospitals’ patients. After we show the functional and technical specifications we refer to designing issues of this application and finally we demonstrate their way of operation.
|
225 |
Vektorinės grafikos technologijas naudojančios vartotojo sąsajos integracija su ekspertinėmis sistemomis / User interface, which uses vector graphics technologies, integration with expert systemsSavickas, Nerijus 23 June 2011 (has links)
Baigiamajame magistro darbe nagrinėjamos vartotojo sąsajos, naudojančios vektorinę grafiką, integracijos su ekspertinėmis sistemomis galimybės. Apžvelgti esami integracijos sprendimai, ekspertinių sistemų kūrimo metodai. Nagrinėjama JESS sistemos architektūra. Aprašomos vektorinės grafikos kūrimo sistemos. Praktinėje baigiamojo magistro darbo dalyje pateikiamas integracijos prototipas. Išnagrinėjus teorinius ir praktinius aspektus, pateikiamos baigiamojo darbo išvados ir pasiūlymai. Darbą sudaro 5 dalys: įvadas, analitinė dalis, tiriamoji dalis, išvados ir siūlymai, literatūros sąrašas. / The MA thesis examined the possibilities of user interface, which uses vector graphics, integration of expert systems, reviewed the existing integrated solutions, expert systems development methods. MA thesis examines JESS system architecture, describes the creation of vectorgraphics systems. The practical part provides a prototipe of integration. Afterwards the conclusions and recommendations are given. The work consists of five parts: introduction, analytical part, research, conclusions and suggestions, references.
|
226 |
Domestic violence against women in rural Indonesia : searching for multilevel preventionHayati, Elli Nur January 2013 (has links)
Background: Domestic violence has been recognized globally as one of the most important Public Health concerns with severe negative health consequences for the exposed women. Through UN bodies several international milestones have successfully pushed attention towards worldwide improvements in the life situations of women. Since the ratification of the Convention on Elimination of All Forms of Discrimination against Women (CEDAW) in 1984, significant positive changes towards equality between men and women in Indonesia have been initiated, one being the enactment of the Domestic Violence Act in 2004. However, there is still a need to improve the knowledge about what preventive measures that are feasible and work in different settings. This thesis aims to contribute to a better understanding of appropriate prevention strategies against domestic violence in rural Indonesia by exploring: i) risk factors for domestic violence; ii) women’s ways of coping with exposure to violence; iii) men’s views on masculinity and violence within marriage; and iv) challenges faced by local service agency in managing services for women survivors of domestic violence. Methods: Data from a cross sectional population based study was used to analyze risk factors for physical and sexual abuse among a cohort of pregnant women in Purworejo district. Further, a qualitative phenomenological interview study was conducted to reveal the dynamics of coping among women survivors of domestic violence in the same district. A Grounded Theory study based on focus group discussions with men formed the basis for a situational analysis of the linkage between masculinity and the use of violence within marriage. Finally, a qualitative case study was performed to explore the management practices of a local service agency in the district, to understand the challenges faced in their efforts to address domestic violence. Results: Sexual violence was associated with husbands’ demographic characteristics (age and low educated) and women’s economic independence. Exposure to physical violence among women was strongly associated with husbands’ personal characteristics. The attitudes and norms expressed by women confirmed unequal gender relationships. Experiencing violence led women to using an elastic band coping strategy, moving between actively opposing the violence and surrendering or tolerating the situation. The national gender equality policies were shown to have played a crucial role in transforming gender power relations among men and women (the gender order) in the Indonesian society. Three different positions of masculinity were identified, the traditionalist, the egalitarian, and the progressive, with different beliefs about men’s role within marriage and with various levels of accepting the use of violence. Long term structural preventive efforts and individual interventions targeted to the conflicting couples were preferred over reporting the abuser to the authorities. The major challenges faced by the local service agency were the low priority given by the authorities, mirrored also in low involvement in the daily service by the assigned volunteers. The local agency also stammered in translating the current law and policies into a society that held on to traditional and religious norms regulating the relationships between men and women. Conclusion: Overall, this thesis illustrates that sociocultural traditions and religious teaching still viscously influence people’s attitudes and beliefs about the use of violence within relationships. Domestic violence has not been accepted as a criminal act but is still to a large extent seen as a private family affair. Culturally sensitive programs aimed to bridging the gap between the current laws and policies and the socio-cultural traditions need to be further developed to protect women from domestic violence and increase gender equity in the Indonesian setting.
|
227 |
A Constraint-based ITS for the Java Programming LanguageHolland, Jay January 2009 (has links)
Programming is one of the core skills required by Computer Science undergraduates in tertiary institutions worldwide, whether for study itself, or to be used as a tool to explore other relevant areas. Unfortunately, programming can be incredibly difficult; this is for several reasons, including the youth, depth, and variety of the field, as well as the youth of the technology that frames it. It can be especially problematic for computing
neophytes, with some students repeating programming courses not due to academic
laziness, but due to an inability to grasp the core concepts. The research outlined by this thesis focuses on our proposed solution to this problem, a constraint-based intelligent tutoring system for teaching the Java programming language, named J-LATTE.
J-LATTE (Java Language Acquisition Tile Tutoring Environment) is designed to solve this problem by providing a problem-solving environment for students to work through programming problems. This environment is unique in that it partitions interaction into a concept mode and a coding mode. Concept mode allows the student to form solutions using high-level Java concepts (in the form of tiles), and coding mode allows the student to enter Java code into these tiles to form a complete Java program. The student can, at any time, ask for feedback on a solution or partial solution that they
have formed.
A pilot study and two full evaluations were carried out to test the effectiveness of the system. The pilot study was run with an assignment given to a postgraduate Computer Science course, and because of the advanced knowledge level of the students, it was not designed to test teaching effectiveness, but instead was useful in determining usability issues and identifying any software errors.
The full evaluations of the system were designed to give insight into the teaching effectiveness of J-LATTE, by comparing the results of using the system against a simulated classroom situation. Unfortunately, the participant base was small, for several reasons that are explained in the thesis. However, the results prove interesting otherwise and for the most part are positive towards the effectiveness of J-LATTE. The participants’ knowledge did improve while interacting with the system, and the subjective data collected shows that students like the interaction style and value the feedback obtained.
|
228 |
Towards quality programming in the automated testing of distributed applicationsChu, Huey-Der January 1998 (has links)
Software testing is a very time-consuming and tedious activity and accounts for over 25% of the cost of software development. In addition to its high cost, manual testing is unpopular and often inconsistently executed. Software Testing Environments (STEs) overcome the deficiencies of manual testing through automating the test process and integrating testing tools to support a wide range of test capabilities. Most prior work on testing is in single-thread applications. This thesis is a contribution to testing of distributed applications, which has not been well explored. To address two crucial issues in testing, when to stop testing and how good the software is after testing, a statistics-based integrated test environment which is an extension of the testing concept in Quality Programming for distributed applications is presented. It provides automatic support for test execution by the Test Driver, test development by the SMAD Tree Editor and the Test Data Generator, test failure analysis by the Test Results Validator and the Test Paths Tracer, test measurement by the Quality Analyst, test management by the Test Manager and test planning by the Modeller. These tools are integrated around a public, shared data model describing the data entities and relationships which are manipulable by these tools. It enables early entry of the test process into the life cycle due to the definition of the quality planning and message-flow routings in the modelling. After well-prepared modelling and requirements specification are undertaken, the test process and the software design and implementation can proceed concurrently. A simple banking application written using Java Remote Method Invocation (RMI) and Java DataBase Connectivity (JDBC) shows the testing process of fitting it into the integrated test environment. The concept of the automated test execution through mobile agents across multiple platforms is also illustrated on this 3-tier client/server application.
|
229 |
Programmer-friendly decompiled JavaNaeem, Nomair A. January 2006 (has links)
Java decompilers convert Java class files to Java source. Common Java decompilers are javac-specific decompilers since they target bytecode produced from a particular javac compiler. We present work carried out on Dava, a tool-independent decompiler that decompiles bytecode produced from any compiler. A known deficiency of tool-independent decompilers is the generation of complicated decompiled Java source which does not resemble the original source as closely as output produced by javac-specific decompilers. This thesis tackles this short-coming, for Dava, by introducing a new back-end consisting of simplifying transformations. / The work presented can be broken into three major categories: transformations using tree traversals and pattern matching to simplify the control flow, the creation of a flow analysis framework for an Abstract Syntax Tree (AST) representation of Java source code and the implementation of flow analyses with their use in complicated transformations. / The pattern matching transformations rewrite the ASTs to semantically-equivalent ASTs that correspond to code that is easier for programmers to understand. The targeted Java constructs include If and If-Else aggregation, for-loop creation and the removal of abrupt control flow. Pattern matching using tree traversals has its limitations. Thus, we introduce a new structure-based data flow analysis framework that can be used to gather information required by more complex transformations. Popular compiler analyses e.g., reaching definitions, constant propagation etc. were implemented using the framework. Information from these analyses is then leveraged to perform more advanced AST transformations. / We performed experiments comparing different decompiler outputs for different sources of bytecode. The results from these experiments indicate that the new Dava back-end considerably improves code comprehensibility and readability.
|
230 |
The Impact of Village Midwives and Cadres in Improving the Nutritional Status of Pregnant Women in Selected Rural Villages in Two Districts, Banten Province Indonesia 2003: A Longitudinal Descriptive StudyJanuary 2003 (has links)
This study is a longitudinal descriptive study conducted in eight villages of Banten province, Indonesia. The research describes the nutritional status of two groups of pregnant village women and investigates the implementation and impact of an intervention to improve nutrition in pregnancy. The intervention aimed to improve the effectiveness of village midwives and cadres by improving the nutrition of pregnant women, particularly iron deficiency, through the use of a community development approach. The thesis identifies the importance of good nutrition during pregnancy and some of the factors, which influence it in the context of this study. It examines the health promotion programs for improving iron intake and nutrition in developing countries and specifically examines the programs that are used in Indonesia. A small decrease in the rate of anaemia appears to have occurred due to these programs, but the anaemia rate remains high. There has been little systematic examination of the cultural and social factors that may influence nutrition in pregnant women in Indonesia and few studies, which have measured the nutritional status of pregnant women. The goals of the study are to: * Describe the social and cultural factors that influence nutrition, under nutrition and iron deficiency anaemia during pregnancy and to measure the nutritional status of rural women in Banten Province, Indonesia. * Improve the knowledge and skills of village midwives and cadres in using community development and effective communication to improve iron supplementation and nutrition. The conceptual framework for the study was derived from principles of health promotion, in particular the 'Proceed and Proceed' model (Green & Kreuter 1991). The study took place in eight villages in Banten province, Indonesia. Four of the villages received a community development intervention and four villages were used for comparison. The study was undertaken in three stages: Stage 1 - Baseline Quantitative and Qualitative Data Collection; Stage 2 - Intervention; and Stage 3 - Follow Up Evaluation. The intervention was guided by the results of Stage 1 and consisted of a two-day workshop aimed to improve their knowledge, communication skills of the midwives and cadres and their ability to use a community development approach to improving nutrition in the villages. Qualitative and quantitative methods were used in the research at Stage 1 and Stage 3. Ethnographic methods of interview, observation, field notes and survey were used to collect information about the cultural and social factors that influence nutrition and nutritional practices during pregnancy. The knowledge and practices of midwives and cadres were also explored. Thematic analysis was used to analyse the data. Forty pregnant women (20 from the intervention villages and 20 from the comparison villages) participated in the qualitative component of the research before the intervention (Stage 1). The follow up evaluation occurred 12 months later, and a different group of 35 pregnant women (20 from the intervention villages and 15 from the comparison villages) participated in the qualitative component of the research at Stage 3. The same eight midwives and 16 cadres participated in the qualitative research at Stage 1 and Stage 3. Quantitative data collected at Stage 1 and Stage 3 included socio demographic data, obstetric information and nutritional data (haemoglobin level, body mass index, and the weight gain of pregnant women). Data was collected from 210 women before the intervention and 189 women after the intervention. Some changes in the practices of midwives and cadres were apparent after the intervention with midwives building better rapport, communicating more effectively and providing more information and support to pregnant women. Cadres also talked more about nutrition in community meetings. Changes in the behaviour and approach of village midwives and cadres' in relation to nutrition education resulted in improved nutritional behaviour of pregnant women to some extent, but poverty and culture restricted the ability of pregnant women to access better food. The intervention did not effect the overall nutritional status of the pregnant women. Because of time and logistical constraints, the intervention was not able to influence the community's health in the medium term in the intervention villages. The results of this study showed that the comparison villages sometimes had better results than the intervention villages. A possible explanation is that the systematic evaluation of nutritional status may have increased the awareness and practice of the better-educated and more knowledgeable midwives who were located in the comparison villages. The comparison midwives had a better basic education in midwifery when compared to the intervention midwives. It appeared these better-educated workers responded positively to the research even without exposure to the intervention. The study showed that the position of the pregnant woman is low within the hierarchy of both the health care system and the power structures of the broader community. Husbands, mother-in-law, village midwives, cadres and village leaders all have more power to determine what pregnant women can and cannot eat and drink than women do themselves. However, some women tried to access better food after the intervention by subverting culture and the authority of husbands and mother-in-law and eating nutritious food in secret.
|
Page generated in 0.0455 seconds