Yocto Project : Linux embarqué

On y discute de tout, ou presque...
Répondre
Avatar de l’utilisateur
dezix
Membre hyper actif
Membre hyper actif
Messages : 3548
Inscription : 04 juin 2016, 14:50
Status : Hors-ligne

Bonjour,

en parcourant les caractéristiques de SPEAR-MX8 une mini carte-mère Genre Raspberry
dans les OS supportés on trouve Linux => Yocto

J'ai donc fait un tour sur Yocto Project
où visblement Yocto n'est pas présenté comme une distribution Linux mais plutôt comme une boute à outils de dev pour créer des systèmes à embarquer sur ARM.

Dans cette présentation, référence est faite à Poky => A reference embedded distribution

Donc ça ressemble à une distribution Linux, mais pas vraiment ???

Avez-vous idée de quoi il retourne ?

Est-ce une base sur laquelle on doit recompiler les logiciels que l'on compte utiliser sous le système embarquer dans la mini-carte ?

Merci.
**Simple Utilisateur** -- Debian stable - XFCE
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5865
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Une distribution gnu-linux c'est 2 choses:
- un noyau (kernel) linux qui gére le matériel (pour simplifier). ILdoit étre adapté pour tout les matériels supportés, même si ta machine ne possède pas une partie de ce matériel. Le kernel gére ça via des modules chargés à la demande (le choix est fait à la compilation du kernel de savoir si tu mets le driver en dur ou en module)
- une "image" qui embarque tout le reste, par exemple le terminal, systemd, udev, la fameuse libc ... c'est le système d'exploitation gnu


Ce que propose un systeme comme yocto:
- paramétrer la compilation d'un kernel qui correspond pile poil au matériel considéré. Tout ce qui n'est pas utile est supprimé
- construire un systéme d'exploitation minimaliste, avec la plus faible empreinte mémoire possible (il existe par exemple des variantes de la libc adaptée pour ce type de besoin). Par exemple le multiarch n'est pas implémenté, les logiciels sont compilés spécifiquement pour l'architecture de la cible matériel.
Avatar de l’utilisateur
dezix
Membre hyper actif
Membre hyper actif
Messages : 3548
Inscription : 04 juin 2016, 14:50
Status : Hors-ligne

Merci Pirate,

et tu as idée si son utilisation est accessible à un utilisateur moyen ou si c'est réservé à un public d'experts ?
**Simple Utilisateur** -- Debian stable - XFCE
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5865
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

J'ai lu plusieurs articles sur sa mise en oeuvre. Il faut déja maitiser linux pour applications embarquées. C'est comme chaque fois que tu veux utiliser un outil pour automatiser des taches, il vaut mieux maitriser la mise en oeuvre manuelle de ces taches ...
Avatar de l’utilisateur
dezix
Membre hyper actif
Membre hyper actif
Messages : 3548
Inscription : 04 juin 2016, 14:50
Status : Hors-ligne

c'est peut-être aussi beaucoup plus facile si le matériel est bien documenté
pour savoir quels pilotes sont nécessaires
**Simple Utilisateur** -- Debian stable - XFCE
Avatar de l’utilisateur
dezix
Membre hyper actif
Membre hyper actif
Messages : 3548
Inscription : 04 juin 2016, 14:50
Status : Hors-ligne

Quand j'aurai un moment,
j'ouvrirai un compte sur le site du fabriquant de la carte que j'ai cité dans le 1er post
pour voir quel doc est disponible
et je reviendrai par ici pour un retour.

Bonne journée

@+
**Simple Utilisateur** -- Debian stable - XFCE
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5865
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

J'ai regardé les specs de la carte. Ce n'est pas ce qu'on appelle habituellement de l'embarqué! 6 coeurs, in interfaces graphique 4K ....
Tu peux largement faire tourner dessus une gnu/linux classique, telle qu'une debian!
On utilise yockto sur des machines monocore, quelques centaines de méga de RAM, et une sortie graphique basique voire inexistante.
Avatar de l’utilisateur
dezix
Membre hyper actif
Membre hyper actif
Messages : 3548
Inscription : 04 juin 2016, 14:50
Status : Hors-ligne

