As you probably know, maintaining up to date documentations on an active project is one of the hardest but unavoidable task. We are doing our best to catch up with the current release. However, you might still need to find and adapt information from slightly out of date documentation. The current Think implementation is called Nuptse and we are currently updating documentation from v3 and v2 to this version.
Think V4 (a.k.a. Nuptse) Programmer's Manual (html, pdf)(Oct 19, 2009):
As a referent manual for Think programmer's, all question you might have has an answer in this document. Even if general information can be found in this document, most of it is dedicated to the description of the different languages used in Nuptse. Those languages correspond to the Interface Description Language (IDL), the Architecture Description Language (ADL), and the component programming language (NuptC).
Think User's Manual (html, pdf):
Nuptse tutorial (pdf):
By following this tutorial, you will go through the basic concepts that you will inevitably need while developing your own Nuptse application. Thus the use of attribut controller, life cycle controller, binding controller and content controller, and also component identity, abstract component and composite component are illustrated with concrete examples.
Installation et utilisation de Think sur PC Windows (doc):
How to install and use Nuptse on a PC Windows. We would ask all non-French-speaking kindly accept our apologies.
Tutorial Think V3 (doc):
This document aims to give some inputs about a straight and simple use of the NUPTSE version of the THINK framework. The goals is to help the user for downloading the sources of the NUPTSE repository, for generating the NUPTSE tool chain and, finally to compile and execute the simple "helloword" example on an UNIX/LINUX Platform.
Think Cookbook V3 (pdf):
This document is an introduction to THINK. It explains informally what do mean some keywords that are commonly used such as FRACTAL, ADL, IDL and so on. It presents the structure of the THINK development tool-chain and explains how it is used. In particular, this document illustrates two basic examples to help new programmers to start programming with THINK components.
Compiler specific documentation
Documentation on some parts of the nuptse compiler (pdf)
Available platforms user guides
Using Nuptse on AVR (pdf):
This document aims at presenting the creation of simple kernels for the AVR Atmega2561 using the Nuptse version of THINK.
Dynamic reconfiguration with Nuptse on the Cognichip (pdf):
The aim of this document is to present the experiments that were made to dynamicaly reconfigure operating systems written using Nuptse, on the AVR microcontrollers.
Implementation of a multithreaded environement for AVR using Nuptse (pdf):
This document describes the architecture and internals of an implementation of a multithreaded environement for AVR. This implementation only uses standard Kortex components, without customized intervention of the Nutpse compiler (No architctural aspects).
Getting started with the AVR toolchain (pdf):
This document is a memo on how to use the gnu AVR toolchain.
- Olivier Lobry, Juan Navas, Jean-Philippe Babau. Optimizing Component-Based Embedded Software, 2nd IEEE International Workshop on Component-Based Design of Resource-Constrained Systems, annual IEEE International Computer Software an Applications Conference, COMPSAC-09. Seattle, USA, 2009 (bibtex).
- Frederic Loiret, Juan Navas, Jean-Philippe Babau, Olivier Lobry. Component-Based Real-Time Operating System for Embedded Applications, 12th SIGSOFT Symposium on CBSE - Springer. East Stroudsburg University, Pennsylvania, USA, June 2009 (bibtex)
- Think Team, Think: View-Based Support of Non-Functional Properties in Embedded Systems, In Proceedings of the 6th International Conference on Embedded Software and Systems (ICESS-09), May 2009, HangZhou, Zhejiang, China (to be published) (pdf)(bibtex).
- Juraj Polakovic, Architecture logicielle et outils pour systèmes d'exploitation reconfigurables, PhD Thesis june 2008 (pdf pre-release).
- Olivier Lobry and Juraj Polakovic, Controlling the Performance Overhead of Component-Based Systems. In the 11th European Joint Conferences on Theory and Practice of Software (ETAPS), April 6, 2008, Budapest, Hungary (pdf).
- Ali Erdem Ozcan and Sebastien Jean and Jean-Bernard Stefani, Bringing Ease and Adaptability to MPSoC Software Design: a Component-Based Approach. In Proceedings of Construction and Analysis of Safe, Secure and Interoperable Smart devices, Nice, France, 2005.
- Oussama Layaida, Ali Erdem Özcan, and Jean-Bernard Stefani. A Component-based Approach for MPSoC SW Design: Experience with OS Customization for H.264 Decoding. In 3rd Workshop on Embedded Systems for Real-Time Multimedia under CODES+ISSS, September 2005, New York, USA.
- Juraj Polakovic, Ali Erdem Özcan, and Jean-Bernard Stefani. Reconfiguration dynamique d'un systeme a composants. In Rencontres Francophones en Parallelisme, Architecture, Systeme et Composant - Journees Composants, 2005.
- Ali Erdem Ozcan and Sebastien Jean. Technologies de systemes d'exploitation pour environnements repartis appliquees aux systemes multiprocesseurs sur puce. In MAJECSTIC'04, Octobre 2004, Calais - France.
- Jean-Philippe Fassino, Jean-Bernard Stefani, Julia Lawall, Gilles Muller, Think: A Software Framework for Component-based Operating System Kernels, In Proceedings of the 2002 USENIX Annual Technical Conference, Monterey, California, USA June 10-15, 2002