EBS 2.1 Flashcards
Kapitel 1-3
Was ist ein eingebettetes System?
Ein eingebettetes System ist ein Computersystem, das in ein anderes Produkt integriert ist und dort spezifische Aufgaben übernimmt. Beispiele sind Mobiltelefone, Antiblockiersysteme und Satellitensteuerungen.
Warum gewinnt ein softwarebasierter Ansatz in der Entwicklung eingebetteter Systeme an Bedeutung?
Der Entwicklungsaufwand verlagert sich zunehmend von der Hardware zur Software, da softwarebasierte Ansätze eine höhere Flexibilität und Anpassungsfähigkeit bei Änderungen der Hardware bieten und die steigenden Funktionalitätsanforderungen besser erfüllen können.
Wie verbreitet sind eingebettete Systeme in der heutigen Technologie?
Laut einer Studie von 2002 werden etwa 98 % aller programmierbaren CPUs in eingebetteten Systemen verwendet.
Welche Herausforderungen müssen Entwickler von eingebetteten Systemen meistern?
Entwickler müssen die steigende Komplexität bewältigen, die durch höhere Funktionalitätsanforderungen, die Verteilung von Rechnerknoten und neue Anforderungen wie die dynamische Rekonfiguration der Software während der Laufzeit entsteht.
Welche neuen Anforderungen entstehen durch die Vernetzung eingebetteter Systeme?
Die Vernetzung erfordert eine umsichtige Konzeption, um das Zeitverhalten in einem verteilten, dynamisch konfigurierbaren System vorhersagbar und damit beherrschbar zu machen.
Warum sind Abstraktionsmechanismen für eingebettete Systeme wichtig?
Abstraktionsmechanismen sind wichtig, um Hardware und Software zu entkoppeln und die Entwicklung auf der Ebene abstrakter Systemanforderungen zu ermöglichen. Dies macht die Entwicklung flexibler und anpassungsfähiger an verschiedene Hardwareplattformen.
Welche interdisziplinären Ansätze sind notwendig, um die Herausforderungen in der Entwicklung eingebetteter Systeme zu bewältigen?
Synergien zwischen Softwaretechnik, formalen Grundlagen der Softwarekonstruktion sowie Elektro- und Regelungstechnik sind notwendig, um die Komplexität zu meistern und die Qualität der Systeme zu gewährleisten.
Welche Veränderungen in der Hochschulausbildung schlagen Broy und Pree (2003) vor?
Sie schlagen vor, Software- und Hardwarethemen adäquat in einem Curriculum zu kombinieren und die systematische, möglichst automatisierte Konstruktion von Software für eingebettete Systeme zu fördern.
Wie unterscheidet sich die traditionelle Herangehensweise von modernen Ansätzen bei der Entwicklung eingebetteter Systeme?
Die traditionelle Herangehensweise fokussiert sich auf isolierte Kontroll- und Regelungsaufgaben mit optimaler Nutzung der Hardwareressourcen, während moderne Ansätze Softwareabstraktionen nutzen, um die Entwicklung zu rationalisieren und die Softwarequalität zu verbessern.
Was ist die langfristige Vision für die Entwicklung eingebetteter Systeme laut Broy und Pree (2003)?
Die Vision ist, von einer hardwarezentrierten Entwicklung zu einer anforderungszentrierten Entwicklung überzugehen, unterstützt durch intensive Forschung und eine angepasste Hochschulausbildung, die Softwaretechnik und formale Informatik mit Elektro- und Regelungstechnik kombiniert.
Was ist ein Echtzeitsystem?
Ein Echtzeitsystem ist ein System, bei dem der Zeitpunkt der Ausgabe bedeutend ist und innerhalb einer definierten Zeitspanne garantiert bearbeitet wird.
Was ist ein Echtzeitbetriebssystem?
Ein Echtzeitbetriebssystem ist ein Betriebssystem, das Echtzeitverhalten aufweist und die zeitliche Reihenfolge der Prozesse (Scheduling) besonders berücksichtigt.
Welche Anforderungen werden an Echtzeitbetriebssysteme gestellt?
Echtzeitbetriebssysteme müssen deterministisches zeitliches Verhalten, schnelle Reaktion auf Interrupts, Multitaskingfähigkeit, prioritätsgesteuerte Prozesse, effiziente Interprozesskommunikation, Skalierbarkeit, Lastunabhängigkeit, Standardschnittstellen und die Fähigkeit zur Kommunikation mit nicht-echtzeitfähigen Systemen aufweisen.
Wie ist das Betriebssystem strukturiert?
Ein Betriebssystem ist in mehrere Schichten eingeteilt: der Kernel, grundlegende I/O-Dienste, Kommunikations- und Netzwerkdienste sowie weitere Schichten je nach Anforderung.
Welche Aufgaben erfüllt ein Betriebssystem?
Ein Betriebssystem verwaltet Hardware- und Software-Betriebsmittel, Prozesse, ermöglicht den Aufruf von Systemprogrammen und stellt Programmierschnittstellen bereit.
Worin unterscheiden sich Echtzeitbetriebssysteme von normalen Betriebssystemen?
Echtzeitbetriebssysteme gewährleisten die Reaktionszeiten des Gesamtsystems und haben oft keine komplexe Dateiverwaltung. Sie benötigen genaue Prozessmanagementsysteme.
Welche Prozesszustände gibt es?
Prozesszustände sind: generiert, bereit/lauffähig, aktiv, blockiert/suspendiert, terminiert.
Was versteht man unter Scheduling?
Scheduling ist die Zuordnung einer Ausführungsreihenfolge zu einer gegebenen Menge von Prozessen/Tasks, um die Zeitbedingungen aller Tasks zu erfüllen.
Welche Eigenschaften sollte ein Scheduler haben?
Ein Scheduler sollte Fairness, Effizienz, kurze Antwortzeiten, geringe Verweilzeiten, hohen Durchsatz und Terminerfüllung gewährleisten.
Was ist der Unterschied zwischen kooperativem und verdrängendem Multitasking?
Kooperatives Multitasking gibt die CPU freiwillig frei, verdrängendes Multitasking entzieht die CPU einem laufenden Prozess bei Bedarf.