996 resultados para Java program


Relevância:

30.00% 30.00%

Publicador:

Resumo:

Weak references provide the programmer with limited control over the process of memory management. By using them, a programmer can make decisions based on previous actions that are taken by the garbage collector. Although this is often helpful, the outcome of a program using weak references is less predictable due to the nondeterminism they introduce in program evaluation. It is therefore desirable to have a framework of formal tools to reason about weak references and programs that use them. We present several calculi that formalize various aspects of weak references, inspired by their implementation in Java. We provide a calculus to model multiple levels of non-strong references, where a different garbage collection policy is applied to each level. We consider different collection policies such as eager collection and lazy collection. Similar to the way they are implemented in Java, we give the semantics of eager collection to weak references and the semantics of lazy collection to soft references. Moreover, we condition garbage collection on the availability of time and space resources. While time constraints are used in order to restrict garbage collection, space constraints are used in order to trigger it. Finalizers are a problematic feature in Java, especially when they interact with weak references. We provide a calculus to model finalizer evaluation. Since finalizers have little meaning in a language without side-effect, we introduce a limited form of side effect into the calculus. We discuss determinism and the separate notion of uniqueness of (evaluation) outcome. We show that in our calculus, finalizer evaluation does not affect uniqueness of outcome.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Background: Modern cancer research often involves large datasets and the use of sophisticated statistical techniques. Together these add a heavy computational load to the analysis, which is often coupled with issues surrounding data accessibility. Connectivity mapping is an advanced bioinformatic and computational technique dedicated to therapeutics discovery and drug re-purposing around differential gene expression analysis. On a normal desktop PC, it is common for the connectivity mapping task with a single gene signature to take >2h to complete using sscMap, a popular Java application that runs on standard CPUs (Central Processing Units). Here, we describe new software, cudaMap, which has been implemented using CUDA C/C++ to harness the computational power of NVIDIA GPUs (Graphics Processing Units) to greatly reduce processing times for connectivity mapping.

Results: cudaMap can identify candidate therapeutics from the same signature in just over thirty seconds when using an NVIDIA Tesla C2050 GPU. Results from the analysis of multiple gene signatures, which would previously have taken several days, can now be obtained in as little as 10 minutes, greatly facilitating candidate therapeutics discovery with high throughput. We are able to demonstrate dramatic speed differentials between GPU assisted performance and CPU executions as the computational load increases for high accuracy evaluation of statistical significance.

Conclusion: Emerging 'omics' technologies are constantly increasing the volume of data and information to be processed in all areas of biomedical research. Embracing the multicore functionality of GPUs represents a major avenue of local accelerated computing. cudaMap will make a strong contribution in the discovery of candidate therapeutics by enabling speedy execution of heavy duty connectivity mapping tasks, which are increasingly required in modern cancer research. cudaMap is open source and can be freely downloaded from http://purl.oclc.org/NET/cudaMap.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

The "Java Intelligent Tutoring System" (JITS) research project focused on designing, constructing, and determining the effectiveness of an Intelligent Tutoring System for beginner Java programming students at the postsecondary level. The participants in this research were students in the School of Applied Computing and Engineering Sciences at Sheridan College. This research involved consistently gathering input from students and instructors using JITS as it developed. The cyclic process involving designing, developing, testing, and refinement was used for the construction of JITS to ensure that it adequately meets the needs of students and instructors. The second objective in this dissertation determined the effectiveness of learning within this environment. The main findings indicate that JITS is a richly interactive ITS that engages students on Java programming problems. JITS is equipped with a sophisticated personalized feedback mechanism that models and supports each student in his/her learning style. The assessment component involved 2 main quantitative experiments to determine the effectiveness of JITS in terms of student performance. In both experiments it was determined that a statistically significant difference was achieved between the control group and the experimental group (i.e., JITS group). The main effect for Test (i.e., pre- and postiest), F( l , 35) == 119.43,p < .001, was qualified by a Test by Group interaction, F( l , 35) == 4.98,p < .05, and a Test by Time interaction, F( l , 35) == 43.82, p < .001. Similar findings were found for the second experiment; Test by Group interaction revealed F( 1 , 92) == 5.36, p < .025. In both experiments the JITS groups outperformed the corresponding control groups at posttest.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Event driven programming is a way of writing a program that works by responding to things happening (rather than executing a preplanned series of tasks). It is most often used to manage more advanced user interactions, such as GUI programs. In this session we look at how event driven programming works in Java GUIs, as both an introduction to events (using MouseListeners), and also to the way that GUI programs are constructed.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

