MPS vs des Pilotes de Périphériques
Alors que la compréhension de chacun par lui-même (ou peut-être pas), on dirait que je suis loin de comprendre les différences concrètes entre les deux.
Par ma compréhension, un BSP est un package de pilotes et les paramètres de configuration qui permet une image de noyau pour démarrer un conseil d'administration (et est en fait partie).
L'individu pilote de périphérique, fonctionne sur un élément spécifique (HW), interfaçage d'un côté de la base du noyau et de l'autre côté avec le périphérique lui-même.
En regardant le noyau Linux, il est clair pour moi où le BSP rôle commence et le pilote de périphérique rôle se termine. Plus précisément, je suis habitué à voir un BSP par conseil et par l'image, cependant, le générique du Noyau Linux peut être chargé sur toute l'architecture de la famille avec la même image (il est clair que pour les différentes familles il y a des images différentes: x86, amd64, arm, etc...), où le conseil et les périphériques les pilotes sont chargés par le besoin de l'initrd.
Est-il un BSP pour le Noyau Linux, les distributions?
Ou est-BSP pertinents seulement pour des cas particuliers, des conseils?
Est-ce un comportement similaire sur d'autres noyaux? VxWorks?
Et la dernière, est-il courant de fusionner différents BSP/s dans le but de générer une seule image qui correspondent à différents conseils d'administration?
- Est-il vrai de dire qu'un BSP contient la liste des pilotes de périphériques nécessaires, et permet de s'assurer qu'ils sont ajoutés à l'image? Mais ne contient pas les pilotes de périphériques eux-mêmes...
Vous devez vous connecter pour publier un commentaire.
Je vois la relation entre Bsp et pilotes de périphériques comme "a-un". Board support packages incluent des pilotes de périphériques.
Les différences entre Bsp & noyaux n'est pas facile à distinguer. Un noyau traduit les instructions pour le matériel. Les grains sont souvent écrits à des familles particulières de matériel, donc ils ne sont pas comme les portables ou de génériques qu'elles le paraissent. Il s'élève à différentes permutations du code pour chaque architecture de la famille.
Le BSP agit en tant que sorte de l'inverse: il fournit les outils & instructions de travail avec le conseil d'administration de l'ensemble spécifique de matériel. En particulier, les situations contrôlées, le noyau pourrait faire ce travail. Mais le BSP permet à tout compatible kernel/OS/application pile à utiliser que le conseil d'administration, par suite de son instructions de configuration.
Si vous avez juste besoin d'accéder à des cycles de CPU & de mémoire, peut-être un peu de protocoles (USB, ethernet, un couple de types de vidéo), un noyau à l'aide de l'échelle de l'architecture soutien est fantastique, et il fut un temps où l'étendue de cette abstraction matérielle a été penultimately évalués. Mais maintenant, considérons que le conseil pourrait avoir un suite de capteurs (accéléromètre, magnétomètre, gyroscope, lumière, proximité, pression atmosphérique, etc), de la téléphonie, il peut y avoir plusieurs Processeurs, plusieurs Gpu, et ainsi de suite. Un noyau peut être écrit pour fournir VGA/DVI/HDMI/DisplayPort, et plusieurs permutations de CPU/GPU combinaisons, si/quand quelqu'un utilise un de ces paquets matériels, mais c'est pas pratique pour écrire de soutien pour tous les contextes théoriques, par rapport à l'utilisation d'un BSP qui est construit pour un conseil. Et même alors, ce serait pour un noyau; le conseil d'administration est capable de supporter Linux, Windows, Android, Symbian, que ce soit.
C'est pourquoi les efforts comme Yocto existe pas, à dissocier davantage noyau & du matériel. Bsp faire matériels extensible au-delà d'un noyau/os/application de la pile ou de deux, tandis que les grains de faire un système particulier/app pile portable sur plusieurs HW architectures.
Basé sur mon expérience, le BSP est d'une portée beaucoup plus vaste. il comprend chargeur de démarrage, rootfs, le noyau et les drivers etc, ce qui signifie avoir un BSP rend votre conseil d'administration capable de démarrer lui-même. Les pilotes de fabriquer des dispositifs de travail et ne sont qu'une partie de BSP.
Pilotes n'est pas égal à BSP.
Aujourd'hui, les choses sont modulaires afin d'augmenter la réutilisation, le développement de logiciels pour systèmes embarqués normalement se décompose en trois couches.
Board Support Package (pilote de périphérique) est la couche de logiciel qui change avec chaque conseil de maintien de deux autres couches logicielles inchangé.
Board support package inclut tout ce qui est nécessaire pour l'utilisation de la carte par une application. Ces inclure des pilotes de périphériques pour les périphériques sur le conseil et le logiciel utilitaire pour les programmeurs d'applications. Un fenêtrage de l'environnement est également disponible sur multi-média à repasser. Les ingénieurs système peut en outre ajouter des extensions à la carte. Certaines applications nécessitent une re-mise en œuvre d'une partie de la bsp pour des améliorations. Ici, le bsp joue un rôle d'une implémentation de référence ou un point de départ pour de telles exigences.
La confusion réside dans le modèle d'affaires. La référence ou le conseil de développement n'est pas une fin/produit de consommation comme un appareil mobile. Il joue un rôle important pour concevoir et développer un produit comme l'iPhone ou Samsung Galaxy.
Un générique bsp a un manque d'optimisation dans la plupart des cas, par conséquent, vous ne pouvez attendre un générique bsp pour les débutants modèle ou lorsque l'optimisation est à gauche de vous être fait. En cas de bon conseils le bsp est assez générique, parce que le producteur a mis moins d'investissement en elle.
Ne pas insister beaucoup sur les conditions de noyau et l'espace utilisateur comme il y a des micro-grains est aussi disponible. Ici, les pilotes font partie de l'espace utilisateur! De nouveau penser à une faible alimentation de la carte qui n'a qu'un seul morceau de code sans noyau. De sorte qu'il se résume à un logiciel qui prend en charge le conseil, c'est le travail.