piratebab a écrit : 17 sept. 2018, 11:45 Ce n'est pas ce qu'on appelle habituellement de l'embarqué! 6 coeurs, in interfaces graphique 4K ....
Tu peux largement faire tourner dessus une gnu/linux classique, telle qu'une debian!
C'est ce qui me semble intéressant pour une mini-machine sous Debian.

Le problème / l'intérrogation
c'est que comme le système est une image "flashée" donc pas de MàJ possible,
l'installation de nouveaux paquets risque de poser des problèmes de dépendances dès que la version Officielle change 1/1 à la version flashée.

Pour pouvoir profiter assez longtemps de l'ensemble des paquets Debian,
il faudrait faire une copie des dépôts au moment de la compilation de l'image système.

Je me trompe ?
**Simple Utilisateur** -- Debian stable - XFCE
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5865
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Tu as un port SATA, tu peux l'utilisé pour mettre un disque dur.
La question est plutot de savoir comment utiliser les procs de techno différentes
(SPEAR-MX8
Main Features
NXP i.MX 8 processor

2 x 1.8GHz ARM Cortex™-A72 plus 4 x 1.2GHz ARM
Cortex™-A53

Real-time 2x ARM Cortex-M4F

Neon Media Processor Engine (MPE)), , et les 2 GPU avec un touch screen.
Avatar de l’utilisateur
dezix
Membre hyper actif
Membre hyper actif
Messages : 3548
Inscription : 04 juin 2016, 14:50
Status : Hors-ligne

piratebab a écrit : 17 sept. 2018, 14:16 Tu as un port SATA, tu peux l'utilisé pour mettre un disque dur.
et c'est prévu pour une carte flash eMMC de 64Go
donc ce n'est pas une question d'espace mais l'impossibilité de mettre à jour ce qui est embarqué sans devoir flasher une nouvelle image
piratebab a écrit : 17 sept. 2018, 14:16 La question est plutot de savoir comment utiliser les procs de techno différentes
(SPEAR-MX8
Main Features
NXP i.MX 8 processor

2 x 1.8GHz ARM Cortex™-A72 plus 4 x 1.2GHz ARM
Cortex™-A53

Real-time 2x ARM Cortex-M4F

Neon Media Processor Engine (MPE)), , et les 2 GPU avec un touch screen.
C'est là, la nécessité d'une bonne doc de la part du fabricant et que les pilotes linux existent pour ce matériel ?


En furetant à la recherche d'info sur Yocto/Morty

j'ai trouvé cette carte https://boundarydevices.com/product/sab ... -imx6-sbc/
pour laquelle le constructeur fournit une image de Debian 9.2

Cette carte parait moins puissante et elle est plus chère que la première.
**Simple Utilisateur** -- Debian stable - XFCE
Avatar de l’utilisateur
dezix
Membre hyper actif
Membre hyper actif
Messages : 3548
Inscription : 04 juin 2016, 14:50
Status : Hors-ligne

Je viens de trouver U-Boot qui si j'ai bien compris,
est un Chargeur d'Amorçage (Boot Loader ; comme GRUB)
mais qui s'embarque sur une plateforme ARM (entre autre)
et qui devrait pouvoir poursuivre le boot sur un autre media que l'EPROM,
comme une carte SD ou autre volume externe voire réseau.

Cela permettrait donc de modifier l'OS comme sur un PC,
U-Boot ayant un rôle analogue au BIOS sur PC ???
**Simple Utilisateur** -- Debian stable - XFCE
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5865
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

oui, on peux le voir comme ça pour la partie du BIOS qui charge le secteur d'amorçage.
Répondre