This is a batch file written to help students on ECS' Programming 1 course (COMP1202) using iSolutions machines which have the JDK, but do not add it to the PATH variable, making compilation from the command line difficult. It attempts to find the JDK directory and add it to the Windows PATH. The code is as follows: @SET JAVA_HOME=C:\Program Files\Java @FOR /F %%G IN ('DIR /B "%JAVA_HOME%\JDK*"') DO @SET JDK_HOME=%JAVA_HOME%\%%G @SET PATH=%JDK_HOME%\bin;%PATH% @javac -version @echo. @echo %JDK_HOME%\bin successfully added to Windows PATH @echo. @echo Now type 'javac'. @echo. @echo. @echo. @CMD

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Detta examensarbete går ut på att ta fram en applikation, avsedd för mobiltelefoner, där man på ett enkelt sätt kan få reda på avgångarna för Dalarnas kollektivtrafik. Det stigande bensinpriset och bilåkningens negativa miljöpåverkan ligger som grund till att Etex AB och Balanz AB vill undersöka om det går att få människor att välja bussen framför personbilen. Om man genom denna applikation kan underlätta planeringen av människors dagliga resor, hur påverkas då valet av fortskaffningsmedel?Resultatet blev en applikation där man, via sin mobiltelefon, bland annat kan ta reda på avgångar för utvalda linjer av Dalatrafiks bussar, hantera linjekartor och synkronisera avgångar med telefonens kalender. Alla tidtabeller sparas i telefonen för att minska nätverkstrafiken och för att informationen enkelt ska kunna återanvändas.Dalatrafik är det företag som ansvarar för kollektivtrafiken i Dalarna. Det finns i dagsläget ingen möjlighet att få reda på avgångarna för deras bussar om man inte har tillgång till en tidtabell eller ringer till deras kundservice. Vissa kommuner har redan lösningar för tidtabellshantering i mobiltelefonen och nu vill Etex AB och Balanz AB, som är två företag som bl.a. arbetar med trådlösa applikationer, att även Dalarna ska få ta del av detta praktiska hjälpmedel.De flesta mobiltelefoner som säljs idag har stöd för att köra applikationer, eller MIDlets som de också kallas, gjorda i J2ME (Java 2 Platform, Micro Edition). Denna teknik har tagits fram av Sun för att göra applikationer som kan köras på mindre mobila enheter såsom mobiltelefoner och handdatorer. Kombinerar man J2ME med den ökande prestandan i dagens mobiltelefoner kan avancerade applikationer t.ex. spel med 3D-grafik, webbläsare och andra nyttiga program tillverkas.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Although formal methods can dramatically increase the quality of software systems, they have not widely been adopted in software industry. Many software companies have the perception that formal methods are not cost-effective cause they are plenty of mathematical symbols that are difficult for non-experts to assimilate. The Java Modelling Language (short for JML) Section 3.3 is an academic initiative towards the development of a common formal specification language for Java programs, and the implementation of tools to check program correctness. This master thesis work shows how JML based formal methods can be used to formally develop a privacy sensitive Java application. This is a smart card application for managing medical appointments. The application is named HealthCard. We follow the software development strategy introduced by João Pestana, presented in Section 3.4. Our work influenced the development of this strategy by providing hands-on insight on challenges related to development of a privacy sensitive application in Java. Pestana’s strategy is based on a three-step evolution strategy of software specifications, from informal ones, through semiformal ones, to JML formal specifications. We further prove that this strategy can be automated by implementing a tool that generates JML formal specifications from a welldefined subset of informal software specifications. Hence, our work proves that JML-based formal methods techniques are cost-effective, and that they can be made popular in software industry. Although formal methods are not popular in many software development companies, we endeavour to integrate formal methods to general software practices. We hope our work can contribute to a better acceptance of mathematical based formalisms and tools used by software engineers. The structure of this document is as follows. In Section 2, we describe the preliminaries of this thesis work. We make an introduction to the application for managing medical applications we have implemented. We also describe the technologies used in the development of the application. This section further illustrates the Java Card Remote Method Invocation communication model used in the medical application for the client and server applications. Section 3 introduces software correctness, including the design by contract and the concept of contract in JML. Section 4 presents the design structure of the application. Section 5 shows the implementation of the HealthCard. Section 6 describes how the HealthCard is verified and validated using JML formal methods tools. Section 7 includes some metrics of the HealthCard implementation and specification. Section 8 presents a short example of how a client-side of a smart card application can be implemented while respecting formal specifications. Section 9 describes a prototype tools to generate JML formal specifications from informal specifications automatically. Section 10 describes some challenges and main ideas came acrorss during the development of the HealthCard. The full formal specification and implementation of the HealthCard smart card application presented in this document can be reached at https://sourceforge.net/projects/healthcard/.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Reconfigurable computing is one of the most recent research topics in computer science. The Altera - Nios II soft-core processor can be included in a large set of reconfigurable architectures, especially because it is designed in software, allowing it to be configured according to the application. The recent growth in applications that demand reconfigurable computing made necessary the building of compilers that translate high level languages source codes into reconfigurable devices instruction sets. In this paper we present a compiler that takes as input the bytecodes generated by a Java front-end compiler and generates a set of instructions that attends to the Nios II processor instruction set rules. Our work shows how we process Java bytecodes to the intermediate code, in the Nios II instructions format, and build the control flow and the control dependence graphs. © 2009 IEEE.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Pós-graduação em Engenharia Elétrica - FEIS

