991 resultados para Sparse distributed memory
Resumo:
Embedded systems, especially Wireless Sensor Nodes are highly prone to Type Safety and Memory Safety issues. Contiki, a prominent Operating System in the domain is even more affected by the problem since it makes extensive use of Type casts and Pointers. The work is an attempt to nullify the possibility of Safety violations in Contiki. We use a powerful, still efficient tool called Deputy to achieve this. We also try to automate the process
Resumo:
In this paper, we have evolved a generic software architecture for a domain specific distributed embedded system. The system under consideration belongs to the Command, Control and Communication systems domain. The systems in such domain have very long operational lifetime. The quality attributes of these systems are equally important as the functional requirements. The main guiding principle followed in this paper for evolving the software architecture has been functional independence of the modules. The quality attributes considered most important for the system are maintainability and modifiability. Architectural styles best suited for the functionally independent modules are proposed with focus on these quality attributes. The software architecture for the system is envisioned as a collection of architecture styles of the functionally independent modules identified
Resumo:
Embedded systems, especially Wireless Sensor Nodes are highly prone to Type Safety and Memory Safety issues. Contiki, a prominent Operating System in the domain is even more affected by the problem since it makes extensive use of Type casts and Pointers. The work is an attempt to nullify the possibility of Safety violations in Contiki. We use a powerful, still efficient tool called Deputy to achieve this. We also try to automate the process
Resumo:
Bank switching in embedded processors having partitioned memory architecture results in code size as well as run time overhead. An algorithm and its application to assist the compiler in eliminating the redundant bank switching codes introduced and deciding the optimum data allocation to banked memory is presented in this work. A relation matrix formed for the memory bank state transition corresponding to each bank selection instruction is used for the detection of redundant codes. Data allocation to memory is done by considering all possible permutation of memory banks and combination of data. The compiler output corresponding to each data mapping scheme is subjected to a static machine code analysis which identifies the one with minimum number of bank switching codes. Even though the method is compiler independent, the algorithm utilizes certain architectural features of the target processor. A prototype based on PIC 16F87X microcontrollers is described. This method scales well into larger number of memory blocks and other architectures so that high performance compilers can integrate this technique for efficient code generation. The technique is illustrated with an example
Resumo:
Das Grünbuch 2006 der Europäischen Kommission "Eine Europäische Strategie für nachhaltige, wettbewerbsfähige und sichere Energie" unterstreicht, dass Europa in ein neues Energie-Zeitalter eingetreten ist. Die vorrangigen Ziele europäischer Energiepolitik müssen Nachhaltigkeit, Wettbewerbsfähigkeit und Versorgungssicherheit sein, wobei sie eine zusammenhängende und logische Menge von Taktiken und Maßnahmen benötigt, um diese Ziele zu erreichen. Die Strommärkte und Verbundnetze Europas bilden das Kernstück unseres Energiesystems und müssen sich weiterentwickeln, um den neuen Anforderungen zu entsprechen. Die europäischen Stromnetze haben die lebenswichtigen Verbindungen zwischen Stromproduzenten und Verbrauchern mit großem Erfolg seit vielen Jahrzehnten gesichert. Die grundlegende Struktur dieser Netze ist entwickelt worden, um die Bedürfnisse großer, überwiegend auf Kohle aufgebauten Herstellungstechnologien zu befriedigen, die sich entfernt von den Verbraucherzentren befinden. Die Energieprobleme, denen Europa jetzt gegenübersteht, ändern die Stromerzeugungslandschaft in zwei Gesichtspunkten: die Notwendigkeit für saubere Kraftwerkstechnologien verbunden mit erheblich verbesserten Wirkungsgraden auf der Verbraucherseite wird es Kunden ermöglichen, mit den Netzen viel interaktiver zu arbeiten; andererseits müssen die zukünftigen europaweiten Stromnetze allen Verbrauchern eine höchst zuverlässige, preiswerte Energiezufuhr bereitstellen, wobei sowohl die Nutzung von großen zentralisierten Kraftwerken als auch kleineren lokalen Energiequellen überall in Europa ausgeschöpft werden müssen. In diesem Zusammenhang wird darauf hingewiesen, dass die Informationen, die in dieser Arbeit dargestellt werden, auf aktuellen Fragen mit großem Einfluss auf die gegenwärtigen technischen und wirtschaftspolitischen Diskussionen basieren. Der Autor hat während der letzten Jahre viele der hier vorgestellten Schlussfolgerungen und Empfehlungen mit Vertretern der Kraftwerksindustrie, Betreibern von Stromnetzen und Versorgungsbetrieben, Forschungsgremien und den Regulierungsstellen diskutiert. Die folgenden Absätze fassen die Hauptergebnisse zusammen: Diese Arbeit definiert das neue Konzept, das auf mehr verbraucherorientierten Netzen basiert, und untersucht die Notwendigkeiten sowie die Vorteile und die Hindernisse für den Übergang auf ein mögliches neues Modell für Europa: die intelligenten Stromnetze basierend auf starker Integration erneuerbarer Quellen und lokalen Kleinkraftwerken. Das neue Modell wird als eine grundlegende Änderung dargestellt, die sich deutlich auf Netzentwurf und -steuerung auswirken wird. Sie fordert ein europäisches Stromnetz mit den folgenden Merkmalen: – Flexibel: es erfüllt die Bedürfnisse der Kunden, indem es auf Änderungen und neue Forderungen eingehen kann – Zugänglich: es gestattet den Verbindungszugang aller Netzbenutzer besonders für erneuerbare Energiequellen und lokale Stromerzeugung mit hohem Wirkungsgrad sowie ohne oder mit niedrigen Kohlendioxidemissionen – Zuverlässig: es verbessert und garantiert die Sicherheit und Qualität der Versorgung mit den Forderungen des digitalen Zeitalters mit Reaktionsmöglichkeiten gegen Gefahren und Unsicherheiten – Wirtschaftlich: es garantiert höchste Wirtschaftlichkeit durch Innovation, effizientes Energiemanagement und liefert „gleiche Ausgangsbedingungen“ für Wettbewerb und Regulierung. Es beinhaltet die neuesten Technologien, um Erfolg zu gewährleisten, während es die Flexibilität behält, sich an weitere Entwicklungen anzupassen und fordert daher ein zuversichtliches Programm für Forschung, Entwicklung und Demonstration, das einen Kurs im Hinblick auf ein Stromversorgungsnetz entwirft, welches die Bedürfnisse der Zukunft Europas befriedigt: – Netztechnologien, die die Stromübertragung verbessern und Energieverluste verringern, werden die Effizienz der Versorgung erhöhen, während neue Leistungselektronik die Versorgungsqualität verbessern wird. Es wird ein Werkzeugkasten erprobter technischer Lösungen geschaffen werden, der schnell und wirtschaftlich eingesetzt werden kann, so dass bestehende Netze Stromeinleitungen von allen Energieressourcen aufnehmen können. – Fortschritte bei Simulationsprogrammen wird die Einführung innovativer Technologien in die praktische Anwendung zum Vorteil sowohl der Kunden als auch der Versorger stark unterstützen. Sie werden das erfolgreiche Anpassen neuer und alter Ausführungen der Netzkomponenten gewährleisten, um die Funktion von Automatisierungs- und Regelungsanordnungen zu garantieren. – Harmonisierung der ordnungspolitischen und kommerziellen Rahmen in Europa, um grenzüberschreitenden Handel von sowohl Energie als auch Netzdienstleistungen zu erleichtern; damit muss eine Vielzahl von Einsatzsituationen gewährleistet werden. Gemeinsame technische Normen und Protokolle müssen eingeführt werden, um offenen Zugang zu gewährleisten und den Einsatz der Ausrüstung eines jeden Herstellers zu ermöglichen. – Entwicklungen in Nachrichtentechnik, Mess- und Handelssystemen werden auf allen Ebenen neue Möglichkeiten eröffnen, auf Grund von Signalen des Marktes frühzeitig technische und kommerzielle Wirkungsgrade zu verbessern. Es wird Unternehmen ermöglichen, innovative Dienstvereinbarungen zu benutzen, um ihre Effizienz zu verbessern und ihre Angebote an Kunden zu vergrößern. Schließlich muss betont werden, dass für einen erfolgreichen Übergang zu einem zukünftigen nachhaltigen Energiesystem alle relevanten Beteiligten involviert werden müssen.
Resumo:
With this document, we provide a compilation of in-depth discussions on some of the most current security issues in distributed systems. The six contributions have been collected and presented at the 1st Kassel Student Workshop on Security in Distributed Systems (KaSWoSDS’08). We are pleased to present a collection of papers not only shedding light on the theoretical aspects of their topics, but also being accompanied with elaborate practical examples. In Chapter 1, Stephan Opfer discusses Viruses, one of the oldest threats to system security. For years there has been an arms race between virus producers and anti-virus software providers, with no end in sight. Stefan Triller demonstrates how malicious code can be injected in a target process using a buffer overflow in Chapter 2. Websites usually store their data and user information in data bases. Like buffer overflows, the possibilities of performing SQL injection attacks targeting such data bases are left open by unwary programmers. Stephan Scheuermann gives us a deeper insight into the mechanisms behind such attacks in Chapter 3. Cross-site scripting (XSS) is a method to insert malicious code into websites viewed by other users. Michael Blumenstein explains this issue in Chapter 4. Code can be injected in other websites via XSS attacks in order to spy out data of internet users, spoofing subsumes all methods that directly involve taking on a false identity. In Chapter 5, Till Amma shows us different ways how this can be done and how it is prevented. Last but not least, cryptographic methods are used to encode confidential data in a way that even if it got in the wrong hands, the culprits cannot decode it. Over the centuries, many different ciphers have been developed, applied, and finally broken. Ilhan Glogic sketches this history in Chapter 6.
Resumo:
In this report, we discuss the application of global optimization and Evolutionary Computation to distributed systems. We therefore selected and classified many publications, giving an insight into the wide variety of optimization problems which arise in distributed systems. Some interesting approaches from different areas will be discussed in greater detail with the use of illustrative examples.
Resumo:
Genetic Programming can be effectively used to create emergent behavior for a group of autonomous agents. In the process we call Offline Emergence Engineering, the behavior is at first bred in a Genetic Programming environment and then deployed to the agents in the real environment. In this article we shortly describe our approach, introduce an extended behavioral rule syntax, and discuss the impact of the expressiveness of the behavioral description to the generation success, using two scenarios in comparison: the election problem and the distributed critical section problem. We evaluate the results, formulating criteria for the applicability of our approach.
Resumo:
Context awareness, dynamic reconfiguration at runtime and heterogeneity are key characteristics of future distributed systems, particularly in ubiquitous and mobile computing scenarios. The main contributions of this dissertation are theoretical as well as architectural concepts facilitating information exchange and fusion in heterogeneous and dynamic distributed environments. Our main focus is on bridging the heterogeneity issues and, at the same time, considering uncertain, imprecise and unreliable sensor information in information fusion and reasoning approaches. A domain ontology is used to establish a common vocabulary for the exchanged information. We thereby explicitly support different representations for the same kind of information and provide Inter-Representation Operations that convert between them. Special account is taken of the conversion of associated meta-data that express uncertainty and impreciseness. The Unscented Transformation, for example, is applied to propagate Gaussian normal distributions across highly non-linear Inter-Representation Operations. Uncertain sensor information is fused using the Dempster-Shafer Theory of Evidence as it allows explicit modelling of partial and complete ignorance. We also show how to incorporate the Dempster-Shafer Theory of Evidence into probabilistic reasoning schemes such as Hidden Markov Models in order to be able to consider the uncertainty of sensor information when deriving high-level information from low-level data. For all these concepts we provide architectural support as a guideline for developers of innovative information exchange and fusion infrastructures that are particularly targeted at heterogeneous dynamic environments. Two case studies serve as proof of concept. The first case study focuses on heterogeneous autonomous robots that have to spontaneously form a cooperative team in order to achieve a common goal. The second case study is concerned with an approach for user activity recognition which serves as baseline for a context-aware adaptive application. Both case studies demonstrate the viability and strengths of the proposed solution and emphasize that the Dempster-Shafer Theory of Evidence should be preferred to pure probability theory in applications involving non-linear Inter-Representation Operations.
Resumo:
Die Auszeichnungssprache XML dient zur Annotation von Dokumenten und hat sich als Standard-Datenaustauschformat durchgesetzt. Dabei entsteht der Bedarf, XML-Dokumente nicht nur als reine Textdateien zu speichern und zu transferieren, sondern sie auch persistent in besser strukturierter Form abzulegen. Dies kann unter anderem in speziellen XML- oder relationalen Datenbanken geschehen. Relationale Datenbanken setzen dazu bisher auf zwei grundsätzlich verschiedene Verfahren: Die XML-Dokumente werden entweder unverändert als binäre oder Zeichenkettenobjekte gespeichert oder aber aufgespalten, sodass sie in herkömmlichen relationalen Tabellen normalisiert abgelegt werden können (so genanntes „Flachklopfen“ oder „Schreddern“ der hierarchischen Struktur). Diese Dissertation verfolgt einen neuen Ansatz, der einen Mittelweg zwischen den bisherigen Lösungen darstellt und die Möglichkeiten des weiterentwickelten SQL-Standards aufgreift. SQL:2003 definiert komplexe Struktur- und Kollektionstypen (Tupel, Felder, Listen, Mengen, Multimengen), die es erlauben, XML-Dokumente derart auf relationale Strukturen abzubilden, dass der hierarchische Aufbau erhalten bleibt. Dies bietet zwei Vorteile: Einerseits stehen bewährte Technologien, die aus dem Bereich der relationalen Datenbanken stammen, uneingeschränkt zur Verfügung. Andererseits lässt sich mit Hilfe der SQL:2003-Typen die inhärente Baumstruktur der XML-Dokumente bewahren, sodass es nicht erforderlich ist, diese im Bedarfsfall durch aufwendige Joins aus den meist normalisierten und auf mehrere Tabellen verteilten Tupeln zusammenzusetzen. In dieser Arbeit werden zunächst grundsätzliche Fragen zu passenden, effizienten Abbildungsformen von XML-Dokumenten auf SQL:2003-konforme Datentypen geklärt. Darauf aufbauend wird ein geeignetes, umkehrbares Umsetzungsverfahren entwickelt, das im Rahmen einer prototypischen Applikation implementiert und analysiert wird. Beim Entwurf des Abbildungsverfahrens wird besonderer Wert auf die Einsatzmöglichkeit in Verbindung mit einem existierenden, ausgereiften relationalen Datenbankmanagementsystem (DBMS) gelegt. Da die Unterstützung von SQL:2003 in den kommerziellen DBMS bisher nur unvollständig ist, muss untersucht werden, inwieweit sich die einzelnen Systeme für das zu implementierende Abbildungsverfahren eignen. Dabei stellt sich heraus, dass unter den betrachteten Produkten das DBMS IBM Informix die beste Unterstützung für komplexe Struktur- und Kollektionstypen bietet. Um die Leistungsfähigkeit des Verfahrens besser beurteilen zu können, nimmt die Arbeit Untersuchungen des nötigen Zeitbedarfs und des erforderlichen Arbeits- und Datenbankspeichers der Implementierung vor und bewertet die Ergebnisse.
Resumo:
In the vision of Mark Weiser on ubiquitous computing, computers are disappearing from the focus of the users and are seamlessly interacting with other computers and users in order to provide information and services. This shift of computers away from direct computer interaction requires another way of applications to interact without bothering the user. Context is the information which can be used to characterize the situation of persons, locations, or other objects relevant for the applications. Context-aware applications are capable of monitoring and exploiting knowledge about external operating conditions. These applications can adapt their behaviour based on the retrieved information and thus to replace (at least a certain amount) the missing user interactions. Context awareness can be assumed to be an important ingredient for applications in ubiquitous computing environments. However, context management in ubiquitous computing environments must reflect the specific characteristics of these environments, for example distribution, mobility, resource-constrained devices, and heterogeneity of context sources. Modern mobile devices are equipped with fast processors, sufficient memory, and with several sensors, like Global Positioning System (GPS) sensor, light sensor, or accelerometer. Since many applications in ubiquitous computing environments can exploit context information for enhancing their service to the user, these devices are highly useful for context-aware applications in ubiquitous computing environments. Additionally, context reasoners and external context providers can be incorporated. It is possible that several context sensors, reasoners and context providers offer the same type of information. However, the information providers can differ in quality levels (e.g. accuracy), representations (e.g. position represented in coordinates and as an address) of the offered information, and costs (like battery consumption) for providing the information. In order to simplify the development of context-aware applications, the developers should be able to transparently access context information without bothering with underlying context accessing techniques and distribution aspects. They should rather be able to express which kind of information they require, which quality criteria this information should fulfil, and how much the provision of this information should cost (not only monetary cost but also energy or performance usage). For this purpose, application developers as well as developers of context providers need a common language and vocabulary to specify which information they require respectively they provide. These descriptions respectively criteria have to be matched. For a matching of these descriptions, it is likely that a transformation of the provided information is needed to fulfil the criteria of the context-aware application. As it is possible that more than one provider fulfils the criteria, a selection process is required. In this process the system has to trade off the provided quality of context and required costs of the context provider against the quality of context requested by the context consumer. This selection allows to turn on context sources only if required. Explicitly selecting context services and thereby dynamically activating and deactivating the local context provider has the advantage that also the resource consumption is reduced as especially unused context sensors are deactivated. One promising solution is a middleware providing appropriate support in consideration of the principles of service-oriented computing like loose coupling, abstraction, reusability, or discoverability of context providers. This allows us to abstract context sensors, context reasoners and also external context providers as context services. In this thesis we present our solution consisting of a context model and ontology, a context offer and query language, a comprehensive matching and mediation process and a selection service. Especially the matching and mediation process and the selection service differ from the existing works. The matching and mediation process allows an autonomous establishment of mediation processes in order to transfer information from an offered representation into a requested representation. In difference to other approaches, the selection service selects not only a service for a service request, it rather selects a set of services in order to fulfil all requests which also facilitates the sharing of services. The approach is extensively reviewed regarding the different requirements and a set of demonstrators shows its usability in real-world scenarios.
Resumo:
A foundational model of concurrency is developed in this thesis. We examine issues in the design of parallel systems and show why the actor model is suitable for exploiting large-scale parallelism. Concurrency in actors is constrained only by the availability of hardware resources and by the logical dependence inherent in the computation. Unlike dataflow and functional programming, however, actors are dynamically reconfigurable and can model shared resources with changing local state. Concurrency is spawned in actors using asynchronous message-passing, pipelining, and the dynamic creation of actors. This thesis deals with some central issues in distributed computing. Specifically, problems of divergence and deadlock are addressed. For example, actors permit dynamic deadlock detection and removal. The problem of divergence is contained because independent transactions can execute concurrently and potentially infinite processes are nevertheless available for interaction.
Resumo:
A distributed method for mobile robot navigation, spatial learning, and path planning is presented. It is implemented on a sonar-based physical robot, Toto, consisting of three competence layers: 1) Low-level navigation: a collection of reflex-like rules resulting in emergent boundary-tracing. 2) Landmark detection: dynamically extracts landmarks from the robot's motion. 3) Map learning: constructs a distributed map of landmarks. The parallel implementation allows for localization in constant time. Spreading of activation computes both topological and physical shortest paths in linear time. The main issues addressed are: distributed, procedural, and qualitative representation and computation, emergent behaviors, dynamic landmarks, minimized communication.
Resumo:
Linear graph reduction is a simple computational model in which the cost of naming things is explicitly represented. The key idea is the notion of "linearity". A name is linear if it is only used once, so with linear naming you cannot create more than one outstanding reference to an entity. As a result, linear naming is cheap to support and easy to reason about. Programs can be translated into the linear graph reduction model such that linear names in the program are implemented directly as linear names in the model. Nonlinear names are supported by constructing them out of linear names. The translation thus exposes those places where the program uses names in expensive, nonlinear ways. Two applications demonstrate the utility of using linear graph reduction: First, in the area of distributed computing, linear naming makes it easy to support cheap cross-network references and highly portable data structures, Linear naming also facilitates demand driven migration of tasks and data around the network without requiring explicit guidance from the programmer. Second, linear graph reduction reveals a new characterization of the phenomenon of state. Systems in which state appears are those which depend on certain -global- system properties. State is not a localizable phenomenon, which suggests that our usual object oriented metaphor for state is flawed.