- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 16

Thema: Beaglebone Black: Status

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    hat da nicht vor kurzem ein Patch die Runde gemacht der so ziemlich jedem Linux ein PreEmpRT ermöglichen soll? Irgendwo auf Heise oder Golem war mir das untergekommen meine ich.

    PS: Ich präferiere hier definitv das python wegen der startzeit, der konsole für live tests bzw. debugging und der zahlreichen python scripts im netz für alleerdenklichen bauteile und funktionen

    und natürlichn unschlagbar für rapid prototyping ohne compilieren und flashen
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  2. #2
    Erfahrener Benutzer Roboter-Spezialist Avatar von schorsch_76
    Registriert seit
    25.03.2012
    Ort
    Kurz vor Neuschwanstein
    Alter
    47
    Beiträge
    456
    Zitat Zitat von Ceos Beitrag anzeigen
    hat da nicht vor kurzem ein Patch die Runde gemacht der so ziemlich jedem Linux ein PreEmpRT ermöglichen soll? Irgendwo auf Heise oder Golem war mir das untergekommen meine ich.

    PS: Ich präferiere hier definitv das python wegen der startzeit, der konsole für live tests bzw. debugging und der zahlreichen python scripts im netz für alleerdenklichen bauteile und funktionen

    und natürlichn unschlagbar für rapid prototyping ohne compilieren und flashen
    Meines Wissens nach, ist ein großer Teil des PREEMPT_RT Patches mittlerweile Mainline, aber noch nicht alles. [1]

    Die PRU's sind eben wie Microkontroller in der CPU. Hier läuft nichts anderes nur das kleine Miniprogramm. Dadurch kann man (bei entsprechner Programmierung) Latenzen garantieren. Auch unter Linux mit PREEMPT_RT sind die Latenzen nicht so exakt einzuhalten wie auf einer MCU. Beispielsweise QNX oder VxWorks [2][3] sind von Haus aus auf das RT Verhalten ausgelegt (Mikrokernel Architektur). Linux ist hier ganz anderst aufgebaut. Es ist ein Monolith. [4]

    Mit Xenomai oder RTAI wird unter "das normale OS" ein Microkernel gepackt der dann die harte Echtzeit garantiert. Un ja, es gibt zwischen PREEMPT_RT und Xenomai/RTAI noch sehr große Unterschiede was das Echtzeitverhalten angeht (auch wenn PREEMPT_RT schon sehr gut ist). [5]


    [1] https://www.heise.de/ct/artikel/Die-...g-4470638.html

    [2] https://de.wikipedia.org/wiki/QNX
    [3] https://de.wikipedia.org/wiki/VxWorks

    [4] https://de.wikipedia.org/wiki/Linux

    [5] https://www.embedded-software-engine...inux-a-632464/

  3. #3
    HaWe
    Gast
    ich bin und war eigentlich immer der Meinung, dass pthread eine ANSI C99 Standard-Lib ist, die in jeder Linux- und GCC distri enthalten ist, und es ist grundsätzlich preemptiv.
    Nutze ich ständig, sowohl auf Raspberry Pi (Debian) als auch sogar schon seit ca. 10 Jahren auf Lego EV3 (hat eine TI Linux distri).

    #include <pthread.h>
    compilieren mit GCC flag -lpthread

    und fertig!

    es ist für gängige Anwendungen absolut RT-fähig (GPIO r/w sicher innerhalb 400ns auf einem alten Pi 2, parallel zu WiFi, geöffnetem Firefox, full-HD HDMI TFT, Soundwiedergabe und wireless BT für Maus und Kbd.)

  4. #4
    Erfahrener Benutzer Roboter-Spezialist Avatar von schorsch_76
    Registriert seit
    25.03.2012
    Ort
    Kurz vor Neuschwanstein
    Alter
    47
    Beiträge
    456
    pthread ist eine Standard Library. Sie garantiert aber kein Echtzeitverhalten.

    https://elinux.org/Realtime_Testing_Best_Practices

    https://ocw.cs.pub.ro/courses/_media...it_curs_07.pdf

    Harte Echtzeit bedeutet: Es ist in JEDEM Fall garantiert, das die Deadline eingehalten wird. Bsp. Steuerung von Raketen, Steuerung von Flugzeugen, Sicherheitskritische Abschaltungen von denen Menschenleben abhängen. Würdest du wirklich garantieren, dass dein pthread unter allen Umständen, in die dein System kommen kann, immer und jederzeit rechtzeitig reagiert? DDOS auf den Netzwerk Port? Ein Amok laufendes Skript?

  5. #5
    HaWe
    Gast
    ich schrieb "gängige Anwendungen", ich programmiere mobile Robots, die sich mit bis zu 10km/h bewegen, aber keine Raketen.
    Für mobile Robots reicht es dicke,
    aber Raketen oder wenn Menschenleben davon abhängen, dann würde ich auf multicores einsetzen und den kernel auf einzelne Cores einschränken, dann läuft das eigene Programm vom kernel unbeeinflusst. Plus ein 2. oder 3. redundantes System (für bemannte Marsmissionen ).
    Und ja, dann würde ich das auch dafür garantieren.


    PS
    ich würde dafür aber NIE eine single-core cpu einsetzen.

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    ich glaaube wir schweifen ab ^^
    eigentlich gings doch um den beaglebone

    PS single core ist wunderschön deterministisch und threads streng genommen luxus den man sich durch interlligente statemachines sparen kann, aber da trennt sich eben library basiertes programmieren von echtem bare metal. Mehr kontrolle erfordert auch mehr management, einfach nur eine kosten/nutzen frage und des persönlichen gemacks und darüber lässt sich bekanntlich nicht freundlich streiten
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  7. #7
    HaWe
    Gast
    Zitat Zitat von Ceos Beitrag anzeigen
    ich glaaube wir schweifen ab ^^
    eigentlich gings doch um den beaglebone

    PS single core ist wunderschön deterministisch und threads streng genommen luxus den man sich durch interlligente statemachines sparen kann, aber da trennt sich eben library basiertes programmieren von echtem bare metal. Mehr kontrolle erfordert auch mehr management, einfach nur eine kosten/nutzen frage und des persönlichen gemacks und darüber lässt sich bekanntlich nicht freundlich streiten
    Alle C-Programmierung ist IMMER Library-basiert, das fängt bei stdio.h an, geht über stdlib.h und unistd.h und hört bei pthread.h (nicht) auf -
    nicht zu vergessen, dass ja Linux auch IMMER ein multiuser- multitasking OS ist



    PS, bezgl. "intelligenter Statemachines", die angeblich MT ersetzen können, muss ich dir wschl widersprechen:
    Wenn ich mich recht an eine Informatikvorlesung erinnere, ist eine Statemachine ein Endlicher Automat (reguläre Grammatik =Chomsky Typ 3 , also am stärksten eingeschrränkt),
    C ist aber bereits (mindestens?) vom Chomsky Typ 2 (kontextfreie Grammatik) und Turing-vollständig,
    und Nebenläufigkeit (engl.: concurrency) oder auch "Echtzeitfähigkeit" gehören keinesfalls zu den Kriterien von State Machines, sie können also C mit preemptivem Multithreading niemals das Wasser reichen
    Geändert von HaWe (01.08.2019 um 22:32 Uhr)

Ähnliche Themen

  1. Verkaufe Erlebrain Pixhawk inkl. Beaglebone Black
    Von kienzle im Forum Kaufen, Verkaufen, Tauschen, Suchen
    Antworten: 0
    Letzter Beitrag: 07.10.2015, 13:28
  2. Entwicklerplatinen: Offizieller Beaglebone-Black-Klon angekündigt
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 15.04.2014, 14:30
  3. Arduino Shield to BeagleBone Black Cape
    Von tucow im Forum Vorstellungen+Bilder von fertigen Projekten/Bots
    Antworten: 3
    Letzter Beitrag: 16.03.2014, 19:06
  4. 1-GHz-Linux-PC BeagleBone Black für 45 Dollar
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 25.04.2013, 09:50
  5. Black Box mit 7 Bit
    Von Lars. im Forum Vorstellungen+Bilder von fertigen Projekten/Bots
    Antworten: 5
    Letzter Beitrag: 02.05.2006, 21:18

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test