Relevância:

30.00% 30.00%

Publicador:

Resumo:

In the universities, before the start of each school year, is held the distribution of classes among available teachers. Therefore, it is necessary to consider the maximum workweek for each teacher and their preferences for each discipline, to prevent a teacher to give lessons in two separate locations at the same time and to avoid some teachers to become overloaded while others with large clearance. This process, manually performed, is time consuming and does not allow the visualization of other combinations of assignment of teachers to classes, besides being liable to error. This work aims to develop a decision support tool for the problem of assigning teachers to classes in college. The project encompasses the development of a computer program using the concepts of object orientation and a tree search algorithm of a combinatorial nature called Beam Search. The programming language used is Java and the program has a graphical interface for entering and manipulating data of the problem. Once obtained the schedule data of classes and teachers is possible, by means of the tool, perform various simulations and manual adjustments to achieve the final result. It is an efficient method of class scheduling, considering the speed of task execution and the fact that it generates only feasible results

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Observability measures the support of computer systems to accurately capture, analyze, and present (collectively observe) the internal information about the systems. Observability frameworks play important roles for program understanding, troubleshooting, performance diagnosis, and optimizations. However, traditional solutions are either expensive or coarse-grained, consequently compromising their utility in accommodating today’s increasingly complex software systems. New solutions are emerging for VM-based languages due to the full control language VMs have over program executions. Existing such solutions, nonetheless, still lack flexibility, have high overhead, or provide limited context information for developing powerful dynamic analyses. In this thesis, we present a VM-based infrastructure, called marker tracing framework (MTF), to address the deficiencies in the existing solutions for providing better observability for VM-based languages. MTF serves as a solid foundation for implementing fine-grained low-overhead program instrumentation. Specifically, MTF allows analysis clients to: 1) define custom events with rich semantics ; 2) specify precisely the program locations where the events should trigger; and 3) adaptively enable/disable the instrumentation at runtime. In addition, MTF-based analysis clients are more powerful by having access to all information available to the VM. To demonstrate the utility and effectiveness of MTF, we present two analysis clients: 1) dynamic typestate analysis with adaptive online program analysis (AOPA); and 2) selective probabilistic calling context analysis (SPCC). In addition, we evaluate the runtime performance of MTF and the typestate client with the DaCapo benchmarks. The results show that: 1) MTF has acceptable runtime overhead when tracing moderate numbers of marker events; and 2) AOPA is highly effective in reducing the event frequency for the dynamic typestate analysis; and 3) language VMs can be exploited to offer greater observability.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Organic geochemical investigations were performed on sediments of Leg 130 to reconstruct the depositional environment of the Ontong Java Plateau. The Miocene to Quaternary sediments collected during the drilling campaign are characterized by extremely low organic carbon contents. As indicated by C/N ratios and Rock-Eval data, most of the organic matter is probably of marine origin. Based on mass-accumulation rates of organic carbon, the paleoproductivity for the Miocene-Pliocene and the late Pliocene-Pleistocene time intervals as well as the modern surface-water production were estimated. The productivity values of the surface sediments (25-59 gC/m2/yr) reflect the various influences of the equatorial upwelling cell on the different sites. The accumulation rates of organic carbon are generally low; however, they show a distinct increase at 8 Ma and a decrease at 2 Ma.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

