Recherche - ResearchEnseignement - Lecture Notes
Master Pro. TIIRPersonnel |
Camille NG
Project partners :
Welcome to the official page of the Camille NG project. This page is under active (re)construction, so all the necessary information may not be available yet. Would you have any question about Camille, please don't hesitate to contact Gilles.Grimaud@lifl.fr. About CamilleOver the last twenty years, the software in smart cards has radically changed. This has happened for several reasons, smartcard software was initally rigid and monolithic and has now become more flexible with a clear separation between the "operationg system level" and "application level" parts. What is more, application-level resources are now much more accessible (nearly to end user level). The CAMILLE operating system aims to support the various hardware resources used in smartcards, without specializing abstractions. The architecture principle is very similar to the MIT Exo-Kernel principles and concepts. CAMILLE provides four basic characteristics for applications :
Our next step focuses on two differents problematics : Real Time (and ressources control) in SmartCard and safe sharing of OS components. These are the goals of the Camille NG Open Operating System. Real Time in Camille NG : The main goal is to propose and prove the feasibility of having a real time open operating system. We want to allow user to change and adapt the way the kernel react and also add new features to the kernel by downloading code without breaking RT constraints in the kernel. We want to define the minimal exo kernel which will allow us to buil and define RT scheduling policy on top of it. The main problem is linked to the fact that code using different kernel extensions will have to coexist and will have RT requirements. Challenge is to find a way to schedule all of these libraries without having a built in scheduler in kernel... Ressource Control in Camille NG : Camille NG ActivitiesCamille NG efforts focuses on RealTime features. You can find all the publication related on the Camille publications page. Architecture GuidelineThe CAMILLE Architecture is dedicated to tiny devices (mainely Smart Cards). We usually call our target devices "POPS" : Pervasive Object Private and Secure. According to the fact that's this kind of computing support are powerless, we propose a distributed architecture. Our arcihtecture slit the basic-software in two parts, the first one is embedded and trusted, the second one is externaly deployed and untrusted. Dowloaded code (into the embedded system) is expressed using a dedicated intermediate language called FACADE, but source code can be written using serveral widespread languages. Translators are available in the software infrastructure that is deployed outside the card. Today we propose a "class2facade" converter and we are finalizing a gcc compiler suite for FACADE. Portability and security are inherited from the use of such intermediate code. We claim an "exo-virtual" OS architecture : Virtualisation mecanisms are provided by an "external software". Security is ensured by a code-safety checking (wich uses a type-inference alorithm) during on-board loading (the embedded OS ensure the internal security). If an unit of code passes the loading step, its safety can be considered proven. To obtain extensibility, CAMILLE provides the simplest possible representation of the hardware (i.e. no logicial abstraction). Memory pages, numerical values, microprocessor, and native code can be easily manipulated by the applications while ensuring strong security. Applications can thus build or import/include specific abstractions wich fit their requirements. The main problem encountered when we allow operating system components to be redefined is performance. So the CAMILLE operating system uses Just-In-Time techniques to compile intemediate code into native one. Combined with exo-kernel approach, this guarantees adequate performance. Related worksCamille NG is an Operating System related to SmartCard. Furthermore, our activities are related to conventionnals ones. shows an overview of related works from the operating systems community. Here after, we propose some links about related works of the operating system community :
|