• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 14
  • 8
  • 3
  • 1
  • 1
  • Tagged with
  • 32
  • 32
  • 10
  • 6
  • 6
  • 5
  • 5
  • 5
  • 5
  • 5
  • 4
  • 4
  • 4
  • 4
  • 4
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
11

Dynamic software updates : a VM-centric approach

Subramanian, Suriya 26 January 2011 (has links)
Because software systems are imperfect, developers are forced to fix bugs and add new features. The common way of applying changes to a running system is to stop the application or machine and restart with the new version. Stopping and restarting causes a disruption in service that is at best inconvenient and at worst causes revenue loss and compromises safety. Dynamic software updating (DSU) addresses these problems by updating programs while they execute. Prior DSU systems for managed languages like Java and C# lack necessary functionality: they are inefficient and do not support updates that occur commonly in practice. This dissertation presents the design and implementation of Jvolve, a DSU system for Java. Jvolve's combination of flexibility, safety, and efficiency is a significant advance over prior approaches. Our key contribution is the extension and integration of existing Virtual Machine services with safe, flexible, and efficient dynamic updating functionality. Our approach is flexible enough to support a large class of updates, guarantees type-safety, and imposes no space or time overheads on steady-state execution. Jvolve supports many common updates. Users can add, delete, and change existing classes. Changes may add or remove fields and methods, replace existing ones, and change type signatures. Changes may occur at any level of the class hierarchy. To initialize new fields and update existing ones, Jvolve applies class and object transformer functions, the former for static fields and the latter for object instance fields. These features cover many updates seen in practice. Jvolve supports 20 of 22 updates to three open-source programs---Jetty web server, JavaEmailServer, and CrossFTP server---based on actual releases occurring over a one to two year period. This support is substantially more flexible than prior systems. Jvolve is safe. It relies on bytecode verification to statically type-check updated classes. To avoid dynamic type errors due to the timing of an update, Jvolve stops the executing threads at a DSU safe point and then applies the update. DSU safe points are a subset of VM safe points, where it is safe to perform garbage collection and thread scheduling. DSU safe points further restrict the methods that may be on each thread's stack, depending on the update. Restricted methods include updated methods for code consistency and safety, and user-specified methods for semantic safety. Jvolve installs return barriers and uses on-stack replacement to speed up reaching a safe point when necessary. While Jvolve does not guarantee that it will reach a DSU safe point, in our multithreaded benchmarks it almost always does. Jvolve includes a tool that automatically generates default object transformers which initialize new and changed fields to default values and retain values of unchanged fields in heap objects. If needed, programmers may customize the default transformers. Jvolve is the first dynamic updating system to extend the garbage collector to identify and transform all object instances of updated types. This dissertation introduces the concept of object-specific state transformers to repair application heap state for certain classes of bugs that corrupt part of the heap, and a novel methodology that employes dynamic analysis to automatically generate these transformers. Jvolve's eager object transformation design and implementation supports the widest class of updates to date. Finally, Jvolve is efficient. It imposes no overhead during steady-state execution. During an update, it imposes overheads to classloading and garbage collection. After an update, the adaptive compilation system will incrementally optimize the updated code in its usual fashion. Jvolve is the first full-featured dynamic updating system that imposes no steady-state overhead. In summary, Jvolve is the most-featured, most flexible, safest, and best-performing dynamic updating system for Java and marks a significant step towards practical support for dynamic updates in managed language virtual machines. / text
12

Troca dinâmica de versões de componentes de programas no modelo de objetos

Haetinger, Werner January 1998 (has links)
A manutenção de software a uma realidade presente em todos os sistemas de computação, gerando a necessidade de novas versões que alterem as funcionalidades existentes no software ou adicionem novas. Particularmente, sistemas de tempo-real nem sempre podem ser descontinuados tomando-se indisponíveis para realizar a instalação de uma nova versão. Tais sistemas evidenciam a necessidade de substituição de componentes, representados por funções, procedimentos, módulos ou objetos, durante o processo de execução do programa ou sistema. Outrossim, apos ser realizada a substituição da versão, o componente não pode apresentar falha sob pena de comprometer o fornecimento dos seus serviços. Portanto. constata-se a importância de novas técnicas de manutenção de software que não prejudiquem a sua disponibilidade e confiabilidade. A abordagem aqui proposta a utilizar uma arquitetura reflexiva aliada a técnicas típicas do domínio da tolerância a falhas para promover a separação entre as atividades de substituição e validação de componentes e as funcionalidades executadas pelo pr6prio componente. No decorrer deste trabalho são apresentados diversos cenários de sistemas que podem se beneficiar da troca dinâmica de componentes e abordadas varias facetas do problema de substituição. A proposta a apoiada por um estudo de caso, implementado na linguagem de programação Java e seus diferentes protocolos de reflexão computacional. / Software maintenance is a present reality in all computational systems. This demands the frequent installation of new versions. Usually, real-time systems cannot be interrupted to install a new version. For such systems, the replacement of components, represented by functions, procedures, modulus or objects, must be performed during the execution of the program or system. Even when the old version has been replaced, the new one should not contain faults that could invalidate its services. Therefore, we need new software maintenance techniques that can mantain the system availability and realibility. The approach proposed here consists in using a reflective architecture along with techniques which are typical of the fault tolerant domain. The procedure is carried out by keeping a clear separation between validation activities and the functions executed by the component itself. We present several scenarios to which the dynamical exchange of components can be applied. Different aspects of the replacing issue are also addressed. The proposal is supported by a specific application which has been implemented in the Java language and its different protocols of computational reflection.
13

