Ein Angebot von

Echtzeit-Systeme

Unter Echtzeit versteht man die Anforderung an ein Rechensystem, innerhalb einer kürzesten definierten Zeitspanne korrekt zu reagieren. Dabei kommt es besonders auf schlanke, hochpräzise Abläufe an, oft unter optimaler Ausnutzung von nur begrenzt zur Verfügung stehenden Ressourcen. In der Praxis wird dabei oft zwischen "weichen" und "harten" Echtzeitsystemen unterschieden.  "Weiche" Echtzeitsysteme erlauben einen gweissen Spielraum in den Ausführungszeiten  deren Überschreitung ausschließlich qualitative Auswirkungen zur folge hat. Bei "harten" Echtzeitsystemen kann das Überschreiten der Zeitlimits bei der Reaktion  dagegen erhebliche, safety-kritische Folgen haben, etwa Gefährung von Menschen oder Beschädigung von Anlagen.

Fachbeiträge

Time-Sensitive Networking (TSN): Was ist das und wie geht das?

Time-Sensitive Networking (TSN): Was ist das und wie geht das?

Ob sie nun Profibus, Profinet oder EtherCat heißen: Wen es um vernetzte Echtzeit-Lösungen geht, stehen in der Industrie zahlreiche unterschiedliche Standards in Konkurrenz. OPC/UA over TSN könnte nun erstmals eine einheitliche Lösung bieten. Was steckt dahinter? lesen

Aufbau einer DDS-Architektur für echtzeitfähige medizintechnische Bildgebung

Aufbau einer DDS-Architektur für echtzeitfähige medizintechnische Bildgebung

In der medizinischen Bildgebung müssen Daten in Echtzeit sicher und zuverlässig übertragen werden. Hier bietet sich die datenzentrische Systemarchitektur an, um strenge Designvorgaben umzusetzen. lesen

SysWCET: Ende-zu-Ende-Antwortzeiten für OSEK-Systeme

SysWCET: Ende-zu-Ende-Antwortzeiten für OSEK-Systeme

Um Rechtzeitigkeit von Aufgaben in Echtzeitsystemen garantieren zu können ist die Bestimmung von schlimmstmöglichen Antwortzeiten unerlässlich. Hierbei ist die Herausforderung die präzise Analyse aller Aktivitäten des Gesamtsystems, wie synchrone Systemaufrufe und asynchrone Interrupts, ohne allzu pessimistische Annahmen zu treffen. Der Analyseansatz SysWCET kann hier weiterhelfen. lesen

Wie Echtzeit-Software auch ohne Echtzeit-Betriebssystem entwickelt werden kann

Wie Echtzeit-Software auch ohne Echtzeit-Betriebssystem entwickelt werden kann

Ist ein Echtzeit-Betriebssystem notwendig, wenn Echtzeit-Software entwickelt wird? David Kalinsky beleuchtet in unserem Beitrag grundlegende Designthemen. lesen

Echtzeitbetriebssysteme – Einführung und Konzepte

Echtzeitbetriebssysteme – Einführung und Konzepte

Echtzeitbetriebssysteme arbeitem unter knallharten Bedingungen: Begrenzte Ressourcen, untypische Schnittstellen, strikte Anforderungen an die Bereitstellung von Tasks. Diese Einführung erklärt die wesentlichen Konzepte des Herzstücks vieler Embedded-Systeme. lesen

Parallele Multicore-Programmierung mit lockfreien Algorithmen

Parallele Multicore-Programmierung mit lockfreien Algorithmen

Um Multicore-Prozessoren in den Griff zu bekommen, werden gerne Spinlocks zur Synchronisation der Prozesse verwendet. Doch dies birgt ebenfalls die Gefahr, dass Deadlocks auftreten. Der Einsatz lockfreier Algorithmen kann ein solches Dilemma vermeiden. lesen

Software-Tipp: Weitere Programmiertechniken zu C++ mit einem RTOS

Software-Tipp: Weitere Programmiertechniken zu C++ mit einem RTOS

