21 |
Java in eingebetteten SystemenGatzka, Stephan 17 June 2009 (has links)
Moderne, objektorientierte Sprachen spielen bei der Entwicklung von
Software für eingebettete Systeme bislang kaum eine Rolle. Die Gründe
hierfür sind vielfältig, meist wird jedoch die mangelnde Effizienz und
der größere Speicherbedarf hervorgehoben.
Obwohl Java viele Eigenschaften hat, die sehr für einen Einsatz in
eingebetteten Systemen sprechen, so hängt doch gerade Java vielfach
immer noch das Vorurteil an, in Systemen mit beschränkter Rechenleistung
und Speicher zu viele Ressourcen zu benötigen.
Diese Arbeit soll dazu beitragen, diese Vorurteile abzutragen. Sie
stellt insbesondere Techniken vor, die den Speicherbedarf einer
JVM so gering wie möglich halten und diese effizient mit der zur
Verfügung stehenden Rechenleistung umgehen lassen. Viele der
dargestellten Verfahren und Algorithmen wurden in der Kertasarie
VM implementiert, einer virtuellen Maschine, die speziell für den
Einsatz in eingebetteten Systemen konzipiert wurde.
Durch die weit verbreitete Vernetzung eingebetteter Systeme über das
Internet stellt sich in vielen Fällen zudem das Problem einer modernen,
abstrakten und effizienten Form der Kommunikation. Aus diesem Grund
liegt der zweite Schwerpunkt dieser Arbeit auf dem Vergleich von
objektorientierten Middleware-Architekturen, insbesondere von
Java-RMI. Auch auf diesem Gebiet wird eine eigene, speziell an
eingebettete Systeme angepasste RMI-Variante vorgestellt. / Modern, object oriented languages do not play an important role when developing software for embedded systems. There are many reasons for it, most often an inadequate performance and a greater memory demand are mentioned. In spite of the fact that Java has many features suitable for embedded systems, Java often faces the prejudice to consume too much resources in systems with limited processing power and memory. This work is a contribution to diminish this prejudices. It presents techniques to limit the memory demands of a Java Virtual Machine and to effectively cope with limited computing power. Many of the presented methods and algorithms are implemented in the Kertasarie VM, a JVM designed to run in embedded systems.Due to the fact of increasing network capabilities embedded systems often face the problem of a modern, abstract and efficient communication. Therefore the second emphasis of this work is put on the comparison of object oriented middleware architectures, especially Java-RMI. An own implementation for embedded systems is also presented.
|
22 |
Memory management strategies to improve the space-time performance of Java programsYu, Ching-han., 余靜嫺. January 2006 (has links)
published_or_final_version / abstract / Computer Science / Doctoral / Doctor of Philosophy
|
23 |
[en] FINALIZERS AND CYCLES IN WEAK TABLES / [pt] FINALIZADORES E CICLOS EM TABELAS FRACASALEXANDRA BARRETO ASSAD DE BARROS 06 December 2007 (has links)
[pt] Referências fracas e finalizadores constituem uma
alternativa elegante para
se obter controle sobre a interação entre a aplicação e o
coletor de lixo.
No entanto, em alguns contextos, finalizadores são
desnecessários, pois é
possível estender o mecanismo de referências fracas a fim
de dar suporte a
finalização. Neste trabalho, realizamos um estudo
detalhado
sobre os usos
desses mecanismos e mostramos como é possível substituir
finalizadores
por referências fracas propondo uma implementação baseada
em referências
fraca para cada uso de finalizadores. Baseado nesse
estudo,
desenvolvemos
um mecanismo de finalização via referências fracas para a
linguagem Lua.
Motivados por nossa proposta de uma maior exploração do
mecanismo de
referências, desenvolvemos um algoritmo para um importante
problema
relacionado a ciclos em tabelas fracas, uma estrutura
criada a partir de
referências fracas. A existência de referências cíclicas
entre chaves e valores
impede que os elementos que compõem o ciclo sejam
coletados, mesmo que
eles não sejam mais utilizados pelo programa. Isso acaba
dificultando o uso
de tabelas fracas em determinadas aplicações. A linguagem
Haskell resolveu
esse problema através de uma adaptação do mecanismo de
ephemerons ao
seu coletor de lixo. Partindo desse fato, modificamos a
implementação do
coletor de lixo de Lua para que este oferecesse suporte ao
mecanismo de
ephemerons. Dessa forma, pudemos eliminar o problema de
ciclos em tabelas
fracas nessa linguagem. / [en] Weak References and finalizers constitute an elegant
alternative to obtain
control over the interaction between the application and
the garbage collector.
However, in some contexts, finalizers are not necessary
because it`s
possible to extend the weak reference mechanism in order
to give support
to finalization. In this work, we present a survey of the
most common uses
of these mechanisms. We also show how weak references can
replace finalizers
proposing a weak reference based implementation for each
finalizer use.
Based on this survey, we developed a finalization
mechanism based on weak
references for the Lua programming language.
Motivated by our proposal of a better exploration of the
weak reference
mechanism, we developed a solution for an important
problem related to
cycles on weak tables, an structure created using weak
references. Cyclic
references between keys and values prevents the elements
inside the cycle
from being collected, even if they are no more reachable.
This ends up
bringing difficulties to the use of weak tables in certain
kinds of applications.
The Haskell programming language solved this problem
implementing an
adaptation of a mechanism called ephemerons. Based on this
fact, we
modified the Lua garbage collector in order to offer
support to ephemerons.
As a result, we were able to solve the problem of cycles
on weak tables in
Lua.
|
24 |
GERENCIAMENTO DE RESÍDUOS SÓLIDOS URBANOS: O PROGRAMA DE COLETA DE LIXO DA REGIÃO METROPOLITANA DE GOIÂNIA-GONascimento, Alair Ambrosio do 26 March 2015 (has links)
Submitted by admin tede (tede@pucgoias.edu.br) on 2017-02-23T17:59:12Z
No. of bitstreams: 1
ALAIR AMBROSIO DO NASCIMENTO.pdf: 3653783 bytes, checksum: 1a2132f5d48442a9db24cc1325f31750 (MD5) / Made available in DSpace on 2017-02-23T17:59:12Z (GMT). No. of bitstreams: 1
ALAIR AMBROSIO DO NASCIMENTO.pdf: 3653783 bytes, checksum: 1a2132f5d48442a9db24cc1325f31750 (MD5)
Previous issue date: 2015-03-26 / The purpose of this dissertation was to investigate the program of selective collection of recyclable materials in Goiânia. The survey also proposed raising if the municipality has a Municipal Program of Integrated Solid Waste Management (PMGIRS). This work investigated the performance of recycling cooperatives of recyclable materials in the following aspects: physical structure of cooperatives, working conditions of the members, the formation of cooperatives in networks, partnerships with municipal government, the documentary and legal aspects, and working conditions of members. The interviews were done with the members of the Goiânia City Hall, so as with representatives of the Municipal Environment Agency (AMMA), Goiania Urbanization Company (COMURG), Members of the Social Incubator recyclable materials from the Goiás Federal University (UFG) and representatives of fourteen recycling cooperatives registered by the city of Goiânia. / A proposta desta dissertação foi investigar o programa da coleta seletiva de materiais recicláveis no município de Goiânia, e levantar se o município conta com o Programa Municipal de Gestão Integrada de Resíduos Sólidos, (PMGIRS). O trabalho pesquisou a atuação das cooperativas de catadores de materiais recicláveis sob os seguintes aspectos: estrutura física das cooperativas, as condições de trabalho dos cooperados, a formação das cooperativas em redes, as parcerias firmadas com poder público municipal, os aspectos documental e legal. A pesquisa utilizada foi de natureza exploratória qualitativa e quantitativa, o universo de atores entrevistados foi composto por membros da Prefeitura Municipal de Goiânia, como representantes da Agencia Municipal do Meio Ambiente (AMMA), e da Companhia de Urbanização de Goiânia (COMURG), Membro da Incubadora Social da Universidade Federal de Goiás (UFG), e representantes das quatorze cooperativas de catadores de materiais recicláveis cadastradas pela Prefeitura Municipal de Goiânia.
|
25 |
Surf: an abstract model of distributed garbage collection.Brodie-Tyrrell, William January 2008 (has links)
Garbage collectors (GCs) automate the problem of deciding when objects are no longer reachable and therefore should be reclaimed, however, there currently exists no automated process for the design of a correct garbage collector. Formal models exist that prove the correctness of individual GCs; more general models describe a wider range of GCs but do not prove their correctness or provide a concrete instantiation process. The lack of a formal model means that GCs have been designed in an ad-hoc manner, published without proof of correctness and with bugs; it also means that it is difficult to apply experience gained from one implementation to the design of another. This thesis presents Surf, an abstract model of distributed garbage collection that bridges the gap between expressibility and specificity: it can describe a wide range of GCs and contains a proof of correctness that defines a list of requirements that must be fulfilled. Surf’s design space and its requirements for correctness provide a process that may be followed to analyse an existing collector or create a new GC. Surf predicts the abstract behaviour of GCs; this thesis evaluates those predictions in light of the understood behaviour of published GCs to confirm the accuracy of the model. A distributed persistent implementation of the Train Algorithm is created as an instantiation of Surf and the model is used to analyse progress in the GC and drive the design of a partition selection policy that provides a lower bound on progress and therefore reduces the GC’s complexity to completeness. Tests with mesh data structures from finite element analysis confirm the progress predictions from Surf. Published GCs cluster mostly in one corner of the Surf design space so this thesis explores the design of a GC at an unoccupied design point: the Tram Algorithm. Analysis via Surf leads to the prediction that Trams are capable of discovering topology in the live object graph that approximately identifies the strongly connected components, permitting O(1) timeliness that is unique to the Tram Algorithm. / Thesis (Ph.D.) -- University of Adelaide, School of Computer Science, 2008
|
26 |
Memory management strategies to improve the space-time performance of Java programsYu, Ching-han. January 2006 (has links)
Thesis (Ph. D.)--University of Hong Kong, 2006. / Title proper from title frame. Also available in printed format.
|
27 |
Generationsskräpsamling med explicit kontroll av hårdvarucacheKarlsson, Karl-Johan January 2006 (has links)
<p>This report evaluates whether an interpreted high-level garbage collected language has enough information about its memory behaviour to make better cache decisions than modern general CPU hardware.</p><p>With a generational garbage collector, depending on promotion algorithm and generation size, around 90% of all objects never leave the first generation. This report is based on the hypothesis that, because of the low promotion rate, accesses to higher generations are sufficiently rare not to benefit from caching.</p><p>To test this hypothesis, we built an operating system with a Scheme interpreter in kernel mode, where the interpreter controls the cache. Generic x86 PC hardware was used, since it allows fine-grained control of cache decisions.</p><p>Measurements of execution time in this interpreter show that disabling the cache for generations higher than the first does not give any performance gain, but rather a performance loss of up to 50%.</p><p>We conclude that this interpreter design is not an improvement, but cannot conclude that the hypothesis is false in general. We suggest building a better CPU simulator to gather more data from which to make better caching decisions, moving internal interpreter data structures into the garbage collected heap and modifying the hardware to allow control in the currently rigid dimension of where data is cached---for example separate control of instruction and data caches and separate data caches for different areas of memory.</p>
|
28 |
Memory management strategies to improve the space-time performance of Java programs /Yu, Ching-han. January 2006 (has links)
Thesis (Ph. D.)--University of Hong Kong, 2006. / Also available online.
|
29 |
An Embedded Garbage Collection Module with Support for Multiple Mutators and Weak ReferencesPreußer, Thomas B., Reichel, Peter, Spallek, Rainer G. 14 November 2012 (has links) (PDF)
This report details the design of a garbage collection (GC) module, which introduces modern GC features to the domain of embedded implementations. The described design supports weak references and feeds reference queues. Its architecture allows multiple concurrent application cores operating as mutators on the shared memory managed by the GC module. The garbage collection is exact and fully concurrent so as to enable the uninterrupted computational progress of the mutators. It combines a distributed root marking with a centralized heap scan of the managed memory. It features a novel mark-and-copy GC strategy on a segmented memory, which thereby overcomes both the tremendous space overhead of two-space copying and the compaction race of mark-and-compact approaches. The proposed GC architecture has been practically implemented and proven using the embedded bytecode processor SHAP as a sample testbed. The synthesis results for settings up to three SHAP mutator cores are given and online functional measurements are presented. Basic performance dependencies on the system configuration are evaluated.
|
30 |
Urbanization and flooding in Accra, GhanaAfeku, Kizito. January 2005 (has links)
Thesis (M.A.)--Miami University, Dept. of Geography, 2005. / Title from first page of PDF document. Document formatted into pages; contains [1], v, 53 p. : ill. Includes bibliographical references (p. 50-53).
|
Page generated in 0.1421 seconds