Ich beginne mit der Entwicklung einer Anwendung auf einem Zynq-Board. Meine Aufgabe besteht hauptsächlich darin, eine bestehende Anwendung, die auf einem Microblaze auf dem Dual-Core-ARM läuft, zu portieren.Qualitativer Vergleich zwischen Petalinux und FreeRTOS
Worüber ich mich wundere ist, welche O.S. auf dem neuen System zu verwenden, weil ich in diesem Bereich überhaupt keine Erfahrung habe. Es scheint mir, dass vier Hauptansätze gibt es:
1) Petalinux (beide Kerne
2) Petalinux + FreeRTOS (füllen Sie beide Kerne)
3) FreeRTOS (nur verwenden) einen Kern
)4) BareMetal (nur ein Kern)
Was meine Anwendung zu tun hat, ist eine große Menge von Daten zwischen Ethernet und mehreren benutzerdefinierten Links zu bewegen, so hat es eine Menge von Interrupts und Befehl dienen viel DMA operiert Ionen.
Wie hoch ist der Overhead, der von Petalinux im Interrupt-Service für Baremetall oder FreeRTOS eingeführt wurde? Denkst du, dass für diese Art von Arbeit eine einzelne Kernapplikation schneller ohne Betriebssystem läuft oder zB eine Petalinux-Anwendung, die den Overhead des Betriebssystems (und der Synchronisationsmechanismen wie Semaphoren oder Mutex) hat?
Ich weiß, die Frage ist nicht präzise und ziemlich vage, aber ohne Erfahrung auf dem Gebiet brauche ich dringend einige erste Hinweise.
Vielen Dank.
Dank für Ihren Kommentar dankt. Mein Hauptbezweifelt ist der Leistungsabfall zwischen einer petalinux-Anwendung, die mehr Overhead hat, aber beide Kerne verwendet, und einer FreeRTOS-Lösung, die stattdessen nur einen einzelnen Kern verwendet. Was ich suche, ist vor allem Geschwindigkeit in Interrupt-Diensten. – Alessandro