Early-bird deadline:

Use FRUCT discount code at booking.com

Find a new job

You are here

Debug tools for Maemo (Fremantle)

The goal of the project is porting and developing of the tools for debugging of kernel and user space application for Fremantle (maemo 5). All development will be performed using beagleboard (www.beagleboard.org) device.

Three main branches in the project are:

  1. Porting, testing and packaging of Systemtap (http://sourceware.org/systemtap/).
    This utility uses instrumentation for gathering information for a live running linux kernel. Initially it was developed for x86. So some effort should be spent to make it usable on maemo.
  2. Development of GUI for endurance testing.
    The method of endurance testing was used by our team for finding leakages in applications. More detailed description of this project could be found here (http://www.fruct.org/index.php?morus_itemid=39).
    During project it became obvious that current set of endurance tools could be used only by experienced user. That is why it was decided to develop graphical frontend for the tools from sp-endurance and sp-endurance-postproc packages to simplify testing procedure.
  3. Development of tools for finding resource leakages on maemo.
    Endurance testing could only show that resources are leaked, but does not give any idea, where in the sources buggy code lies. There is a set of tools, that could help. They work in the following way.
    Tool connects to executing process and dumps the stack of function calls, when tracked event occured. Such event could be, for example, "malloc". All tracked events and appropriate backtraces then dumped to the log. This log could be post-processed for finding resource leakages and gathering different statistic of resource usage (e.g. duration of lifetime of some resource, what function consumes more memory than others). These tools are: functracer, libleaks, mpatrol and latrace. Each tool has its own set of features and issues. Our goal is to extend and patch some of these tools for tracking of different kinds of resources like memory, gobjects, files etc. Also we are developing toolchain, where logs from different tools could be converted to unified format, post-processed and visualized.

The project team includes:

Evgeny Linsky
Dmitry Malichenko
Sergey Ivanov
Alexander Malakhov
Vitaly Petrov
Anton Ovseenko

The project is supervised by:
Leonid Moiseichuk
Eero Tamminen

Final presentation


Final deadline: 
Monday, November 9, 2009 (All day)