Troca dinâmica de versões de componentes de programas no modelo de objetos

Haetinger, Werner January 1998 (has links)
A manutenção de software a uma realidade presente em todos os sistemas de computação, gerando a necessidade de novas versões que alterem as funcionalidades existentes no software ou adicionem novas. Particularmente, sistemas de tempo-real nem sempre podem ser descontinuados tomando-se indisponíveis para realizar a instalação de uma nova versão. Tais sistemas evidenciam a necessidade de substituição de componentes, representados por funções, procedimentos, módulos ou objetos, durante o processo de execução do programa ou sistema. Outrossim, apos ser realizada a substituição da versão, o componente não pode apresentar falha sob pena de comprometer o fornecimento dos seus serviços. Portanto. constata-se a importância de novas técnicas de manutenção de software que não prejudiquem a sua disponibilidade e confiabilidade. A abordagem aqui proposta a utilizar uma arquitetura reflexiva aliada a técnicas típicas do domínio da tolerância a falhas para promover a separação entre as atividades de substituição e validação de componentes e as funcionalidades executadas pelo pr6prio componente. No decorrer deste trabalho são apresentados diversos cenários de sistemas que podem se beneficiar da troca dinâmica de componentes e abordadas varias facetas do problema de substituição. A proposta a apoiada por um estudo de caso, implementado na linguagem de programação Java e seus diferentes protocolos de reflexão computacional. / Software maintenance is a present reality in all computational systems. This demands the frequent installation of new versions. Usually, real-time systems cannot be interrupted to install a new version. For such systems, the replacement of components, represented by functions, procedures, modulus or objects, must be performed during the execution of the program or system. Even when the old version has been replaced, the new one should not contain faults that could invalidate its services. Therefore, we need new software maintenance techniques that can mantain the system availability and realibility. The approach proposed here consists in using a reflective architecture along with techniques which are typical of the fault tolerant domain. The procedure is carried out by keeping a clear separation between validation activities and the functions executed by the component itself. We present several scenarios to which the dynamical exchange of components can be applied. Different aspects of the replacing issue are also addressed. The proposal is supported by a specific application which has been implemented in the Java language and its different protocols of computational reflection.
14

The effect of a dynamic technological learning environment on the geometry conceptualisation of pre-service mathematics teachers / by Jeannette Kotze

Kotze, Jeannette January 2006 (has links)
Traditionally, geometry at school starts on a formal level, largely ignoring prerequisite skills needed for formal spatial reasoning. Ignoring that geometry conceptualisation has a sequential and hierarchical nature, causes ineffective teaching and learning with a long lasting inhibiting influence on spatial development and learning. One of the current reform movements in mathematics education is the appropriate use of dynamic computer technology in the teaching and learning of mathematics. Concerning mathematics education, the lecturers may involve the introduction of both dynamic computer technology and mathematics in meaningful contexts that will enable interplay between the two. Pre-service mathematics teachers (PMTs) can be encouraged to become actively involved in their learning and, therefore, less frustrated in their study orientation in mathematics. Therefore, such learning environments may be essential to enhance the conceptual understanding of PMTs. To be able to reach their eventual learners, PMTs' own conceptual understanding of geometry should be well developed. When PMTs have conceptual understanding of a mathematical procedure, they will perceive this procedure as a mathematical model of a problem situation, rather than just an algorithm. This study aimed at investigating the effect of a technologically enhanced learning environment on PMTs' understanding of geometry concepts and their study orientation in mathematics, as prerequisite for deep conceptualisation. A combined quantitative and qualitative research approach was used. The quantitative investigation employed a pre-experimental one-group pre-test post-test design. A Mayberry-type test was used to collect data with regard to PMTs' conceptualisation of geometry concepts, while the Study Orientation in Mathematics (SOM) questionnaire was used to collect data with regard their study orientation in mathematics. The qualitative investigation employed phenomenological interviews to collect supplementary information about the participating PMTs' experiences and assessment of the influence of the use of the dynamic software Geometer's Sketchpad (GSP) on their learning and conceptualisation of geometry concepts. During post-testing the participating group of PMTs achieved practically significantly higher scores in the Mayberry-type test, as well as in all fields of the SOM questionnaire. Results seem to indicate that PMTs gained significantly in the expected high levels of conceptualisation, as well as high degrees of acquisition of those levels during the intervention programme. The main conclusion of the study is that a technologically enhanced learning environment (such as GSP) can be successfully utilised to significantly enhance PMTs' conceptualisation and study orientation, as prerequisite for deep conceptualisation, in geometry. / Thesis (M.Ed.)--North-West University, Potchefstroom Campus, 2006
15

