Mbs SDK 8.2 Features

Total Page:16

File Type:pdf, Size:1020Kb

Mbs SDK 8.2 Features ProSyst Gateway Software mBS SDK 8.2 Features Bosch Software Innovations Overview of revisions INST/PSY Anastas Chobanov Status: July 2017 mBS SDK 8.2 Overview of revisions Date Changes/Comments Author 18-07-2017 Migrated the doc to the new layout and did some minor version-wise changes. Anastas Chobanov © Bosch Software Innovations GmbH 2 mBS SDK 8.2 Content 1 INTRODUCTION .................................................................................................................... 4 2 OSGI RUNTIME ..................................................................................................................... 5 2.1 Supported OSGi Specifications ................................................................................................................. 5 2.1.1 OSGi Core Release 5 Specification ........................................................................................................... 5 2.1.2 OSGi Compendium Release 5 and OSGi Residential 4.3 Specifications ................................................... 6 2.1.3 Supported Java Virtual Machines ............................................................................................................. 8 2.2 Core Extensions ....................................................................................................................................... 9 2.3 IoT Extension .............................................................................................. Error! Bookmark not defined.4 2.4 I/O Extensions............................................................................................. Error! Bookmark not defined.4 2.5 Persistence Extension ................................................................................ Error! Bookmark not defined.5 2.6 Tooling Extension ........................................................................................ Error! Bookmark not defined.5 2.7 Remote Access Extension ........................................................................... Error! Bookmark not defined.6 2.8 Test Execution Environment... .................................................................... Error! Bookmark not defined.6 2.9 Remote Management Extension ................................................................. Error! Bookmark not defined.7 3 ECLIPSE PLUG-INS ............................................................................................................... 18 3.1 mToolkit ..................................................................................................... Error! Bookmark not defined.8 3.2 mBProfiler................................................................................................... Error! Bookmark not defined.0 3.2.1 Supported Platforms for mBProfiler Agent ............................................. Error! Bookmark not defined.1 3.3 System Plug-ins ........................................................................................... Error! Bookmark not defined.3 4 OSGI RUNTIME VALIDATOR ................................................................................................ 24 5 ADDONS ............................................................................................................................. 25 5.1 Board Support Packages ........................................................................................................................ 25 6 APPENDIX A: RESOURCES ................................................................................................... 26 © Bosch Software Innovations GmbH 3 mBS SDK 8.2 1 Introduction mBS SDK provides the ProSyst OSGi stack and a number of additional features for various use cases as well as a powerful toolset for Eclipse and a validation pack. mBS SDK consists of three main components: OSGi Runtime. Contains our implementation of the OSGi standard and a set of functional ProSyst components. In the next sections, we will also use the name “mBS Runtime” for this component. The purpose of the OSGi Runtime is to serve as the base for tailoring runtime images for specific target devices. Typically, these images represent a subset of the features provided by the mBS Runtime, which covers the requirements for the target device without keeping unnecessary components. Eclipse Plug-ins. A powerful set of tools to aid the development, testing and profiling of OSGi-based applications both in an emulated runtime environment and directly on the target device. OSGi Runtime Validator. Supplies the option to validate the components of the OSGi Runtime on a specific target platform. The validation comprises functional as well as non- functional (performance and stability) tests. © Bosch Software Innovations GmbH 4 mBS SDK 8.2 2 OSGi Runtime 2.1 Supported OSGi Specifications 2.1.1 OSGi Core Release 5 Specification ProSyst’s OSGi Runtime fully implements the OSGi Core Specification, Release 5, including all optional features. The supported features are outlined in the following table. OSGi Core Release 5 Features Supported Security Layer Module Layer Life Cycle Layer Service Layer Resource API Specification Bundle Wiring API Specification Framework Namespaces Specification Start Level API Specification Framework API Specification Framework Launcher API Specification Conditional Permission Admin Service Specification Permission Admin Service Specification URL Handlers Service Specification Resolver Hook Service Specification Bundle Hook Service Specification Service Hook Service Specification Weaving Hook Service Specification Tracker Specification Bundle Hook Service Specification © Bosch Software Innovations GmbH 5 mBS SDK 8.2 2.1.2 OSGi Compendium Release 5 and OSGi Residential 4.3 Specification The mBS Runtime fully implements most of the features of the OSGi Compendium Release 5 Specification and the OSGi Service Platform Residential Specification, Release 4, Version 4.3. The support for each feature outlined in the following table is related to its version within the specification to which it belongs. For convenience, all features are numbered and ordered as they appear in the corresponding specification. Features OSGi Specifications OSGi Compendium OSGi Residential Release 5 Release 4.3 2 – Residential Device Management Tree Specification 3 – TR-157 Amendment 3 Software Module Guidelines 100 – Remote Services 101 – Log Service Specification 102 – Http Service Specification 103 – Device Access Specification 104 – Configuration Admin Service Specification 105 – Metatype Service Specification 106 – Preferences Service Specification 107 – User Admin Service Specification 108 – Wire Admin Service Specification 109 – IO Connector Service Specification 110 – Initial Provisioning Specification 111 – UPnP Device Service Specification 112 – Declarative Services Specification 113 – Event Admin Service Specification 114 – Deployment Admin Specification 115 – Auto Configuration Specification 116 – Application Admin Specification 117 – Dmt Admin Service Specification 119 – Monitor Admin Service Specification 120 – Foreign Application Access Specification 121 – Blueprint Container Specification 122 – Remote Service Admin Service Specification 123 – JTA Transaction Services Specification © Bosch Software Innovations GmbH 6 mBS SDK 8.2 125 – JDBC Service Specification 126 – JNDI Services Specification 127 – JPA Service Specification 128 – Web Applications Specification 130 – Coordinator Service Specification 131 – TR069 Connector Service Specification 132 – Repository Service Specification 133 – Service Loader Mediator Specification 134 – Subsystem Service Specification 135 – Common Namespaces Specification 136 – Resolver Service Specification 701 – Tracker Specification 702 – XML Parser Service Specification 703 – Position Specification 704 – Measurement and State Specification 999 – Execution Environment Specification Legend: The feature is supported The feature is not supported The feature is not part of the specification © Bosch Software Innovations GmbH 7 mBS SDK 8.2 2.1.3 Supported Java Virtual Machines The following table outlines the JVMs that mBS SDK is tested on and is known to run on. Java Virtual Machines Desktop JVMs Oracle Java SE (7, 8) Embedded JVMs Oracle Java SE Embedded (7, 8) full and compact profiles JBED full and compact profiles Azul full and compact profiles Oracle Java SE (older versions) 1 JVMs known to run on Skelmir CEE-J ® VM Atego Aonix Perc® Ultra phoneME Advanced Kaffe VM JamVM JamaicaVM Kiffer Open Mika GNU Compiler for Java CacaoVM Open JDK Microdoc J9 2.4 Android Runtime (Dalvik VM) © Bosch Software Innovations GmbH 8 mBS SDK 8.2 2.2 Core Extensions The heart of mBS Runtime is the implementation of the OSGi Core Specification. This section covers the extensions to this specification and the other special features that make our OSGi environment unique. Security Together with the full implementation of the OSGi security model, mBS Runtime offers the following optimizations and unique characteristics: Proper usage of doPriviledged blocks (based on the support of the OSGi security model). Optimized permission checks – Installed bundles can be divided in two groups: core and application. Core bundles permission checks can be bypassed assuming that they are always trusted. Support of signed bundles. Enhanced policy management – The OSGi specification introduces a security paradigm based on the Java Security Model. However, as this model is very complicated, configuring the security
Recommended publications
  • Toward Harnessing High-Level Language Virtual Machines for Further Speeding up Weak Mutation Testing
    2012 IEEE Fifth International Conference on Software Testing, Verification and Validation Toward Harnessing High-level Language Virtual Machines for Further Speeding up Weak Mutation Testing Vinicius H. S. Durelli Jeff Offutt Marcio E. Delamaro Computer Systems Department Software Engineering Computer Systems Department Universidade de Sao˜ Paulo George Mason University Universidade de Sao˜ Paulo Sao˜ Carlos, SP, Brazil Fairfax, VA, USA Sao˜ Carlos, SP, Brazil [email protected] [email protected] [email protected] Abstract—High-level language virtual machines (HLL VMs) have tried to exploit the control that HLL VMs exert over run- are now widely used to implement high-level programming ning programs to facilitate and speedup software engineering languages. To a certain extent, their widespread adoption is due activities. Thus, this research suggests that software testing to the software engineering benefits provided by these managed execution environments, for example, garbage collection (GC) activities can benefit from HLL VMs support. and cross-platform portability. Although HLL VMs are widely Test tools are usually built on top of HLL VMs. However, used, most research has concentrated on high-end optimizations they often end up tampering with the emergent computation. such as dynamic compilation and advanced GC techniques. Few Using features within the HLL VMs can avoid such problems. efforts have focused on introducing features that automate or fa- Moreover, embedding testing tools within HLL VMs can cilitate certain software engineering activities, including software testing. This paper suggests that HLL VMs provide a reasonable significantly speedup computationally expensive techniques basis for building an integrated software testing environment. As such as mutation testing [6].
    [Show full text]
  • An OSEK/VDX-Based Multi-JVM for Automotive Appliances
    AN OSEK/VDX-BASED MULTI-JVM FOR AUTOMOTIVE APPLIANCES Christian Wawersich, Michael Stilkerich, Wolfgang Schr¨oder-Preikschat University of Erlangen-Nuremberg Distributed Systems and Operating Systems Erlangen, Germany E-Mail: [email protected], [email protected], [email protected] Abstract: The automotive industry has recent ambitions to integrate multiple applications from different micro controllers on a single, more powerful micro controller. The outcome of this integration process is the loss of the physical isolation and a more complex monolithic software. Memory protection mechanisms need to be provided that allow for a safe co-existence of heterogeneous software from different vendors on the same hardware, in order to prevent the spreading of an error to the other applications on the controller and leaving an unclear responsi- bility situation. With our prototype system KESO, we present a Java-based solution for ro- bust and safe embedded real-time systems that does not require any hardware protection mechanisms. Based on an OSEK/VDX operating system, we offer a familiar system creation process to developers of embedded software and also provide the key benefits of Java to the embedded world. To the best of our knowledge, we present the first Multi-JVM for OSEK/VDX operating systems. We report on our experiences in integrating Java and an em- bedded operating system with focus on the footprint and the real-time capabili- ties of the system. Keywords: Java, Embedded Real-Time Systems, Automotive, Isolation, KESO 1. INTRODUCTION Modern cars contain a multitude of micro controllers for a wide area of tasks, ranging from convenience features such as the supervision of the car’s audio system to safety relevant functions such as assisting the braking system of the car.
    [Show full text]
  • A Hardware Abstraction Layer in Java
    A Hardware Abstraction Layer in Java MARTIN SCHOEBERL Vienna University of Technology, Austria STEPHAN KORSHOLM Aalborg University, Denmark TOMAS KALIBERA Purdue University, USA and ANDERS P. RAVN Aalborg University, Denmark Embedded systems use specialized hardware devices to interact with their environment, and since they have to be dependable, it is attractive to use a modern, type-safe programming language like Java to develop programs for them. Standard Java, as a platform independent language, delegates access to devices, direct memory access, and interrupt handling to some underlying operating system or kernel, but in the embedded systems domain resources are scarce and a Java virtual machine (JVM) without an underlying middleware is an attractive architecture. The contribution of this paper is a proposal for Java packages with hardware objects and interrupt handlers that interface to such a JVM. We provide implementations of the proposal directly in hardware, as extensions of standard interpreters, and finally with an operating system middleware. The latter solution is mainly seen as a migration path allowing Java programs to coexist with legacy system components. An important aspect of the proposal is that it is compatible with the Real-Time Specification for Java (RTSJ). Categories and Subject Descriptors: D.4.7 [Operating Systems]: Organization and Design—Real-time sys- tems and embedded systems; D.3.3 [Programming Languages]: Language Classifications—Object-oriented languages; D.3.3 [Programming Languages]: Language Constructs and Features—Input/output General Terms: Languages, Design, Implementation Additional Key Words and Phrases: Device driver, embedded system, Java, Java virtual machine 1. INTRODUCTION When developing software for an embedded system, for instance an instrument, it is nec- essary to control specialized hardware devices, for instance a heating element or an inter- ferometer mirror.
    [Show full text]
  • Techniques for Real-System Characterization of Java Virtual Machine Energy and Power Behavior Gilberto Contreras Margaret Martonosi
    Techniques for Real-System Characterization of Java Virtual Machine Energy and Power Behavior Gilberto Contreras Margaret Martonosi Department of Electrical Engineering Princeton University 1 Why Study Power in Java Systems? The Java platform has been adopted in a wide variety of devices Java servers demand performance, embedded devices require low-power Performance is important, power/energy/thermal issues are equally important How do we study and characterize these requirements in a multi-layer platform? 2 Power/Performance Design Issues Java Application Java Virtual Machine Operating System Hardware 3 Power/Performance Design Issues Java Application Garbage Class Runtime Execution Collection LoaderJava VirtualCompiler MachineEngine Operating System Hardware How do the various software layers affect power/performance characteristics of hardware? Where should time be invested when designing power and/or thermally aware Java virtual Machines? 4 Outline Approaches for Energy/Performance Characterization of Java virtual machines Methodology Breaking the JVM into sub-components Hardware-based power/performance characterization of JVM sub-components Results Jikes & Kaffe on Pentium M Kaffe on Intel XScale Conclusions 5 Power & Performance Analysis of Java Simulation Approach √ Flexible: easy to model non-existent hardware x Simulators may lack comprehensiveness and accuracy x Thermal studies require tens of seconds granularity Accurate simulators are too slow Hardware Approach √ Able to capture full-system characteristics
    [Show full text]
  • Apache Harmony Project Tim Ellison Geir Magnusson Jr
    The Apache Harmony Project Tim Ellison Geir Magnusson Jr. Apache Harmony Project http://harmony.apache.org TS-7820 2007 JavaOneSM Conference | Session TS-7820 | Goal of This Talk In the next 45 minutes you will... Learn about the motivations, current status, and future plans of the Apache Harmony project 2007 JavaOneSM Conference | Session TS-7820 | 2 Agenda Project History Development Model Modularity VM Interface How Are We Doing? Relevance in the Age of OpenJDK Summary 2007 JavaOneSM Conference | Session TS-7820 | 3 Agenda Project History Development Model Modularity VM Interface How Are We Doing? Relevance in the Age of OpenJDK Summary 2007 JavaOneSM Conference | Session TS-7820 | 4 Apache Harmony In the Beginning May 2005—founded in the Apache Incubator Primary Goals 1. Compatible, independent implementation of Java™ Platform, Standard Edition (Java SE platform) under the Apache License 2. Community-developed, modular architecture allowing sharing and independent innovation 3. Protect IP rights of ecosystem 2007 JavaOneSM Conference | Session TS-7820 | 5 Apache Harmony Early history: 2005 Broad community discussion • Technical issues • Legal and IP issues • Project governance issues Goal: Consolidation and Consensus 2007 JavaOneSM Conference | Session TS-7820 | 6 Early History Early history: 2005/2006 Initial Code Contributions • Three Virtual machines ● JCHEVM, BootVM, DRLVM • Class Libraries ● Core classes, VM interface, test cases ● Security, beans, regex, Swing, AWT ● RMI and math 2007 JavaOneSM Conference | Session TS-7820 |
    [Show full text]
  • A Post-Apocalyptic Sun.Misc.Unsafe World
    A Post-Apocalyptic sun.misc.Unsafe World http://www.superbwallpapers.com/fantasy/post-apocalyptic-tower-bridge-london-26546/ Chris Engelbert Twitter: @noctarius2k Jatumba! 2014, 2015, 2016, … Disclaimer This talk is not going to be negative! Disclaimer But certain things are highly speculative and APIs or ideas might change by tomorrow! sun.misc.Scissors http://www.underwhelmedcomic.com/wp-content/uploads/2012/03/runningdude.jpg sun.misc.Unsafe - What you (don’t) know sun.misc.Unsafe - What you (don’t) know • Internal class (sun.misc Package) sun.misc.Unsafe - What you (don’t) know • Internal class (sun.misc Package) sun.misc.Unsafe - What you (don’t) know • Internal class (sun.misc Package) • Used inside the JVM / JRE sun.misc.Unsafe - What you (don’t) know • Internal class (sun.misc Package) • Used inside the JVM / JRE // Unsafe mechanics private static final sun.misc.Unsafe U; private static final long QBASE; private static final long QLOCK; private static final int ABASE; private static final int ASHIFT; static { try { U = sun.misc.Unsafe.getUnsafe(); Class<?> k = WorkQueue.class; Class<?> ak = ForkJoinTask[].class; example: QBASE = U.objectFieldOffset (k.getDeclaredField("base")); java.util.concurrent.ForkJoinPool QLOCK = U.objectFieldOffset (k.getDeclaredField("qlock")); ABASE = U.arrayBaseOffset(ak); int scale = U.arrayIndexScale(ak); if ((scale & (scale - 1)) != 0) throw new Error("data type scale not a power of two"); ASHIFT = 31 - Integer.numberOfLeadingZeros(scale); } catch (Exception e) { throw new Error(e); } } } sun.misc.Unsafe
    [Show full text]
  • Openjdk – the Future of Open Source Java on GNU/Linux
    OpenJDK – The Future of Open Source Java on GNU/Linux Dalibor Topić Java F/OSS Ambassador Blog aggregated on http://planetjdk.org Java Implementations Become Open Source Java ME, Java SE, and Java EE 2 Why now? Maturity Java is everywhere Adoption F/OSS growing globally Innovation Faster progress through participation 3 Why GNU/Linux? Values Freedom as a core value Stack Free Software above and below the JVM Demand Increasing demand for Java integration 4 Who profits? Developers New markets, new possibilities Customers More innovations, reduced risk Sun Mindshare, anchoring Java in GNU/Linux 5 License + Classpath GPL v2 Exception • No proprietary forks (for SE, EE) • Popular & trusted • Programs can have license any license • Compatible with • Improvements GNU/Linux remain in the community • Fostering adoption • FSFs license for GNU Classpath 6 A Little Bit Of History Jun 1996: Work on gcj starts Nov 1996: Work on Kaffe starts Feb 1998: First GNU Classpath Release Mar 2000: GNU Classpath and libgcj merge Dec 2002: Eclipse runs on gcj/Classpath Oct 2003: Kaffe switches to GNU Classpath Feb 2004: First FOSDEM Java Libre track Apr 2004: Richard Stallman on the 'Java Trap' Jan 2005: OpenOffice.org runs on gcj Mai 2005: Work on Harmony starts 7 Sun & Open Source Java RIs Juni 2005: Java EE RI Glassfish goes Open Source Mai 2006: First Glassfish release Mai 2006: Java announced to go Open Source November 2006: Java ME RI PhoneME goes Open Source November 2006: Java SE RI Hotspot und Javac go Open Source Mai 2007: The rest of Java SE follows suit 8 Status: JavaOne, Mai 2007 OpenJDK can be fully built from source, 'mostly' Open Source 25,169 Source code files 894 (4%) Binary files (“plugs”) 1,885 (8%) Open Source, though not GPLv2 The rest is GPLv2 (+ CP exception) Sun couldn't release the 4% back then as free software.
    [Show full text]
  • Free Java Developer Room
    Room: AW1.121 Free Java Developer Room Saturday 2008-02-23 14:00-15:00 Welcome to the Free Java Meeting Welcome and introduction to the projects, people and themes that make Rich Sands – Mark Reinhold – Mark up the Free Java Meeting at Fosdem. ~ GNU Classpath ~ OpenJDK Wielaard – Tom Marble 15:00-16:00 Mobile Java Take your freedom to the max! Make your Free Java mobile. Christian Thalinger - Guillaume ~ CACAO Embedded ~ PhoneME ~ Midpath Legris - Ray Gans 16:00-16:40 Women in Java Technology Female programmers are rare. Female Java programmers are even more Clara Ko - Linda van der Pal rare. ~ Duchess, Ladies in Java Break 17:00-17:30 Hacking OpenJDK & Friends Hear about directions in hacking Free Java from the front lines. Roman Kennke - Andrew Hughes ~ OpenJDK ~ BrandWeg ~ IcePick 17:30-19:00 VM Rumble, Porting and Architectures Dalibor Topic - Robert Lougher - There are lots of runtimes able to execute your java byte code. But which Peter Kessler - Ian Rogers - one is the best, coolest, smartest, easiest portable or just simply the most fun? ~ Kaffe ~ JamVM ~ HotSpot ~ JikesRVM ~ CACAO ~ ikvm ~ Zero- Christian Thalinger - Jeroen Frijters assembler Port ~ Mika - Gary Benson - Chris Gray Sunday 2008-02-24 9:00-10:00 Distro Rumble So which GNU/Linux distribution integrates java packages best? Find out Petteri Raty - Tom Fitzsimmons - during this distro shootout! ~ Gentoo ~ Fedora ~ Debian ~ Ubuntu Matthias Klose 10:00-11:30 The Free Java Factory OpenJDK and IcedTea, how are they made and how do you test them? David Herron - Lillian Angel - Tom ~ OpenJDK ~ IcedTea Fitzsimmons 11:30-13:00 JIT Session: Discussion Topics Dynamically Loaded Want to hear about -- or talk about -- something the Free Java world and don't see a topic on the agenda? This time is reserved for late binding Tom Marble discussion.
    [Show full text]
  • Secure Control Applications in Smart Homes and Buildings
    Die approbierte Originalversion dieser Dissertation ist in der Hauptbibliothek der Technischen Universität Wien aufgestellt und zugänglich. http://www.ub.tuwien.ac.at The approved original version of this thesis is available at the main library of the Vienna University of Technology. http://www.ub.tuwien.ac.at/eng Secure Control Applications in Smart Homes and Buildings DISSERTATION submitted in partial fulfillment of the requirements for the degree of Doktor der Technischen Wissenschaften by Mag. Dipl.-Ing. Friedrich Praus Registration Number 0025854 to the Faculty of Informatics at the Vienna University of Technology Advisor: Ao.Univ.Prof. Dipl.-Ing. Dr.techn. Wolfgang Kastner The dissertation has been reviewed by: Ao.Univ.Prof. Dipl.-Ing. Prof. Dr. Peter Palensky Dr.techn. Wolfgang Kastner Vienna, 1st October, 2015 Mag. Dipl.-Ing. Friedrich Praus Technische Universität Wien A-1040 Wien Karlsplatz 13 Tel. +43-1-58801-0 www.tuwien.ac.at Erklärung zur Verfassung der Arbeit Mag. Dipl.-Ing. Friedrich Praus Hallergasse 11/29, A-1110 Wien Hiermit erkläre ich, dass ich diese Arbeit selbständig verfasst habe, dass ich die verwen- deten Quellen und Hilfsmittel vollständig angegeben habe und dass ich die Stellen der Arbeit – einschließlich Tabellen, Karten und Abbildungen –, die anderen Werken oder dem Internet im Wortlaut oder dem Sinn nach entnommen sind, auf jeden Fall unter Angabe der Quelle als Entlehnung kenntlich gemacht habe. Wien, 1. Oktober 2015 Friedrich Praus v Kurzfassung Die zunehmende Integration von heterogenen Gebäudeautomationssystemen ermöglicht gesteigerten Komfort, Energieeffizienz, verbessertes Gebäudemanagement, Nachhaltig- keit sowie erweiterte Anwendungsgebiete, wie beispielsweise “Active Assisted Living” Szenarien. Diese Smart Homes und Gebäude sind heutzutage als dezentrale Systeme rea- lisiert, in denen eingebettete Geräte Prozessdaten über ein Netzwerk austauschen.
    [Show full text]
  • Java Standards: the Mandate for Interoperability and Compatibility
    metagroup.com • 800-945-META [6382] February 2005 Java Standards: The Mandate for Interoperability and Compatibility A META Group White Paper Java Standards: The Mandate for Interoperability and Compatibility Contents Executive Overview ............................................................................................. 2 Java Technology’s Value Proposition ............................................................... 2 The Java Community Process............................................................................ 4 A Customer Perspective ..................................................................................... 7 Bottom Line.......................................................................................................... 8 208 Harbor Drive • Stamford, CT 06902 • (203) 973-6700 • Fax (203) 359-8066 • metagroup.com Copyright © 2005 META Group, Inc. All rights reserved. 1 Java Standards: The Mandate for Interoperability and Compatibility Executive Overview The promise of Java technology is encapsulated in its early catch phrase, “Write once, run anywhere.” This has been a difficult promise to achieve, but META Group research finds that organizations using Java technology are seeking to benefit from platform independence and interoperability as well as avoid vendor lock-in. Having applications run unchanged on multiple platforms may be an impossible goal, yet a significant challenge is also presented by vendors “extending” published specifications to achieve competitive advantage. Although these extensions
    [Show full text]
  • Design and Analysis of a Scala Benchmark Suite for the Java Virtual Machine
    Design and Analysis of a Scala Benchmark Suite for the Java Virtual Machine Entwurf und Analyse einer Scala Benchmark Suite für die Java Virtual Machine Zur Erlangung des akademischen Grades Doktor-Ingenieur (Dr.-Ing.) genehmigte Dissertation von Diplom-Mathematiker Andreas Sewe aus Twistringen, Deutschland April 2013 — Darmstadt — D 17 Fachbereich Informatik Fachgebiet Softwaretechnik Design and Analysis of a Scala Benchmark Suite for the Java Virtual Machine Entwurf und Analyse einer Scala Benchmark Suite für die Java Virtual Machine Genehmigte Dissertation von Diplom-Mathematiker Andreas Sewe aus Twistrin- gen, Deutschland 1. Gutachten: Prof. Dr.-Ing. Ermira Mezini 2. Gutachten: Prof. Richard E. Jones Tag der Einreichung: 17. August 2012 Tag der Prüfung: 29. Oktober 2012 Darmstadt — D 17 For Bettina Academic Résumé November 2007 – October 2012 Doctoral studies at the chair of Prof. Dr.-Ing. Er- mira Mezini, Fachgebiet Softwaretechnik, Fachbereich Informatik, Techni- sche Universität Darmstadt October 2001 – October 2007 Studies in mathematics with a special focus on com- puter science (Mathematik mit Schwerpunkt Informatik) at Technische Uni- versität Darmstadt, finishing with a degree of Diplom-Mathematiker (Dipl.- Math.) iii Acknowledgements First and foremost, I would like to thank Mira Mezini, my thesis supervisor, for pro- viding me with the opportunity and freedom to pursue my research, as condensed into the thesis you now hold in your hands. Her experience and her insights did much to improve my research as did her invaluable ability to ask the right questions at the right time. I would also like to thank Richard Jones for taking the time to act as secondary reviewer of this thesis.
    [Show full text]
  • Android Cours 1 : Introduction `Aandroid / Android Studio
    Android Cours 1 : Introduction `aAndroid / Android Studio Damien MASSON [email protected] http://www.esiee.fr/~massond 21 f´evrier2017 R´ef´erences https://developer.android.com (Incontournable !) https://openclassrooms.com/courses/ creez-des-applications-pour-android/ Un tutoriel en fran¸caisassez complet et plut^ot`ajour... 2/52 Qu'est-ce qu'Android ? PME am´ericaine,Android Incorporated, cr´e´eeen 2003, rachet´eepar Google en 2005 OS lanc´een 2007 En 2015, Android est le syst`emed'exploitation mobile le plus utilis´edans le monde (>80%) 3/52 Qu'est-ce qu'Android ? Cinq couches distinctes : 1 le noyau Linux avec les pilotes ; 2 des biblioth`equeslogicielles telles que WebKit/Blink, OpenGL ES, SQLite ou FreeType ; 3 un environnement d'ex´ecutionet des biblioth`equespermettant d'ex´ecuterdes programmes pr´evuspour la plate-forme Java ; 4 un framework { kit de d´eveloppement d'applications ; 4/52 Android et la plateforme Java Jusqu'`asa version 4.4, Android comporte une machine virtuelle nomm´eeDalvik Le bytecode de Dalvik est diff´erentde celui de la machine virtuelle Java de Oracle (JVM) le processus de construction d'une application est diff´erent Code Java (.java) ! bytecode Java (.class/.jar) ! bytecode Dalvik (.dex) ! interpr´et´e L'ensemble de la biblioth`equestandard d'Android ressemble `a J2SE (Java Standard Edition) de la plateforme Java. La principale diff´erenceest que les biblioth`equesd'interface graphique AWT et Swing sont remplac´eespar des biblioth`equesd'Android. 5/52 Android Runtime (ART) A` partir de la version 5.0 (2014), l'environnement d'ex´ecution ART (Android RunTime) remplace la machine virtuelle Dalvik.
    [Show full text]