The oxygen isotope records of G. sacculifer and Pulleniatina in the uppermost three cores at Ocean Drilling Program Hole 805C span the last 1.6 m.y., an estimate based on Fourier stratigraphy. The last 700,000 yr are dominated by both eccentricity and obliquity-related orbital fluctuations. The range of variation of delta18O values is about 1.5?, of which ca. 75% may be assigned to global ice-volume effect. The remainder of the range is shared by the effects of surface temperature variation, thermocline depth change (in the case of Pulleniatina, especially), and differential dissolution. Before 1 Ma, obliquity-related fluctuations dominate. The transition between obliquity- and eccentricity-dominated time occurs between ca. 1 and 0.7 Ma. It is marked by irregularities in phase relationships, the source of which is not clear. The age of the Brunhes/Matuyama boundary is determined as 794,000 yr by obliquity counting. However, an age of 830,000 yr also is compatible with the counts of both eccentricity and obliquity cycles. In the first case, Stage 19 (which contains the boundary) is coincident with the crest of the 19th obliquity cycle, setting the first crest downcore equal to zero, and counting backward (o19). In the second, Stage 19 coincides with o20. No evidence was found for fluctuations related to precession (23 and 19 k.y.) rising above the noise level, using plain Fourier expansion on the age model of the entire series. Detailed stratigraphic comparison with the Quaternary record of Hole 806B allows the recognition of major dissolution events (which increase the difference in delta18O values of G. sacculifer at the two sites). These occur at Stages 11-13, 16-17, and near 1.5 Ma (below o33).

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Micropaleontologists have traditionally recognized the mid-Miocene Fohsella lineage as a flagship for phyletic gradualism within the planktic foraminifera. However, study of a deep-sea record from the western equatorial Pacific (ODP Site 806) reveals that coiling ratios within this clade suddenly (<5 kyr) shift after a prolonged, ancestral state of near randomness (~50%) to a transient phase (13.42-13.43 Ma) of dextral dominance (~75%) immediately following the first common occurrence of keeled fohsellids. This brief period of dextral dominance was abruptly (<5 kyr) succeeded by an irreversible change to sinistral dominance (~96%). Fohsellid abundances decline markedly through the interval in which the sinistral preference is established. The shift to sinistrality (13.42 Ma) predated the deepening of fohsellid depth ecology by ~240-488 kyr, indicating that these two events were unrelated. This view is supported by a lack of delta 18O evidence for depth-habitat differences between the two chiral forms, which refutes the notion that sinistral fohsellids were "pre-adapted" for ensuing hydrographic change because they occupied a deeper depth habitat than their dextral counterparts. Planktic foraminiferal assemblages become strongly oligotrophic in character through the interval in which the fohsellid delta 18O increase is recorded, indicating that the migration to deeper depths was fostered by an expansion of the mixed layer in the western equatorial Pacific. Salient aspects of this brief, but conspicuous faunal change are a marked increase in the abundance of symbiont-bearing globigerinoidids, a concomitant collapse of local Jenkinsella mayeri/siakensis populations, and reduced fohsellid abundances. The rapid and permanent nature of the Fohsella sinistral shift provides a distinct, unequivocal datum that may prove useful for correlating mid-Miocene sections throughout the Caribbean Sea and tropical regions in the western sectors of the Pacific and Atlantic. The coiling ratio changes that occurred during the evolution of the Fohsella chronocline probably reflect changing population dynamics between cryptic genotypes with different coiling preferences.