Im letzten C++ Tipp haben wir eine interessante Technik für Embedded-Anwendungen geschildert, die einen Embedded-Block mit einem lokalen Objekt verwendete, in dem der zugehörige Konstruktor und Destruktor auf neuartige Weise eingesetzt wurde. Dies kann sich aber auch drastisch auf das Verhalten eines Echtzeitsystems auswirken. Hier einige nähere Details. lesen

Software-Tipp: C++ mit einem Echtzeitbetriebssystem verwenden

Software-Tipp: C++ mit einem Echtzeitbetriebssystem verwenden

Bei Einsatz eines Echtzeitbetriebssystens in Embedded-Anwendungen kann die hohe Anzahl komplexer APIs, die zum Abrufen vieler RTOS-Funktionen nötig sind, unerfahrene Entwickler unter Einsatz von C abschrecken. Die Eigenschaften von C++ lassen sich hier aber gut nutzen, um auf einfache Weise zu sauberen und lesbaren Code zu kommen. lesen

Performance von Echtzeit-Betriebssystemen richtig messen

Performance von Echtzeit-Betriebssystemen richtig messen

Embedded Systeme müssen in einem strengen Korsett an Speicher- und Prozessorressourcen arbeiten - vor allem dann, wenn echtzeitkritische Leistung gefragt ist. Wie lässt sich aber die tatsächliche Performance des eingesetzten RTOS effizient und genau bestimmen? lesen

Software in Echtzeitsystemen korrekt und fehlerfrei verteilen

Software in Echtzeitsystemen korrekt und fehlerfrei verteilen

Fehler, die durch nebenläufige Software-Ausführung entstehen, verursachen meist großen System-Overhead und schränken die Verteilbarkeit bzw. die effektive Nutzung der parallelen Rechenleistung massiv ein. Dieser Beitrag betrachtet typische Fehlerfälle nebenläufiger Echtzeit-Software, bietet konstruktive Mechanismen zu deren Vermeidung und erläutert, wie mit Tools eine korrekte Softwareverteilung erreicht werden kann. lesen

Echtzeit: Grundlagen von Echtzeitsystemen

Echtzeit: Grundlagen von Echtzeitsystemen

Unter Echtzeit versteht man die Anforderung an ein Rechensystem, innerhalb einer kürzesten definierten Zeitspanne korrekt zu reagieren. Weitere wichtige Konzepte sind "harte" und "weiche" Echtzeit sowie Ereignissteuerung und Zeitsteuerung. lesen

Queuing – Warteschlangentheorie für Embedded-Software

Queuing – Warteschlangentheorie für Embedded-Software

Entwickler von Embedded-Systemen müssen beim Systementwurf oft die maximale Anzahl an Messages ermitteln, die in einer Message Queue auflaufen können. Viele RTOS benötigen diese Information, um eine Queue zu erzeugen. Besonders wenn es um „harte“ Echtzeitsysteme geht, gilt es, sich auch mit Queuing-Verzögerungen auseinanderzusetzen, lesen

Echtzeit mit dem Raspberry Pi und Linux PREEMPT_RT

Echtzeit mit dem Raspberry Pi und Linux PREEMPT_RT

Für das Raspberry Pi sind zahlreiche Betriebssysteme vorhanden, die jedoch Echtzeitanforderungen in der Regel nur unzureichend erfüllen. Mit dem PREEMPT_RT Patch können Sie auf dem Einplatinenrechner dagegen Echtzeiteigenschaften erreichen. lesen

Echtzeit- und Deadline-Scheduling von Linux

Task-Management

Echtzeit- und Deadline-Scheduling von Linux

Seit dem Linux-Kernel 3.14 steht das Deadline-Scheduling zur Verfügung. Dadurch besteht die Aussicht, dass die Parametrisierung der Tasks direkt als zeitliche Vorgabe und nicht nur als abgeleitete Priorität erfolgt. lesen

Debian oder Yocto – welches Linux-Buildsystem ist besser?

