168,675 research outputs found

    Dynamic software updates for real-time systems

    Full text link
    Seamlessly updating software in running systems has re-cently gained momentum. Dynamically updating the soft-ware of real-time embedded systems, however, still poses numerous challenges: such systems must meet hard dead-lines, cope with limited resources, and adhere to high safety standards. This paper presents a solution for updating component-based cyclic embedded systems without violating real-time constraints. In particular, it investigates how to identify points in time at which updates can be performed and how to transfer the state of a component to a new version of the same component. We also present experimental results to validate the proposed solution

    A shared-memory algorithm for updating single-source shortest paths in large weighted dynamic networks

    Get PDF
    In the last decade growth of social media, increased the interest of network algorithms for analyzing large-scale complex systems. The networks are highly unstructured and exhibit poor locality, which has been a challenge for developing scalable parallel algorithms. The state-of-the-art network algorithms such as Prim\u27s algorithm for Minimum Spanning Tree, Dijkstra\u27s algorithm for Single Source Shortest Path and ISPAN algorithm for detecting strongly connected components are designed and optimized for static networks. The networks which change with time i.e. the dynamic networks such as social networks, the above-mentioned approaches can only be utilized if they are recomputed from scratch each time. Performing a re-computation from scratch for a significant amount of changes is not only computationally expensive, however, increases the memory footprint and the execution time. In the case of dynamic networks, developing scalable parallel algorithms is very challenging and there has been a very limited amount of research work that has been performed when compared to developing parallel scalable algorithms for static networks. To address the above challenges, this presentation proposes a new high performance, scalable, portable, open source software package and an efficient network data structure to update the dynamic networks on the fly. This approach is different from the naive approach which is the re-computation from scratch and is scalable for random, small-world, scale-free, real-world and synthetic networks. The software package currently is implemented on a shared memory system and updates network properties such as Connected Components (CC), Minimum Spanning Tree (MST), Single Source Shortest Path (SSSP), and Strongly Connected Components(SCC). The key attributes of software are faster insertions, and deletions when Comparing the software with the state-of-the-art network algorithms package such as Galois for MST takes less time and memory for updating the network. The shared memory implementation processes over 50 million updates on a real-world network under 30 seconds. The dissertation concludes with a summarization of the contributions and their improvement on large-scale network analytics and a discussion about future work on this field

    Towards a Scalable Dynamic Spatial Database System

    Get PDF
    With the rise of GPS-enabled smartphones and other similar mobile devices, massive amounts of location data are available. However, no scalable solutions for soft real-time spatial queries on large sets of moving objects have yet emerged. In this paper we explore and measure the limits of actual algorithms and implementations regarding different application scenarios. And finally we propose a novel distributed architecture to solve the scalability issues.Comment: (2012

    Over-the-air software updates in the internet of things : an overview of key principles

    Get PDF
    Due to the fast pace at which IoT is evolving, there is an increasing need to support over-theair software updates for security updates, bug fixes, and software extensions. To this end, multiple over-the-air techniques have been proposed, each covering a specific aspect of the update process, such as (partial) code updates, data dissemination, and security. However, each technique introduces overhead, especially in terms of energy consumption, thereby impacting the operational lifetime of the battery constrained devices. Until now, a comprehensive overview describing the different update steps and quantifying the impact of each step is missing in the scientific literature, making it hard to assess the overall feasibility of an over-the-air update. To remedy this, our article analyzes which parts of an IoT operating system are most updated after device deployment, proposes a step-by-step approach to integrate software updates in IoT solutions, and quantifies the energy cost of each of the involved steps. The results show that besides the obvious dissemination cost, other phases such as security also introduce a significant overhead. For instance, a typical firmware update requires 135.026 mJ, of which the main portions are data dissemination (63.11 percent) and encryption (5.29 percent). However, when modular updates are used instead, the energy cost (e.g., for a MAC update) is reduced to 26.743 mJ (48.69 percent for data dissemination and 26.47 percent for encryption)

    Publishing LO(D)D: Linked Open (Dynamic) Data for Smart Sensing and Measuring Environments

    Get PDF
    The paper proposes a distributed framework that provides a systematic way to publish environment data which is being updated continuously; such updates might be issued at specific time intervals or bound to some environment- specific event. The framework targets smart environments having networks of devices and sensors which are interacting with each other and with their respective environments to gather and generate data and willing to publish this data. This paper addresses the issues of supporting the data publishers to maintain up-to-date and machine understandable representations, separation of views (static or dynamic data) and delivering up-to-date information to data consumers in real time, helping data consumers to keep track of changes triggered from diverse environments and keeping track of evolution of the smart environment. The paper also describes a prototype implementation of the proposed architecture. A preliminary use case implementation over a real energy metering infrastructure is also provided in the paper to prove the feasibility of the architectur

    Fast filtering and animation of large dynamic networks

    Full text link
    Detecting and visualizing what are the most relevant changes in an evolving network is an open challenge in several domains. We present a fast algorithm that filters subsets of the strongest nodes and edges representing an evolving weighted graph and visualize it by either creating a movie, or by streaming it to an interactive network visualization tool. The algorithm is an approximation of exponential sliding time-window that scales linearly with the number of interactions. We compare the algorithm against rectangular and exponential sliding time-window methods. Our network filtering algorithm: i) captures persistent trends in the structure of dynamic weighted networks, ii) smoothens transitions between the snapshots of dynamic network, and iii) uses limited memory and processor time. The algorithm is publicly available as open-source software.Comment: 6 figures, 2 table

    State-of-the-art on evolution and reactivity

    Get PDF
    This report starts by, in Chapter 1, outlining aspects of querying and updating resources on the Web and on the Semantic Web, including the development of query and update languages to be carried out within the Rewerse project. From this outline, it becomes clear that several existing research areas and topics are of interest for this work in Rewerse. In the remainder of this report we further present state of the art surveys in a selection of such areas and topics. More precisely: in Chapter 2 we give an overview of logics for reasoning about state change and updates; Chapter 3 is devoted to briefly describing existing update languages for the Web, and also for updating logic programs; in Chapter 4 event-condition-action rules, both in the context of active database systems and in the context of semistructured data, are surveyed; in Chapter 5 we give an overview of some relevant rule-based agents frameworks

    Event-Driven Network Programming

    Full text link
    Software-defined networking (SDN) programs must simultaneously describe static forwarding behavior and dynamic updates in response to events. Event-driven updates are critical to get right, but difficult to implement correctly due to the high degree of concurrency in networks. Existing SDN platforms offer weak guarantees that can break application invariants, leading to problems such as dropped packets, degraded performance, security violations, etc. This paper introduces EVENT-DRIVEN CONSISTENT UPDATES that are guaranteed to preserve well-defined behaviors when transitioning between configurations in response to events. We propose NETWORK EVENT STRUCTURES (NESs) to model constraints on updates, such as which events can be enabled simultaneously and causal dependencies between events. We define an extension of the NetKAT language with mutable state, give semantics to stateful programs using NESs, and discuss provably-correct strategies for implementing NESs in SDNs. Finally, we evaluate our approach empirically, demonstrating that it gives well-defined consistency guarantees while avoiding expensive synchronization and packet buffering
    corecore