2016-11-09 2 views
4

Wie ich verstehe, enthält ein BSP (Board Support Package) Bootloader, Kernel und Gerätetreiber, die dem Betriebssystem helfen, auf HW zu arbeiten. Aber ich bin verwirrt, weil OS auch einen Kernel enthält. Worin besteht der Unterschied zwischen dem Kernel in BS und dem Kernel in BSP?Embedded Board Support Package

Antwort

4

BSP-Definition ist breit. Es ist eine unterstützende Software für ein bestimmtes Board. BSP für einen winzigen Mikrocontroller enthält wahrscheinlich nur HW-Treiber für seine Peripheriegeräte. Auf der anderen Seite kann es für eine eingebettete CPU HW-Treiber, Bootloader und OS-Kernel enthalten und was nicht.

Der Kernel in einem BSP (Board Support Package) ist also nur eine bestimmte Version eines Betriebssystemkernels, der auf Ihr Board portiert wurde.

5

Worin ein BSP besteht, hängt vom Kontext ab; Generisch ist es Code oder Bibliotheken, um ein bestimmtes Brettdesign zu unterstützen. Dies kann als generischer Code vom Platinenlieferanten zur Verwendung in einem Bare-Metal-System oder zur Integration in ein OS bereitgestellt werden, oder er kann für ein bestimmtes Betriebssystem spezifisch sein, oder er kann sogar ein Betriebssystem enthalten. In jedem Fall bietet es Board-spezifische Unterstützung für höhere Software.

Ein Kernel ist Board Agnostic (obwohl oft Prozessor-Architektur-spezifische), und macht keinen direkten Zugriff auf Hardware nicht intrinsisch für die Prozessor-Architektur, auf der es läuft. In der Regel erfordert ein Betriebssystem oder eine Anwendung eine Hardware-Abstraktionsschicht (HAL); die HAL kann durchaus mit der BSP erstellt werden, oder die BSP kann tatsächlich die HAL sein. Ein Anbieter kann sogar eine HAL und ein OS verpacken und sich darauf als BSP beziehen.

Der Begriff bedeutet, was es bedeutet, wer auch immer es benutzt - Kontext ist alles. In VxWorks verwendet WindRiver beispielsweise den Begriff BSP, um auf die Ebene zu verweisen, die die Ausführung einer VxWorks-basierten Anwendung auf einem bestimmten Hardwaredesign unterstützt. Ein Board-Hersteller kann andererseits eine vollständige Linux-Distribution bereitstellen, die auf die Platine portiert ist und diese als BSP bezeichnet.

Inwieweit ein bestimmter Anbieter oder Entwickler eine Unterstützung für ein Board wählt, ist ein Board-Support-Paket, unabhängig davon, wie viel oder wie wenig es enthalten ist.

+0

die gute Antwort. Ich konnte mir schon vorstellen was BSP ist. Vielen Dank! – tuanpm

3

Ich sage wahrscheinlich die gleichen Dinge bereits gesagt.

Sie haben ein Chip- und/oder Board-Produkt, das Sie an andere (Software-) Entwickler verkaufen möchten. Ein Referenzdesign (Board) mit dem/den fraglichen Chip (s) wird verwendet. Der BSP ist eine vage Bezeichnung für die Software, die Ihnen als Softwareentwickler zur Verfügung gestellt wird, um Ihr Leben mit diesem Produkt (Chip und/oder Board) zu erleichtern und Ihre Software hinzuzufügen oder zu entwickeln. Wenn es also eine Linux- oder Rtos- oder andere Betriebssystem-fähige Plattform ist und der Hersteller (der den BSP bereitstellt) glaubt, dass die Benutzer ein Betriebssystem und ein spezifisches Betriebssystem wollen, dann tun sie dies, anstatt dass sie das Betriebssystem auf dieses Ziel portieren müssen es für dich. Wenn etwas wie Linux Open Source ist, dann wird Ihnen entweder gesagt, welche Linux-Quellen heruntergeladen werden sollen, und dann werden die vom BSP gemachten Patches hinzugefügt und/oder der BSP enthält die vollständigen Quellen für das ganze bereits gepatchte Ding. Treiber, Anwendungen, die vom Hersteller als notwendig erachtet werden, usw. Mehrere Betriebssysteme können unterstützt werden, wenn der Anbieter das Gefühl hat, dass dies erforderlich ist, um Kunden dazu zu bringen, dieses Board/Chip-Produkt zu kaufen.

Das ganze Paket von Software, die Sie von ihnen erhalten, um dieses Chip/Board zu Ihrem eigenen Produkt zu machen, ist das BSP.

0

vxWorks-Kernel, den Sie auf einem Board ausführen können, enthält vxWorks Core-Kernel und "andere Komponenten", die sich in einer Umgebung ändern können. Core-Kernel enthält wichtige Programme wie Scheduler, Speichermanager, Basisdateisysteme, Sicherheitsfunktionen usw. Diese "anderen Komponenten", die Bestandteil von BSP sind, können optional sein oder von System zu System variieren und unterstützen die Kernfunktionen des Kernels.