Open Source

Debian oder Yocto – welches Linux-Buildsystem ist besser?

Linux-Buildsysteme erstellen eine Kombination aus dem Linux-Kernel und der für eine bestimmte Anwendung relevanten Programme. Doch welches Buildsystem ist das richtige? lesen

Entwicklungsbeschleuniger: Zeit als neue Währung (Teil 2)

Cyber-physikalische Systeme

Entwicklungsbeschleuniger: Zeit als neue Währung (Teil 2)

LabVIEW im Serienprodukt: Echtzeit-Linux und C-Generator ermöglichen Echtzeit-Software auf eigener Embedded-Hardware. lesen

Entwicklungsbeschleuniger - Zeit als neue Währung (Teil 1)

Werkzeuge und Notationen

Entwicklungsbeschleuniger - Zeit als neue Währung (Teil 1)

Ausführbare Rechenmodelle in einem heterogenen Aktor-Framework unterstützen unsere Denkweise und beschleunigen die Entwicklung von Timing in Embedded-Software. lesen

Ein Embedded- Echtzeit-Linux-System aufsetzen, (Teil 2)

Ein Embedded- Echtzeit-Linux-System aufsetzen, (Teil 2)

In diesem Embedded-Linux-Tutorial erfahrt Ihr, wie ihr einen Bootloader erstellt und modifiziert. Außerdem kümmern wir uns um den Linux-Kernel und das Root-Filesystem. lesen

Ein Embedded-Echtzeit-Linux-System aufsetzen (Teil 1)

Ein Embedded-Echtzeit-Linux-System aufsetzen (Teil 1)

Ein Embedded-Board, eine JTAG-Schnittstelle und freie Software – mehr braucht man nicht für ein fertiges Entwicklungssystem für Embedded-Echtzeit-Linux. Dieses Tutorial zeigt Ihnen, wie das geht. lesen

Ohne Locks für Multicore-Systeme programmieren

Multicore-Programmierung

Ohne Locks für Multicore-Systeme programmieren

Viele Multicore-SOCs und auch einige Betriebssysteme bieten Möglichkeiten zur lockfreien Programmierung. Die Softwareentwicklung wird dadurch jedoch umständlicher als mit herkömmlichen Methoden. lesen

Karriere

Hitex GmbH

Applikationsentwickler (m/w/d) Functional Safety Embedded Systems

Selbstständig kundenspezifische Applikationen mit Schwerpunkt Functional Safety im Bereich Mikrocontroller-basierende Embedded-Systeme entwickeln

Events:

MicroConsult Microelectronics Consulting & Training GmbH

Clean Code für C-Programme

Lernen Sie die wichtigsten Prinzipien, Regeln und Praktiken für die Erstellung von praxisgerechter, ...

Firmen stellen vor:

MicroConsult Microelectronics Consulting & Training GmbH

Atmel Studio 6 & ASF: Anwendung für Atmel Arm Core-based Flash Mikrocontroller

Sie setzen alle Möglichkeiten, die Ihnen das Atmel Studio 6 & ASF für Programmentwicklung und Debugging bietet, ...

Hitex GmbH

Entwicklungswerkzeuge für Profis

Hitex vertreibt und unterstützt folgende Entwicklungsumgebungen: Keil MDK-ARM, ARM DS-5, PLS

QA Systems GmbH

Cantata - Automatisierte Unit- und Integrationstests für C/C++

Cantata ist ein Testwerkzeug für Unit- und Integrationstests. Das Tool unterstützt Entwickler, ...

Downloads:

MicroConsult Microelectronics Consulting & Training GmbH

Funktionale Sicherheit: Systematische Fehler mit Struktur und Prozessen eindämmen

Ein ganzheitlicher Ansatz und das entsprechende Wissen um die Details sind essentiell, ...

Parasoft® Deutschland GmbH

Parasoft Service Virtualisierung

Service Virtualisierung bietet eine simulierte Testumgebung, die es ermöglicht, früher, ...