dc.contributor.advisor | Tůma, Petr | |
dc.creator | Marek, Lukáš | |
dc.date.accessioned | 2018-11-30T13:15:38Z | |
dc.date.available | 2018-11-30T13:15:38Z | |
dc.date.issued | 2014 | |
dc.identifier.uri | http://hdl.handle.net/20.500.11956/68909 | |
dc.description.abstract | A dynamic program analysis provides essential information during later phases of an application development. It helps with debugging, profiling, performance optimizations or vulnerability detection. Despite that, support for creating custom dynamic analysis tools, especially in the domain of managed languages, is rather limited. In this thesis, we present two systems to help improve application observability on the Java platform. DiSL is a language accompanied with a framework allowing simple and flexible instrumentation for the dynamic program analysis. DiSL provides high level abstractions to enable quick prototyping even for programmers not possessing a knowledge of Java internals. A skilled analysis developer gains full control over the instrumentation process, thus does not have to worry about unwanted allocations or hidden execution overhead. ShadowVM is a platform that provides isolation between the observed application and the analysis environment. To reduce the amount of possible interactions between the analysis and the application, ShadowVM offloads analysis events out of the context of the application. Even though the isolation is the primary focus of the platform, ShadowVM introduces a number of techniques to stay performance comparable and provide a similar programming model as existing... | en_US |
dc.description.abstract | Dynamická analýza aplikací zprostředkovává důležité informace během pozdějších fází vývoje. Napomáhá při laděni, profilování, výkonnostní optimalizaci nebo při detekci bezpečnostních chyb. Nicméně, podpora pro vytváření vlastních nástrojů pro dynamickou analýzu, speciálně v oblasti řízených jazyků, je poměrně omezená. Tato práce prezentuje dva systémy, které pomáhají zlepšit sledování aplikací na platformě Java. DiSL je jazyk a framework, který umožňuje jednoduchou a flexibilní instrumentaci zaměřenou na dynamickou analýzu. DiSL poskytuje abstrakce vyšší úrovně pro rychlé prototypování i pro vývojáře, kteří nemají znalosti interních systémů v Javě. Kvalifikovaný vývojář získává plnou kontrol na instrumentačním procesem, tudíž se nemusí bát nevyžádaných alokací nebo skryté běhové režie. ShadowVM je platforma poskytující separaci mezi sledovanou aplikací a prostředím pro analýzu. Pro zmírnění interakcí mezi analýzou a aplikací, ShadowVM transportuje události analýzy mimo kontext aplikace. I když je primárním cílem platformy izolace, ShadowVM zavádí několik technik tak, aby zůstala rychlostně srovnatelná a vytvářela obobné vývojové podmínky jako existující frameworky pro dynamickou analýzu. | cs_CZ |
dc.language | English | cs_CZ |
dc.language.iso | en_US | |
dc.publisher | Univerzita Karlova, Matematicko-fyzikální fakulta | cs_CZ |
dc.subject | Bytecode instrumentation | en_US |
dc.subject | dynamic program analysis | en_US |
dc.subject | aspect-oriented programming | en_US |
dc.subject | JVM | en_US |
dc.subject | Bajtkódová instrumentace | cs_CZ |
dc.subject | dynamická analýza programů | cs_CZ |
dc.subject | aspektově orientované programování | cs_CZ |
dc.subject | JVM | cs_CZ |
dc.title | Instrumentation and Evaluation for Dynamic Program Analysis | en_US |
dc.type | dizertační práce | cs_CZ |
dcterms.created | 2014 | |
dcterms.dateAccepted | 2014-09-17 | |
dc.description.department | Katedra distribuovaných a spolehlivých systémů | cs_CZ |
dc.description.department | Department of Distributed and Dependable Systems | en_US |
dc.description.faculty | Faculty of Mathematics and Physics | en_US |
dc.description.faculty | Matematicko-fyzikální fakulta | cs_CZ |
dc.identifier.repId | 73952 | |
dc.title.translated | Instrumentace a vyhodnocení pro dynamickou analýzu aplikací. | cs_CZ |
dc.contributor.referee | Hasselbring, Wilhelm | |
dc.contributor.referee | Krall, Andreas | |
dc.identifier.aleph | 001864169 | |
thesis.degree.name | Ph.D. | |
thesis.degree.level | doktorské | cs_CZ |
thesis.degree.discipline | Softwarové systémy | cs_CZ |
thesis.degree.discipline | Software Systems | en_US |
thesis.degree.program | Informatics | en_US |
thesis.degree.program | Informatika | cs_CZ |
uk.thesis.type | dizertační práce | cs_CZ |
uk.taxonomy.organization-cs | Matematicko-fyzikální fakulta::Katedra distribuovaných a spolehlivých systémů | cs_CZ |
uk.taxonomy.organization-en | Faculty of Mathematics and Physics::Department of Distributed and Dependable Systems | en_US |
uk.faculty-name.cs | Matematicko-fyzikální fakulta | cs_CZ |
uk.faculty-name.en | Faculty of Mathematics and Physics | en_US |
uk.faculty-abbr.cs | MFF | cs_CZ |
uk.degree-discipline.cs | Softwarové systémy | cs_CZ |
uk.degree-discipline.en | Software Systems | en_US |
uk.degree-program.cs | Informatika | cs_CZ |
uk.degree-program.en | Informatics | en_US |
thesis.grade.cs | Prospěl/a | cs_CZ |
thesis.grade.en | Pass | en_US |
uk.abstract.cs | Dynamická analýza aplikací zprostředkovává důležité informace během pozdějších fází vývoje. Napomáhá při laděni, profilování, výkonnostní optimalizaci nebo při detekci bezpečnostních chyb. Nicméně, podpora pro vytváření vlastních nástrojů pro dynamickou analýzu, speciálně v oblasti řízených jazyků, je poměrně omezená. Tato práce prezentuje dva systémy, které pomáhají zlepšit sledování aplikací na platformě Java. DiSL je jazyk a framework, který umožňuje jednoduchou a flexibilní instrumentaci zaměřenou na dynamickou analýzu. DiSL poskytuje abstrakce vyšší úrovně pro rychlé prototypování i pro vývojáře, kteří nemají znalosti interních systémů v Javě. Kvalifikovaný vývojář získává plnou kontrol na instrumentačním procesem, tudíž se nemusí bát nevyžádaných alokací nebo skryté běhové režie. ShadowVM je platforma poskytující separaci mezi sledovanou aplikací a prostředím pro analýzu. Pro zmírnění interakcí mezi analýzou a aplikací, ShadowVM transportuje události analýzy mimo kontext aplikace. I když je primárním cílem platformy izolace, ShadowVM zavádí několik technik tak, aby zůstala rychlostně srovnatelná a vytvářela obobné vývojové podmínky jako existující frameworky pro dynamickou analýzu. | cs_CZ |
uk.abstract.en | A dynamic program analysis provides essential information during later phases of an application development. It helps with debugging, profiling, performance optimizations or vulnerability detection. Despite that, support for creating custom dynamic analysis tools, especially in the domain of managed languages, is rather limited. In this thesis, we present two systems to help improve application observability on the Java platform. DiSL is a language accompanied with a framework allowing simple and flexible instrumentation for the dynamic program analysis. DiSL provides high level abstractions to enable quick prototyping even for programmers not possessing a knowledge of Java internals. A skilled analysis developer gains full control over the instrumentation process, thus does not have to worry about unwanted allocations or hidden execution overhead. ShadowVM is a platform that provides isolation between the observed application and the analysis environment. To reduce the amount of possible interactions between the analysis and the application, ShadowVM offloads analysis events out of the context of the application. Even though the isolation is the primary focus of the platform, ShadowVM introduces a number of techniques to stay performance comparable and provide a similar programming model as existing... | en_US |
uk.file-availability | V | |
uk.publication.place | Praha | cs_CZ |
uk.grantor | Univerzita Karlova, Matematicko-fyzikální fakulta, Katedra distribuovaných a spolehlivých systémů | cs_CZ |
thesis.grade.code | P | |
dc.identifier.lisID | 990018641690106986 | |