[en] A STUDY OF DYNAMIC UPDATE FOR SOFTWARE COMPONENTS / [pt] UM ESTUDO SOBRE ATUALIZAÇÃO DINÂMICA DE COMPONENTES DE SOFTWARE

EDUARDO CASTRO MOTA CAMARA 07 October 2014 (has links)
[pt] O desenvolvimento baseado em sistemas de componentes de software consiste em compor sistemas a partir de unidades de sotfware prontas e reutilizáveis. Muitos sistemas de componentes software em produção, precisam ficar disponíveis durante 24 horas por dia nos 7 dias da semana. Atualizações dinâmicas permitem que os sistemas sejam atualizados sem interromperem a execução dos seus serviços, aplicando a atualização em tempo de execução. Muitas técnicas de atualização dinâmica, na literatura, utilizam aplicações feitas especificamente para cobrir os pontos implementados e poucas utilizam um histórico de necessidades de um sistema real. Este trabalho estuda os principais casos de atualizações que ocorrem em um sistema de componentes de uso extenso, o Openbus, que consiste em uma infraestrutura de integração responsável pela comunicação de diversas aplicações de aquisição, processamento e interpretação de dados. Além deste estudo, implementamos uma solução de atualização dinâmica para acomodar as necessidades deste sistema. Depois, utilizando a solução implementada, apresentamos um teste de sobrecarga e algumas aplicações de atualizações do Openbus. / [en] The component-based development of software systems consists on composing systems from ready and reusable sotfware units. Many software componente systems on production, need to be available 24 hours a day 7 days a week. Dynamic updates allow systems to be upgraded without interrupting the execution of its services, applying the update at runtime. Many dynamics software update techniques in the literature use applications specically implemented to cover the presented points and only a few use a historical need of a real system. This work studies the main cases of updates that occur in a system of components with extensive use, the Openbus, which consists of an integration infrastructure responsible for communication of various applications for acquisition, processing and interpretation of data. In addition to this study, we implement a solution of dynamic software update to accommodate the needs of this system. After, using the implemented solution, we present an overhead test and applications of updates on Openbus.
16

Dynamic Software Update for Production and Live Programming Environments / Mise à jour Dynamique pour Environnemts de Production et Programmation Interactive

