The sphinx simulator project
Nicolas CARRIER April, 6, 2016
The sphinx simulator project 1 / 32
The sphinx simulator project Nicolas CARRIER April, 6, 2016 The - - PowerPoint PPT Presentation
The sphinx simulator project Nicolas CARRIER April, 6, 2016 The sphinx simulator project 1 / 32 Presentation The problem Overview Features Limitations Architecture Firmwared The fjrmwares Gazebo Conclusion The sphinx simulator project
The sphinx simulator project 1 / 32
The sphinx simulator project 2 / 32
The sphinx simulator project 3 / 32
The sphinx simulator project 4 / 32
The sphinx simulator project 5 / 32
The sphinx simulator project 6 / 32
The sphinx simulator project 7 / 32
The sphinx simulator project 8 / 32
The sphinx simulator project 9 / 32
The sphinx simulator project 10 / 32
The sphinx simulator project 11 / 32
▶ Chroot on overlayfs ▶ Namespaces ▶ Apparmor
The sphinx simulator project 12 / 32
The sphinx simulator project 13 / 32
The sphinx simulator project 14 / 32
▶ the rootfs produced by the compilation (fjnal dir) ▶ an ext2 image, produced from the fjnal by Alchemy
The sphinx simulator project 15 / 32
The sphinx simulator project 16 / 32
▶ No impact on the host’s networking ▶ An interface can be stolen for the instance (WiFi AP)
▶ Renumbering of processes, starting from 1 in the namespace ▶ Our init process (fork of Android’s) runs as if on target
▶ No access from the host to the instance’s mount points ▶ No access from the instance to the host’s mount points ▶ All mounts are automatically unmounted when the namespace is destroyed
The sphinx simulator project 17 / 32
▶ Capabilities (sys_time, hahem...) ▶ Filesystem entities (/dev/mem, /proc/sysrq-trigger, hahem...)
The sphinx simulator project 18 / 32
The sphinx simulator project 19 / 32
The sphinx simulator project 20 / 32
The sphinx simulator project 21 / 32
▶ High impact on performances ▶ Drivers using IPCs with gazebo would be needed
▶ Soft runs on hardware with IPCs via IP ▶ No recompilation, same code with runtime adaptations, but lot of work and not
▶ Latency and throughput problems (e.g. video) gzserver needs to run on target
▶ It’s the holy grail: test the real fjrmware on a desktop ▶ Forces to develop an hardware device per sensor / actuator ▶ Not so hard for a gpio, but for a camera sensor ? ▶ High cost for fjrst version ▶ My bet (and hope) is: we will come to it The sphinx simulator project 22 / 32
The sphinx simulator project 23 / 32
The sphinx simulator project 24 / 32
▶ IPC with gazebo: named socket ▶ no IP overhead ▶ abstract sockets blocked by netns ▶ for now all of them use iio / libiio
The sphinx simulator project 25 / 32
The sphinx simulator project 26 / 32
The sphinx simulator project 27 / 32
The sphinx simulator project 28 / 32
The sphinx simulator project 29 / 32
The sphinx simulator project 30 / 32
The sphinx simulator project 31 / 32
The sphinx simulator project 32 / 32