99 research outputs found

    A formal soundness proof of region-based memory management for object-oriented paradigm.

    Get PDF
    Region-based memory management has been proposed as a viable alternative to garbage collection for real-time applications and embedded software. In our previous work we have developed a region type inference algorithm that provides an automatic compile-time region-based memory management for object-oriented paradigm. In this work we present a formal soundness proof of the region type system that is the target of our region inference. More precisely, we prove that the object-oriented programs accepted by our region type system achieve region-based memory management in a safe way. That means, the regions follow a stack-of-regions discipline and regions deallocation never create dangling references in the store and on the program stack. Our contribution is to provide a simple syntactic proof that is based on induction and follows the standard steps of a type safety proof. In contrast the previous safety proofs provided for other region type systems employ quite elaborate techniques

    Surface plasmon resonance assay for label-free and selective detection of hiv-1 p24 protein

    Get PDF
    The early detection of the human immunodeficiency virus (HIV) is of paramount importance to achieve efficient therapeutic treatment and limit the disease spreading. In this perspective, the assessment of biosensing assay for the HIV-1 p24 capsid protein plays a pivotal role in the timely and selective detection of HIV infections. In this study, multi-parameter-SPR has been used to develop a reliable and label-free detection method for HIV-1 p24 protein. Remarkably, both physical and chemical immobilization of mouse monoclonal antibodies against HIV-1 p24 on the SPR gold detecting surface have been characterized for the first time. The two immobilization techniques returned a capturing antibody surface coverage as high as (7.5 ± 0.3) × 1011 molecule/cm2 and (2.4 ± 0.6) × 1011 molecule/cm2, respectively. However, the covalent binding of the capturing antibodies through a mixed self-assembled monolayer (SAM) of alkanethiols led to a doubling of the p24 binding signal. Moreover, from the modeling of the dose-response curve, an equilibrium dissociation constant KD of 5.30 × 10−9 M was computed for the assay performed on the SAM modified surface compared to a much larger KD of 7.46 × 10−5 M extracted for the physisorbed antibodies. The chemically modified system was also characterized in terms of sensitivity and selectivity, reaching a limit of detection of (4.1 ± 0.5) nM and an unprecedented selectivity ratio of 0.02

    Safe and efficient hybrid memory management for Java

    Full text link

    Minimally Invasive Glucose Monitoring Using a Highly Porous Gold Microneedles-Based Biosensor: Characterization and Application in Artificial Interstitial Fluid

    Get PDF
    In this paper, we present the first highly porous gold (h-PG) microneedles-based second-generation biosensor for minimally invasive monitoring of glucose in artificial interstitial fluid (ISF). A highly porous microneedles-based electrode was prepared by a simple electrochemical self-templating method that involves two steps, gold electrodeposition and hydrogen bubbling at the electrode, which were realized by applying a potential of −2 V versus a saturated calomel electrode (SCE). The highly porous gold surface of the microneedles was modified by immobilization of 6-(ferrocenyl)hexanethiol (FcSH) as a redox mediator and subsequently by immobilization of a flavin adenine dinucleotide glucose dehydrogenase (FAD-GDH) enzyme using a drop-casting method. The microneedles-based FcSH/FAD-GDH biosensor allows for the detection of glucose in artificial interstitial fluid with an extended linear range (0.1–10 mM), high sensitivity (50.86 µA cm−2 mM−1), stability (20% signal loss after 30 days), selectivity (only ascorbic acid showed a response about 10% of glucose signal), and a short response time (3 s). These properties were favourably compared to other microneedles-based glucose biosensors reported in the literature. Finally, the microneedle-arrays-based second-generation biosensor for glucose detection was tested in artificial interstitial fluid opportunely spiked with different concentrations of glucose (simulating healthy physiological conditions while fasting and after lunch) and by placing the electrode into a simulated chitosan/agarose hydrogel skin model embedded in the artificial ISF (continuous glucose monitoring). The obtained current signals had a lag-time of about 2 min compared to the experiments in solution, but they fit perfectly into the linearity range of the biosensor (0.1–10 mM). These promising results show that the proposed h-PG microneedles-based sensor could be used as a wearable, disposable, user-friendly, and automated diagnostic tool for diabetes patients

    High-Performance Transactional Event Processing

    Get PDF
    Abstract. This paper presents a transactional framework for low-latency, high-performance, concurrent event processing in Java. At the heart of our framework lies Reflexes, a restricted programming model for highly responsive systems. A Reflex task is an event processor that can run at a higher priority and preempt any other Java thread, including the garbage collector. It runs in an obstruction-free manner with time-oblivious code. We extend Reflexes with a publish/subscribe communication system, itself based on an optimistic transactional event processing scheme, that provides efficient coordination between time-critical, low-latency tasks.We report on the comparison with a commercial JVM, and show that it is possible for tasks to achieve 50 µs response times with way less than 1% of the executions failing to meet their deadlines.

    Worst-case analysis of heap allocations

    Get PDF
    Abstract. In object oriented languages, dynamic memory allocation is a fundamental concept. When using such a language in hard real-time systems, it becomes important to bound both the worst-case execution time and the worst-case memory consumption. In this paper, we present an analysis to determine the worst-case heap allocations of tasks. The analysis builds upon techniques that are well established for worst-case execution time analysis. The difference is that the cost function is not the execution time of instructions in clock cycles, but the allocation in bytes. In contrast to worst-case execution time analysis, worst-case heap allocation analysis is not processor dependent. However, the cost function depends on the object layout of the runtime system. The analysis is evaluated with several real-time benchmarks to establish the usefulness of the analysis, and to compare the memory consumption of different object layouts.

    Mobile Resource Guarantees and Policies

    Get PDF
    Abstract. This paper introduces notions of resource policy for mobile code to be run on smart devices, to integrate with the proof-carrying code architecture of the Mobile Resource Guarantees (MRG) project. Two forms of policy are used: guaranteed policies which come with proofs and target policies which describe limits of the device. A guaranteed policy is expressed as a function of a methods input sizes, which determines a bound on consumption of some resource. A target policy is defined by a constant bound and input constraints for a method. A recipient of mobile code chooses whether to run methods by comparing between a guaranteed policy and the target policy. Since delivered code may use methods implemented on the target machine, guaranteed policies may also be provided by the platform; they appear symbolically as assumptions in delivered proofs. Guaranteed policies entail proof obligations that must be established from the proof certificate. Before proof, a policy checker ensures that the guaranteed policy refines the target policy; our policy format ensures that this step is tractable and does not require proof. Delivering policies thus mediates between arbitrary target requirements and the desirability to package code and certificate only once.

    Experiences and Benchmarking with JTime

    No full text

    Application-Level Scheduling Using AOP

    No full text

    Managing C++ libraries

    No full text
    corecore