Tesone, Pablo 17 December 2018 (has links)
Mettre à jour des applications durant leur exécution est utilisé aussi bien en production pour réduire les temps d’arrêt des applications que dans des environnements de développement interactifs (IDE pour live programming). Toutefois, ces deux scénarios présentent des défis différents qui font que les solutions de mise à jour dynamique (DSU pour Dynamic Software Updating) existantes sont souvent spécifiques à l’un des deux. Par exemple, les DSUs pour la programmation interactives ne supportent généralement pas la détection automatique de points sûrs de mise à jour ni la migration d’instances, alors que les DSUs pour la production nécessitent une génération manuelle de l’ensemble des modifications et manquent d’intégration avec l’IDE. Les solutions existantes ont également une capacité limitées à se mettre à jour elles-mêmes ou à mettre à jour les bibliothèques de base du langage ; et certaines d’entre elles introduisent mêmle une dégradation des performances d’exécution en dehors du processus de mise à jour.Dans cette thèse, nous proposons un DSU (nommé gDSU) unifié qui fonctionne à la fois pour la programmation interactive et les environnements de production. gDSU permet la détection automatique des points sûrs de mise à jour en analysant et manipulant la pile d’exécution, et offre un mécanisme réutilisable de migration d’instances afin de minimiser les interventions manuelles lors de l’application d’une migration. gDSU supporte également la mise à jour des bibliothèques du noyau du langage et du mécanisme de mise à jour lui-même. Ceci est réalisé par une copie incrémentale des objets à modifier et une application atomique de ces modifications.gDSU n’affecte pas les performances globales de l’application et ne présente qu’une pénalité d’exécution lors processus de mise à jour. Par exemple, gDSU est capable d’appliquer une mise à jour sur 100 000 instances en 1 seconde. Durant cette seconde, l’application ne répond pas pendant 250 milli-secondes seulement. Le reste du temps, l’application s’exécute normalement pendant que gDSU recherche un point sûr de mise à jour qui consiste alors uniquement à copier les éléments modifiés.Nous présentons également deux extensions de gDSU permettant un meilleur support du développement interactif dans les IDEs : la programmation interactive transactionnelle et l’application atomique de reusinages (refactorings). / Updating applications during their execution is used both in production to minimize application downtine and in integrated development environments to provide live programming support. Nevertheless, these two scenarios present different challenges making Dynamic Software Update (DSU) solutions to be specifically designed for only one of these use cases. For example, DSUs for live programming typically do not implement safe point detection or insistance migration, while production DSUs require manual generation of patches and lack IDE integration. These sollutions also have a limited ability to update themselves or the language core libraries and some of them present execution penalties outside the update window.In this PhD, we propose a unified DSU named gDSU for both live programming and production environments. gDSU provides safe update point detection using call stack manipulation and a reusable instance migration mechanism to minimize manual intervention in patch generation. It also supports updating the core language libraries as well as the update mechanism itself thanks to its incremental copy of the modified objects and its atomic commit operation.gDSU does not affect the global performance of the application and it presents only a run-time penalty during the window. For example, gDSU is able to apply an update impacting 100,000 instances in 1 second making the application not responsive for only 250 milliseconds. The rest of the time the applications runs normally while gDSU is looking for a safe update point during which modified elements will be copied.We also present extensions of gDSU to support transactional live programming and atomic automactic refactorings which increase the usability of live programming environments.
17

The effect of a dynamic technological learning environment on the geometry conceptualisation of pre-service mathematics teachers / by Jeannette Kotze

Kotze, Jeannette January 2006 (has links)
Thesis (M.Ed.)--North-West University, Potchefstroom Campus, 2006.
18

The effect of a dynamic technological learning environment on the geometry conceptualisation of pre-service mathematics teachers / by Jeannette Kotze

Kotze, Jeannette January 2006 (has links)
Traditionally, geometry at school starts on a formal level, largely ignoring prerequisite skills needed for formal spatial reasoning. Ignoring that geometry conceptualisation has a sequential and hierarchical nature, causes ineffective teaching and learning with a long lasting inhibiting influence on spatial development and learning. One of the current reform movements in mathematics education is the appropriate use of dynamic computer technology in the teaching and learning of mathematics. Concerning mathematics education, the lecturers may involve the introduction of both dynamic computer technology and mathematics in meaningful contexts that will enable interplay between the two. Pre-service mathematics teachers (PMTs) can be encouraged to become actively involved in their learning and, therefore, less frustrated in their study orientation in mathematics. Therefore, such learning environments may be essential to enhance the conceptual understanding of PMTs. To be able to reach their eventual learners, PMTs' own conceptual understanding of geometry should be well developed. When PMTs have conceptual understanding of a mathematical procedure, they will perceive this procedure as a mathematical model of a problem situation, rather than just an algorithm. This study aimed at investigating the effect of a technologically enhanced learning environment on PMTs' understanding of geometry concepts and their study orientation in mathematics, as prerequisite for deep conceptualisation. A combined quantitative and qualitative research approach was used. The quantitative investigation employed a pre-experimental one-group pre-test post-test design. A Mayberry-type test was used to collect data with regard to PMTs' conceptualisation of geometry concepts, while the Study Orientation in Mathematics (SOM) questionnaire was used to collect data with regard their study orientation in mathematics. The qualitative investigation employed phenomenological interviews to collect supplementary information about the participating PMTs' experiences and assessment of the influence of the use of the dynamic software Geometer's Sketchpad (GSP) on their learning and conceptualisation of geometry concepts. During post-testing the participating group of PMTs achieved practically significantly higher scores in the Mayberry-type test, as well as in all fields of the SOM questionnaire. Results seem to indicate that PMTs gained significantly in the expected high levels of conceptualisation, as well as high degrees of acquisition of those levels during the intervention programme. The main conclusion of the study is that a technologically enhanced learning environment (such as GSP) can be successfully utilised to significantly enhance PMTs' conceptualisation and study orientation, as prerequisite for deep conceptualisation, in geometry. / Thesis (M.Ed.)--North-West University, Potchefstroom Campus, 2006
19

