Careers > Revamp our cross platform simulation driver
Last modified 10/7/2024 10:32:31 AM

Revamp our cross platform simulation driver

Internship
AdaCore
Toulouse (France)

AdaCore: Helping Developers Build Software that Matters

Everything we do at AdaCore is centered around helping developers build safe, secure and reliable software.

For 30 years, we've partnered with global leaders in aerospace & defense, air traffic management, space, railway and financial services. We've developed tools and services simplifying high-integrity software development through a subscription-based model. As demand for secure applications grows in industries like automotive, medical, energy, and IoT, we're adapting our proven technologies to assist a new generation of developers.

Our 150 global experts based in the US, France, Germany, the UK, and Estonia, collectively develop cutting-edge technologies to address the challenges of high-grade software development.

Joining AdaCore is about joining a culture of innovation, openness, collaboration and dependability, which defines how we work together, with our customers and partners.

 

Context

In the context of our cross platform environment, AdaCore develops and uses simulation tools based on QEMU. Those simulation tools emulate CPUs/boards to run various operating systems and execute programs to ensure the quality of our technology.

Currently, those simulations rely on the QEMU vvfat emulated filesystem to exchange files between host and target. This methodology is not adapted to all the operating systems we run and limits the control we have over the simulations.

 

Missions & Goals

The main goal of the internship is to replace the use of the QEMU vvfat emulation with a new driving scheme based on ssh/scp driving.

The way we drive the simulations is centralized into a homemade driver toolbox named “pycross”, written in python.

In cooperation with our experts, the purpose of this internship is to:

  • Create a generic driver in pycross that will replace the current ones to use ssh/scp to drive the simulations.

  • Instantiate this driver for each platform (architecture/operating system) we simulate, including vxworks, qnx, rtems, linux…

  • Adapt the simulated images to allow the operating system to use network and ssh/scp if needed.

  • Industrialize and automate the solution to transition it to our production cloud facilities.

  • Produce the documentation attached to this design and to its usage.

 

Qualifications/Skills Required or Nice to Have

The work will require interacting closely with engineers from AdaCore (mostly in English).

The applicant should have a fair knowledge about the following topics. Having a solid knowledge about these topics is a plus, but it is not required for the applicant to know them all before applying.

  • QEMU usage

  • Python programming

  • SSH usage/configuration

  • embedded operating systems

  • Development environment (gitlab, shell…)

 

Timeframe & Location 

During 2025 - 6 months - Toulouse office

 

Beyond the job

We're a global organization driven by diverse backgrounds, fostering innovation through an open exchange of ideas. We welcome applicants of all backgrounds, celebrating diversity in ethnicity, nationality, gender, age, religion, abilities, sexual orientation, veteran or marital status. 

Our commitment is to help our teammates, wherever they are based, feel comfortable and satisfied, by encouraging flexibility to ensure them a healthy work-life balance. Additionally, we prioritize individual development by offering continuous training from day one with a personalized onboarding plan.

 

Powered by Hello Talent