Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Dominique Chanet is active.

Publication


Featured researches published by Dominique Chanet.


international symposium on signal processing and information technology | 2005

DIABLO: a reliable, retargetable and extensible link-time rewriting framework

L. Van Put; Dominique Chanet; B. De Bus; B. De Sutter; K. De Bosschere

Modern software engineering techniques introduce an overhead to programs in terms of performance and code size. A traditional development environment, where only the compiler optimizes the code, cannot completely eliminate this overhead. To effectively remove the overhead, tools are needed that have a whole-program overview. Link-time binary rewriting is an effective technique for whole-program optimization and instrumentation. In this paper, we describe a novel framework to reliably perform link-time program transformations. This framework is designed to be retargetable, supporting multiple architectures and development toolchains. Furthermore it is extensible, which we illustrate by describing three different applications that are built on top of the framework.


languages, compilers, and tools for embedded systems | 2004

Link-time optimization of ARM binaries

Bruno De Bus; Bjorn De Sutter; Ludo Van Put; Dominique Chanet; Koen De Bosschere

The overhead in terms of code size, power consumption and execution time caused by the use of precompiled libraries and separate compilation is often unacceptable in the embedded world, where real-time constraints, battery life-time and production costs are of critical importance. In this paper we present our link-time optimizer for the ARM architecture. We discuss how we can deal with the peculiarities of the ARM architecture related to its visible program counter and how the introduced overhead can be eliminated to a large extent. Our link-time optimizer is evaluated in two tool chains. In the Arm Developer Suite tool chain, average code size reductions with 14.6% are achieved, while execution time is reduced with 8.3% on average, and energy consumption with 7.3%. On binaries from the GCC tool chain the average code size reduction is 16.6%, execution time is reduced with 12.3% and the energy consumption with 11.5% on average. Finally, we show how the incorporation of link-time optimization in tool chains may influence library interface design.


Communications of The ACM | 2003

Post-pass compaction techniques

Bruno De Bus; Daniel Kästner; Dominique Chanet; Ludo Van Put; Bjorn De Sutter

Seeking to resolve many of the problems related to code size in traditional program development environments.


languages, compilers, and tools for embedded systems | 2005

System-wide compaction and specialization of the linux kernel

Dominique Chanet; Bjorn De Sutter; Bruno De Bus; Ludo Van Put; Koen De Bosschere

The limited built-in configurability of Linux can lead to expensive code size overhead when it is used in the embedded market. To overcome this problem, we propose the application of link-time compaction and specialization techniques that exploit the a priori known, fixed run-time environment of many embedded systems. In experimental setups based on the ARM XScale and i386 platforms, the proposed techniques are able to reduce the kernel memory footprint with over 16%. We also show how relatively simple additions to existing binary rewriters can implement the proposed techniques for a complex, very unconventional program such as the Linux kernel. Finally, we pinpoint an important code size growth problem when compaction and compression techniques are combined on the ARM platform.


ACM Transactions in Embedded Computing Systems | 2007

Link-time compaction and optimization of ARM executables

Bjorn De Sutter; Ludo Van Put; Dominique Chanet; Bruno De Bus; Koen De Bosschere

The overhead in terms of code size, power consumption, and execution time caused by the use of precompiled libraries and separate compilation is often unacceptable in the embedded world, where real-time constraints, battery life-time, and production costs are of critical importance. In this paper, we present our link-time optimizer for the ARM architecture. We discuss how we can deal with the peculiarities of the ARM architecture related to its visible program counter and how the introduced overhead can to a large extent be eliminated. Our link-time optimizer is evaluated with four tool chains, two proprietary ones from ARM and two open ones based on GNU GCC. When used with proprietary tool chains from ARM Ltd., our link-time optimizer achieved average code size reductions of 16.0 and 18.5%, while the programs have become 12.8 and 12.3% faster, and 10.7 to 10.1% more energy efficient. Finally, we show how the incorporation of link-time optimization in tool chains may influence library interface design.


