GROPG: A Graphical On-Phone Debugger

Slides:



Advertisements
Similar presentations
Android Application Development A Tutorial Driven Course.
Advertisements

GDB Improvements for Telecom System. GDBs Strengths, Today Primary debugger for Linux Used by Eclipse for C, C++ debugging –Eclipse communicates with.
Creating a Program In today’s lesson we will look at: what programming is different types of programs how we create a program installing an IDE to get.
ANDROID OPERATING SYSTEM Guided By,Presented By, Ajay B.N Somashekar B.T Asst Professor MTech 2 nd Sem (CE)Dept of CS & E.
CS 225 Lab #2 - Pointers, Copy Constructors, Destructors, and DDD.
Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department.
ANDROID PROGRAMMING MODULE 1 – GETTING STARTED
Introduction Purpose Objectives Content Learning Time
Programming mobile devices Part II Programming Symbian devices with Symbian C++
Mobile Application Development with ANDROID Tejas Lagvankar UMBC 29 April 2009.
About me Yichuan Wang Android Basics Credit goes to Google and UMBC.
Wireless Mobility with Android 1 Presented by: Ung Yean MS. Computer Science American University, Washington DC, USA.
01. Introduction to Android Prof. Oum Saokosal Master of Engineering in Information Systems, South Korea
DEBUGGING CHAPTER Topics  Getting Started with Debugging  Types of Bugs –Compile-Time Bugs –Bugs Attaching Scripts –Runtime Errors  Stepping.
ANDROID Presented By Mastan Vali.SK. © artesis 2008 | 2 1. Introduction 2. Platform 3. Software development 4. Advantages Main topics.
Bharathi.S. Intel® Pentium® 4, 3.6 GHz or equivalent AMD processor 500 MB free hard disk space 2 GB RAM 1 available USB 2.0 port and USB cable Microsoft®
Android architecture & setting up. Android operating system comprises of different software components arranges in stack. Different components of android.
tom perkins1 XML Web Services -.NET FRAMEWORK – Part 1 CHAPTER 1.1 – 1.3.
Systems Software Operating Systems. What is software? Software is the term that we use for all the programs and data that we use with a computer system.
Three main types of computer operating systems By Chloe Monks.
Copyright © 2004 – 2013 Curt Hill Java Debugging In Eclipse.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Slide 1 What we'll cover here l Using the debugger: Starting the debugger Setting.
Mobile Application Development with ANDROID Umang Patel(6537) LDCE.
ChibiOS/RT Demo A free embedded RTOS
INFORMATION SYSTEM – SOFTWARE TOPIC: GRAPHICAL USER INTERFACE.
LECTURE 3 Translation. PROCESS MEMORY There are four general areas of memory in a process. The text area contains the instructions for the application.
Debugging using By: Samuel Ashby. What is debugging?  A bug is an error in either a program or the hardware itself.  Debugging is first locating and.
Operating Systems Salihu Ibrahim Dasuki (PhD) CSC102 INTRODUCTION TO COMPUTER SCIENCE.
Debuggers. Errors in Computer Code Errors in computer programs are commonly known as bugs. Three types of errors in computer programs –Syntax errors –Runtime.
Using the GNU Debugger (GDB)‏ Techzemplary Pvt.Ltd February 24 th 2008 Pranav Peshwe.
COM594: Mobile Technology Practical – Week 1 Android and Android Studio.
Introduction to Operating Systems Concepts
Lecture 3 Translation.
Mobile Device Development
Android Mobile Application Development
Introducing the Windows Mobile development
Mobile Device Development
Visit for more Learning Resources
Wireless Mobility with Android
System Software EIT, © Author Gay Robertson, 2016.
Chapter 2: Operating-System Structures
Chapter 5: Using System Software
Android.
Introduction Enosis Learning.
CS 153: Concepts of Compiler Design November 30 Class Meeting
CMPE419 Mobile Application Development
9/15/2018 An Experiment in Developing Small Mobile Phone Applications: Comparing On-Phone to Off-Phone Development Tuan A. Nguyen, Sarker T.A. Rumee,
Module 1.1 Introduction to computers
HP C/C++ Remote developer plug-in for Eclipse
Virtual Machine Emulator Tutorial
Affordable iPhone Mobile Apps Development Services Company
+ + Testing Web-Based Applications With the
Introduction Enosis Learning.
Tuan Anh Nguyen, Christoph Csallner
CIS 470 Mobile App Development
Application Development A Tutorial Driven Course
Super Charge Your Debugging in Visual Studio
DEBUGGING JAVA PROGRAMS USING ECLIPSE DEBUGGER
CSc 352 Debugging Tools Saumya Debray Dept. of Computer Science
Testing, debugging, and using support libraries
DOS and window operating system
CIS 470 Mobile App Development
Android Introduction Platform Mihail L. Sichitiu.
Software - Operating Systems
Operating System Concepts
Operating System Concepts
CMPE419 Mobile Application Development
Creating and Editing a Presentation
CIS 694/EEC 693 Android Sensor Programming
Presentation transcript:

GROPG: A Graphical On-Phone Debugger Introducing GROPG, the world’s first graphical on-phone app debugger Test mobile phone app with a powerful graphical debugger Tuan Anh Nguyen, tanguyen@mavs.uta.edu Christoph Csallner csallner@uta.edu Nikolai Tillmann nikolait@microsoft.com Microsoft Research Redmond, WA 98052 Computer Science and Engineering Department University of Texas at Arlington (3) Text-based on-phone debugger Less powerful than graphical debugger I just finished coding my Android app  Current options: Debug pane handle and transparency slider Control buttons In-scope variables and reachable heap values (2) Attach desktop debugger to a virtual device Cannot emulate all phone features (e.g., GPS) Write to memory Source code with breakpoint GROPG Features (1) Attach desktop debugger to a phone Need two devices; Restricted movement Load source code files Set breakpoints View and edit active breakpoints Inspect & change in-scope memory values including heap Step into, over, and out of instructions Inspect threads and runtime stacks View current source code location J Threads and invocation stacks Observations User interface of debuggee It is hard to port an existing desktop debugger to mobile phones Limited screen size on mobile devices Increasing performance of mobile phones GROPG Architecture Preliminary results # DroidDebugger T [s] GROPG 1 Open source file in external tool 21 Open source file 18 2 Review code in external tool 19 Review code 3 Remember class, line for breakpoint 5 n/a 4 Switch back to debugger Recall command syntax 6 Type: stop at com.google.android.apps. Mytracks.fragments.MapFragment:580 63 Tap line 7 Tap Exec command Tap button Total 112 39 App LOC DroidDebugger GROPG [MB] Dbg [MB] Time [min:s] F2C 27 3 10 2:13 24 0:45 MyTracks 21,563 19 11 3:35 26 0:52 Zing 5,756 7 12 2:53 25 1:01 GROPG has a higher memory footprint [MB] but enables faster debugging [min:s]. Desktop-based Android debugger attached to a phone GROPG needs fewer steps for setting a breakpoint.