Modeling with Sketchpad to enrich students' concept image of the derivative in introductory calculus : developing domain specific understanding

Ndlovu, Mdutshekelwa 02 1900 (has links)
It was the purpose of this design study to explore the Geometer’s Sketchpad dynamic mathematics software as a tool to model the derivative in introductory calculus in a manner that would foster a deeper conceptual understanding of the concept – developing domain specific understanding. Sketchpad’s transformation capabilities have been proved useful in the exploration of mathematical concepts by younger learners, college students and professors. The prospect of an open-ended exploration of mathematical concepts motivated the author to pursue the possibility of representing the concept of derivative in dynamic forms. Contemporary CAS studies have predominantly dwelt on static algebraic, graphical and numeric representations and the connections that students are expected to make between them. The dynamic features of Sketchpad and such like software, have not been elaborately examined in so far as they have the potential to bridge the gap between actions, processes and concepts on the one hand and between representations on the other. In this study Sketchpad model-eliciting activities were designed, piloted and revised before a final implementation phase with undergraduate non-math major science students enrolled for an introductory calculus course. Although most of these students had some pre-calculus and calculus background, their performance in the introductory course remained dismal and their grasp of the derivative slippery. The dual meaning of the derivative as the instantaneous rate of change and as the rate of change function was modeled in Sketchpad’s multiple representational capabilities. Six forms of representation were identified: static symbolic, static graphic, static numeric, dynamic graphic, dynamic numeric and occasionally dynamic symbolic. The activities enabled students to establish conceptual links between these representations. Students were able to switch systematically from one form of (foreground or background) representation to another leading to a unique qualitative understanding of the derivative as the invariant concept across the representations. Experimental students scored significantly higher in the posttest than in the pretest. However, in comparison with control group students the experimental students performed significantly better than control students in non-routine problems. A cyclical model of developing a deeper concept image of the derivative is therefore proposed in this study. / Educational Studies / D. Ed. (Education)
20

ATUALIZAÇÃO DINÂMICA DE SOFTWARE EM SGBDS COM SUPORTE DO MODELO DE COMPONENTES / DYNAMIC SOFTWARE UPDATE IN DATABASE MANAGEMENT SYSTEMS WITH SUPPORT OF SOFTWARE COMPONENT MODEL

Gasperi, Cleandro Flores de 11 October 2011 (has links)
The daily use of Internet services in the most diverse human activities creates in users the expectation of high availability of these services. Many of them have database systems as essential building block. Moreover, those services are subject outcomes such as errors and aging. An error-free software or a non-aging software which does not need innovations is an utopia. Thus, software updating is a required task. Currently, software-updating mechanisms are based on two different solutions: (i) using of additional hardware, an expensive and complex solution, or (ii) service interruption, which is trivial but inefficient. In this work, we explore the application of Dynamic Software Update (DSU) techniques as an alternative to update a Data Base Management System (DBMS) without requiring any additional hardware or service unavailability. Our solution was developed in a hypothetical DBMS architecture with the support of a software component model. A prototype was developed in accordance with this model using FRACTAL. Experimental evaluation confirmed the functional viability of this approach. The implementation overhead in a controlled environment was about 30%, which is acceptable. / O uso cotidiano da Internet nas mais diversas atividades humanas acaba por criar nos usuários a expectativa de serviços disponíveis a qualquer momento. Muitos destes serviços tem os Sistemas Gerenciadores de Banco de Dados (SGBDs) como ferramenta básica e essencial. Além disso, esses softwares estão sujeitos a erros e envelhecimento. Um software livre de erros ou que não precise de inovações é uma utopia. Assim, é necessário que o software sofra atualizações. Atualmente, os mecanismos para atualização de software utilizam hardware adicional, uma solução mais cara e complexa, ou optam pela indisponibilição do serviço para os clientes (parada do sistema), que é solução trivial mas ainda eficiente. O que este trabalho traz é a aplicação de técnicas de Atualização Dinâmica de Software (ADS) como uma alternativa para atualizar um SGBD sem o uso de hardware adicional e a indisponibilização do sistema. Para tanto, propõe-se o desenvolvimento de um SGBD em uma arquitetura hipotética com o suporte de componentes de software. Criou-se um protótipo de acordo com a solução proposta, utilizando o modelo de componentes FRACTAL. A avaliação experimental confirmou a viabilidade funcional da solução e que a sobrecarga da implementação em um ambiente controlado foi de aproximadamente 30%. Esta sobrecarga é aceitável, uma vez que se obtem a atualização do SGBD sem a parada total do mesmo.

Page generated in 0.4777 seconds