workshop on program analysis for software tools and engineering | 2004

The design and implementation of FIT: a flexible instrumentation toolkit

Bruno De Bus; Dominique Chanet; Bjorn De Sutter; Ludo Van Put; Koen De Bosschere

This paper presents FIT, a Flexible open-source binary code Instrumentation Toolkit. Unlike existing tools, FIT is truly portable, with existing backends for the Alpha, x86 and ARM architectures and the Tru64Unix, Linux and ARM Firmware execution environments. This paper focuses on some of the problems that needed to be addressed for providing this degree of portability. It also discusses the trade-off between instrumentation precision and low overhead.


international conference on information security and cryptology | 2004

Steganography for executables and code transformation signatures

Bertrand Anckaert; Bjorn De Sutter; Dominique Chanet; Koen De Bosschere

Steganography embeds a secret message in an innocuous cover-object. This paper identifies three cover-specific redundancies of executable programs and presents steganographic techniques to exploit these redundancies. A general framework to evaluate the stealth of the proposed techniques is introduced and applied on an implementation for the IA-32 architecture. This evaluation proves that, whereas existing tools such as Hydan [1] are insecure, significant encoding rates can in fact be achieved at a high security level.


ACM Transactions in Embedded Computing Systems | 2007

Automated reduction of the memory footprint of the Linux kernel

Dominique Chanet; Bjorn De Sutter; Bruno De Bus; Ludo Van Put; Koen De Bosschere

The limited built-in configurability of Linux can lead to expensive code size overhead when it is used in the embedded market. To overcome this problem, we propose the application of link-time compaction and specialization techniques that exploit the a priori known, fixed runtime environment of many embedded systems. In experimental setups based on the ARM XScale and i386 platforms, the proposed techniques are able to reduce the kernel memory footprint with over 16%. We also show how relatively simple additions to existing binary rewriters can implement the proposed techniques for a complex, very unconventional program, such as the Linux kernel. We note that even after specialization, a lot of seemingly unnecessary code remains in the kernel and propose to reduce the footprint of this code by applying code-compression techniques. This technique, combined with the previous ones, reduces the memory footprint with over 23% for the i386 platform and 28% for the ARM platform. Finally, we pinpoint an important code size growth problem when compaction and compression techniques are combined on the ARM platform.


international conference on information security and cryptology | 2009

Instruction Set Limitation in Support of Software Diversity

Bjorn De Sutter; Bertrand Anckaert; Jens Geiregat; Dominique Chanet; Koen De Bosschere

This paper proposes a novel technique, called instruction set limitation, to strengthen the resilience, of software. diversification against collusion attacks. Such attacks require a tool to match corresponding program fragments in different, diversified program versions. The proposed technique limits the types of instructions occurring in a program to the, most frequently occurring types; by replacing the infrequently used types as much as possible by more frequently used ones. As such, this technique, when combined with diversification techniques. reduces the number of easily matched code fragments. The proposed technique is evaluated against a powerful diversification tool for Intels x86 and an optimized matching process on a number of SPEC 2006 benchmarks.


workshop on program analysis for software tools and engineering | 2005

LANCET: a nifty code editing tool

Ludo Van Put; Bjorn De Sutter; Matias Madou; Bruno De Bus; Dominique Chanet; Kristof Smits; Koen De Bosschere

This paper presents LANCET, a multi-platform software visualization tool that enables the inspection of programs at the binary code level. Implemented on top of the link-time rewriting framework DIABLO, LANCET provides several views on the interprocedural control flow graph of a program. These views can be used to navigate through the program, to edit the program in a efficient manner, and to interact with the existing whole-program analyses and optimizations that are implemented in DIABLO or existing applications of DIABLO. As such, LANCET is an ideal tool to examine compiler-generated code, to assist the development of new compiler optimizations, or to optimize assembly code manually.

Collaboration


Dive into the Dominique Chanet's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge