62 research outputs found
NMFLUX: Improving Degradation Behavior of Server Applications through Dynamic Nursery Resizing
Currently, most generational collectors are tuned to either deliver peak performance when the heap is plentiful, but yield unacceptable performance when the heap is tight or maintain good degradation behavior when the heap is tight, but deliver sub-optimal performance when the heap is plentiful. In this paper, we present NMFLUX (continuously varying the Nursery/Mature ratio), a framework that switches between using a fixed-nursery generational collector and a variable-nursery collector to achieve the best of both worlds; i.e. our framework delivers optimal performance under normal workload, and graceful performance degradation under heavy workload. We use this framework to create two generational garbage collectors and evaluate their performances in both desktop and server settings. The experimental results show that our proposed collectors can significantly improve the throughput degradation behavior of large servers while maintaining similar peak performance to the optimally configured fixed-ratio collector
Sequential Keystroke Behavioral Biometrics for Mobile User Identification via Multi-view Deep Learning
With the rapid growth in smartphone usage, more organizations begin to focus
on providing better services for mobile users. User identification can help
these organizations to identify their customers and then cater services that
have been customized for them. Currently, the use of cookies is the most common
form to identify users. However, cookies are not easily transportable (e.g.,
when a user uses a different login account, cookies do not follow the user).
This limitation motivates the need to use behavior biometric for user
identification. In this paper, we propose DEEPSERVICE, a new technique that can
identify mobile users based on user's keystroke information captured by a
special keyboard or web browser. Our evaluation results indicate that
DEEPSERVICE is highly accurate in identifying mobile users (over 93% accuracy).
The technique is also efficient and only takes less than 1 ms to perform
identification.Comment: 2017 Joint European Conference on Machine Learning and Knowledge
Discovery in Database
Dynamic Field Programmable Logic-Driven Soft Exosuit
The next generation of etextiles foresees an era of smart wearable garments
where embedded seamless intelligence provides the ability to sense, process and
perform. Core to this vision is embedded textile functionality enabling dynamic
configuration. In this paper we detail a methodology, design and implementation
of a dynamic field programmable logic-driven fabric soft exosuit. Dynamic field
programmability allows the soft exosuit to alter its functionality and adapt to
specific exercise programs depending on the wearers need. The dynamic field
programmability is enabled through motion based control arm movements of the
soft exosuit triggering momentary sensors embedded in the fabric exosuit at
specific joint placement points (right arm: wrist, elbow).The embedded
circuitry in the fabric exosuit is implemented using a layered and
interchangeable approach. This includes logic gate patches (AND,OR,NOT) and a
layered textile interconnection panel. This modular and interchangeable design
enhances the soft exosuits flexibility and adaptability. A truth table aligning
to a rehabilitation healthcare use case was utilised. Tests were completed
validating the field programmability of the soft exosuit and its capability to
switch between its embedded logic driven circuitry and its operational and
functionality options controlled by motion movement of the wearers right arm
(elbow and wrist). Iterative exercise movement and acceleration based tests
were completed to validate the functionality of the field programmable logic
driven fabric exosuit. We demonstrate a working soft exosuit prototype with
motion controlled operational functionality that can be applied to
rehabilitation applications.Comment: 20 pages, 9 figure
JITANA: A modern hybrid program analysis framework for android platforms
Security vetting of Android apps is often performed under tight time constraints (e.g., a few minutes). As such, vetting activities must be performed “at speed”, when an app is submitted for distribution or a device is analyzed for malware. Existing static and dynamic program analysis approaches are not feasible for use in security analysis tools because they require a much longer time to operate than security analysts can afford. There are two factors that limit the performance and efficiency of current analysis approaches. First, existing approaches analyze only one app at a time. Finding security vulnerabilities in collaborative environments such as Android, however, requires collaborating apps to be analyzed simultaneously. Thus, existing approaches are not adequate when applied in this context. Second, existing static program analysis approaches tend to operate in a “closed world” fashion; therefore, they are not easily integrated with dynamic analysis processes to efficiently produce hybrid analysis results within a given time constraint.
In this work, we introduce JITANA, an efficient and scalable hybrid program analysis framework for Android. JITANA has been designed from the ground up to be used as a building block to construct efficient and scalable program analysis techniques. JITANA also operates in an open world fashion, so malicious code detected as part of dynamic analysis can be quickly analyzed and the analysis results can be seamlessly integrated with the original static analysis results. To illustrate JITANA’s capability, we used it to analyze a large collection of apps simultaneously to identify potential collaborations among apps. We have also constructed several analysis techniques on top of JITANA and we use these to perform security vetting under four realistic scenarios. The results indicate that JITANA is scalable and robust; it can effectively and efficiently analyze complex apps including Facebook, Pokémon Go, and Pandora that the state-of-the-art approach cannot handle. In addition, we constructed a visualization engine as a plugin for JITANA to provide real-time feedback on code coverage to help analysts assess their vetting efforts. Such feedback can lead analysts to hard to reach code segments that may need further analysis. Finally we illustrate the effectiveness of JITANA in detecting and analyzing dynamically loaded code.
Supplementary material attached below
Wearable uBrain : Fabric Based-Spiking Neural Network
On garment intelligence influenced by artificial neural networks and neuromorphic computing is emerging as a research direction in the e-textile sector. In particular, bio inspired Spiking Neural Networks mimicking the workings of the brain show promise in recent ICT research applications. Taking such technological advancements and new research directions driving forward the next generation of e-textiles and smart materials, we present a wearable micro Brain capable of event driven artificial spiking neural network computation in a fabric based environment. We demonstrate a wearable Brain SNN prototype with multi-layer computation, enabling scalability and flexibility in terms of modifications for hidden layers to be augmented to the network. The wearable micro Brain provides a low size, weight and power artificial on-garment intelligent wearable solution with embedded functionality enabling offline adaptive learning through the provision of interchangeable resistor synaptic weightings. The prototype has been evaluated for fault tolerance, where we have determine the robustness of the circuit when certain parts are damaged. Validations were also conducted for movements to determine if the circuit can still perform accurate computation
Genome, Functional Gene Annotation, and Nuclear Transformation of the Heterokont Oleaginous Alga \u3ci\u3eNannochloropsis oceanica\u3c/i\u3e CCMP1779
Unicellular marine algae have promise for providing sustainable and scalable biofuel feedstocks, although no single species has emerged as a preferred organism. Moreover, adequate molecular and genetic resources prerequisite for the rational engineering of marine algal feedstocks are lacking for most candidate species. Heterokonts of the genus Nannochloropsis naturally have high cellular oil content and are already in use for industrial production of high-value lipid products. First success in applying reverse genetics by targeted gene replacement makes Nannochloropsis oceanica an attractive model to investigate the cell and molecular biology and biochemistry of this fascinating organism group. Here we present the assembly of the 28.7 Mb genome of N. oceanica CCMP1779. RNA sequencing data from nitrogen-replete and nitrogendepleted growth conditions support a total of 11,973 genes, of which in addition to automatic annotation some were manually inspected to predict the biochemical repertoire for this organism. Among others, more than 100 genes putatively related to lipid metabolism, 114 predicted transcription factors, and 109 transcriptional regulators were annotated. Comparison of the N. oceanica CCMP1779 gene repertoire with the recently published N. gaditana genome identified 2,649 genes likely specific to N. oceanica CCMP1779. Many of these N. oceanica–specific genes have putative orthologs in other species or are supported by transcriptional evidence. However, because similarity-based annotations are limited, functions of most of these species-specific genes remain unknown. Aside from the genome sequence and its analysis, protocols for the transformation of N. oceanica CCMP1779 are provided. The availability of genomic and transcriptomic data for Nannochloropsis oceanica CCMP1779, along with efficient transformation protocols, provides a blueprint for future detailed gene functional analysis and genetic engineering of Nannochloropsis species by a growing academic community focused on this genus
Quarantine: Java Heap Protection in the Presence of Native Code
By using Java Native Interface (JNI), programmers can integrate Java programs with legacy systems or third-party libraries written in other languages (e.g., C, C++, and Pascal). However, the use of JNI may violate Java type safety feature because these native programs are not type-safe. As a result, such integration can cause memory errors that can be difficult to isolate.
In this paper, we propose Quarantine, a runtime system that preserves memory safety of Java objects in spite of integration with native code. The goal of Quarantine is ensuring that no native threads can directly access objects in the Java heap.We provide a formal proof that our technique can achieve this goal. We then implement a prototype of Quarantine in the OpenJDK 1.7 running in interpreter mode. To evaluate the feasibility of our prototype, we conduct experiments to measure the runtime overhead of Quarantine. Because our current implementation is unoptimized, the overhead can be as high as 42%.We then discuss ways to reduce this overhead and perform a case study of using Quarantine to avoid heap corruption due to out-of-bound writes
An Empirical Comparison of the Fault-Detection Capabilities of Internal Oracles
Modern computer systems are prone to various classes of runtime faults due to their reliance on features such as concurrency and peripheral devices such as sensors. Testing remains a common method for uncovering faults in these systems, but many runtime faults are difficult to detect using typical testing oracles that monitor only program output. In this work we empirically investigate the use of internal test oracles: oracles that detect faults by monitoring aspects of internal program and system states. We compare these internal oracles to each other and to output-based oracles for relative effectiveness and examine tradeoffs between oracles involving incorrect reports about faults (false positives and false negatives). Our results reveal several implications that test engineers and researchers should consider when testing for runtime faults
SimSight: A Virtual Machine Based Dynamic Call-Graph Generator
One problem with using component-based software development approach is that once software modules are reused over generations of products, they form legacy structures that can be challenging to understand, making validating these systems difficult. As such, tools and methodologies that enable engineers to see interactions of these software modules will enhance their ability to make these software systems more dependable. To address this need, we propose SimSight, a framework to capture dynamic call graphs in Simics, which is a widely adopted commercial full-system simulator. Simics is a software system that simulates complete computer systems. As such, it performs nearly identical tasks to a real system but at a much lower speed while providing greater execution observability. We have implemented SimSight to generate dynamic call-graphs of statically and dynamically linked functions in x86/Linux environment. We then evaluate its performance using 12 integer programs from SPEC CPU2006 benchmark suite
- …