1,660 research outputs found

    Do Android Taint Analysis Tools Keep Their Promises?

    Full text link
    In recent years, researchers have developed a number of tools to conduct taint analysis of Android applications. While all the respective papers aim at providing a thorough empirical evaluation, comparability is hindered by varying or unclear evaluation targets. Sometimes, the apps used for evaluation are not precisely described. In other cases, authors use an established benchmark but cover it only partially. In yet other cases, the evaluations differ in terms of the data leaks searched for, or lack a ground truth to compare against. All those limitations make it impossible to truly compare the tools based on those published evaluations. We thus present ReproDroid, a framework allowing the accurate comparison of Android taint analysis tools. ReproDroid supports researchers in inferring the ground truth for data leaks in apps, in automatically applying tools to benchmarks, and in evaluating the obtained results. We use ReproDroid to comparatively evaluate on equal grounds the six prominent taint analysis tools Amandroid, DIALDroid, DidFail, DroidSafe, FlowDroid and IccTA. The results are largely positive although four tools violate some promises concerning features and accuracy. Finally, we contribute to the area of unbiased benchmarking with a new and improved version of the open test suite DroidBench

    StreamIt: A Language and Compiler for Communication-Exposed Architectures

    Get PDF
    With the increasing miniaturization of transistors, wire delays are becoming a dominant factor in microprocessor performance. To address this issue, a number of emerging architectures contain replicated processing units with software-exposed communication between one unit and another (e.g., Raw, SmartMemories, TRIPS). However, for their use to be widespread, it will be necesary to develop a common machine language to allow programmers to express an algorithm in a way that can be efficiently mapped across these architectures. We propose a new common machine language for grid-based software-exposed architectures: StreamIt. StreamIt is a high-level programming language with explicit support for streaming computation. Unlike sequential programs with obscured dependence information and complex communication patterns, a stream program is naturally written as a set of concurrent filters with regular steady-state communication. The language imposes a hierarchical structure on the stream graph that enables novel representations and optimizations within the StreamIt compiler. We have implemented a fully functional compiler that parallelizes StreamIt applications for Raw, including several load-balancing transformations. Though StreamIt exposes the parallelism and communication patterns of stream programs, analysis is needed to adapt a stream program to a software-exposed processor. We describe a partitioning algorithm that employs fission and fusion transformations to adjust the granularity of a stream graph, a layout algorithm that maps a stream graph to a given network topology, and a scheduling strategy that generates a fine-grained static communication pattern for each computational element. Using the cycle-accurate Raw simulator, we demonstrate that the StreamIt compiler can automatically map a high-level stream abstraction to Raw. We consider this work to be a first step towards a portable programming model for communication-exposed architectures.Singapore-MIT Alliance (SMA

    Simultaneous amplicon sequencing to explore co- occurrence patterns of bacterial, archaeal and eukaryotic microorganisms in rumen microbial communities

    Get PDF
    Ruminants rely on a complex rumen microbial community to convert dietary plant material to energy-yielding products. Here we developed a method to simultaneously analyze the community's bacterial and archaeal 16S rRNA genes, ciliate 18S rRNA genes and anaerobic fungal internal transcribed spacer 1 genes using 12 DNA samples derived from 11 different rumen samples from three host species (Ovis aries, Bos taurus, Cervus elephas) and multiplex 454 Titanium pyrosequencing. We show that the mixing ratio of the group-specific DNA templates before emulsion PCR is crucial to compensate for differences in amplicon length. This method, in contrast to using a non-specific universal primer pair, avoids sequencing non-targeted DNA, such as plant- or endophyte-derived rRNA genes, and allows increased or decreased levels of community structure resolution for each microbial group as needed. Communities analyzed with different primers always grouped by sample origin rather than by the primers used. However, primer choice had a greater impact on apparent archaeal community structure than on bacterial community structure, and biases for certain methanogen groups were detected. Co-occurrence analysis of microbial taxa from all three domains of life suggested strong within- and between-domain correlations between different groups of microorganisms within the rumen. The approach used to simultaneously characterize bacterial, archaeal and eukaryotic components of a microbiota should be applicable to other communities occupying diverse habitats
    corecore