Language-based Approach for Software Specialization
Résumé
Designers of software for embedded systems increasingly use general-purpose off-the-shelf libraries to provide sophisticated functionalities while meeting time-to-market and reliability requirements. The use of such libraries, however, can increase the software's memory footprint. To overcome this issue, various code-size reduction techniques have been proposed. However, they do not address the case of libraries shared between several applications. In addition, most available techniques work at the level of binary code, making debugging difficult. In this paper we present a simple and practical approach for source-level specialization of shared libraries. We have implemented a tool, SpecTool, to automatically apply our specialization techniques. SpecTool relies on Coccinelle, a source code transformation engine for the C programming language. Preliminary results on libraries related to support for network protocols show that SpecTool can reduce the memory footprint of shared libraries by 25-34%.
Domaines
Génie logiciel [cs.SE]
Origine : Fichiers produits par l'(les) auteur(s)
Loading...