Speicherresidenz

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Speicherresident)
Zur Navigation springen Zur Suche springen
Dieser Artikel oder nachfolgende Abschnitt ist nicht hinreichend mit Belegen (beispielsweise Einzelnachweisen) ausgestattet. Die fraglichen Angaben werden daher möglicherweise demnächst entfernt. Bitte hilf der Wikipedia, indem du die Angaben recherchierst und gute Belege einfügst.

Unter Speicherresidenz versteht man die Fähigkeit von Computerprogrammen, Programmteile im flüchtigen Hauptspeicher eines Rechners zurückzulassen und wiederstartbar zu verankern oder als Betriebssystem-Komponenten einzubinden. Neben nützlichen Programmen sowie dem Betriebssystem selbst sind es häufig Viren und Würmer, die diese Technik benutzen. Von Speicherresidenz wird im Allgemeinen nur gesprochen, wenn das zugehörige Programm zumindest formal nach dem Sich-Verankern endet. Für Prozesse, die aktiv bleiben, ist die Speicherresidenz unvermeidlich und wird im Allgemeinen nicht gesondert erwähnt.

Diese zurückgelassenen Programmteile können aktiviert werden

  • wenn das gerade laufende Anwendungsprogramm einen bestimmten Service des Betriebssystems aufruft, in den sich das speicherresidente Programm zuvor eingeklinkt hat (mitunter ist das speicherresidente Programm der entsprechende Betriebssystemteil);
  • wenn ein Hardware-Interrupt das aktuell laufende Anwendungsprogramm unterbricht, und das speicherresidente Programm sich zuvor in den Interrupt-Service-Handler eingeklinkt hat (siehe auch Scheduler).

Über letzte Variante kann das speicherresidente Programm zum Beispiel über eine Tastenkombination oder über (Hardware-)Systemuhr-Interrupt wieder aktiviert werden. Dies erzeugt einen Eindruck von Gleichzeitigkeit, obwohl stets nur ein Programm aktiv ist (siehe Multitasking).

Bestimmte Teile eines Betriebssystems sind zwingend speicherresident (dürfen nicht auf die Festplatte ausgelagert werden), dies sind v. a. Kernel und Festplattentreiber.

Geschichte[Bearbeiten | Quelltext bearbeiten]

In den Anfangsjahren der Computertechnik war es schwierig bis unmöglich, mehrere Prozesse parallel ablaufen zu lassen. Man behalf sich manchmal bei MS-DOS damit, dass man Programme nicht „normal“ über Interrupt 21h beendete, was sie aus dem Speicher entfernte, sondern über Interrupt 27h, was Programmreste im Hauptspeicher beließ. Erste Anwendungen für derartige Programme waren Systemuhr, Bildschirm- und Tastaturtreiber.

Betriebssysteme[Bearbeiten | Quelltext bearbeiten]

Teile des Betriebssystems sind speicherresident.

Bereits die Betriebssysteme selbst installieren viele derartige Programme, einen Teil davon kann man über einen Taskmanager anzeigen lassen. Hierzu zählen etwa Drucker- oder Scannertreiber, aber auch Software für die Benutzung der Braillzeile oder diverse kleine Hilfsprogramme. Speicherresidente Programme halten in den meisten Fällen Funktionen bereit, die zu einem unbestimmten Zeitpunkt auf Wunsch benötigt werden. Der Benutzer kümmert sich in den meisten Fällen nicht um diese Programme.

Viren[Bearbeiten | Quelltext bearbeiten]

Vorgehensweise von Viren[Bearbeiten | Quelltext bearbeiten]

In den meisten Fällen geschieht die Infektion unbemerkt. Ist der Virus einmal im Speicher, benötigt er das Infektionsprogramm nicht mehr, es genügt ihm ein einziger Aufruf. Die weitere Verbreitung geschieht durch den Virus selbst.

Auslöser einer Infektion ist das Starten einer infizierten Datei, die mittels Datenträger oder Netz auf den Rechner gelangt ist. Der Virus kopiert sich selbst meist zuerst an möglichst viele Stellen auf allen Laufwerken des Rechners oder Netzwerkes. Dabei wird kein Schadcode ausgeführt, dieses Vermehren soll möglichst unbemerkt geschehen. Die infizierten Wirtsprogramme laufen weitgehend unverändert weiter, wenn der Virus korrekt programmiert ist. Durch diese Verbreitung versucht der Virus, die Wahrscheinlichkeit möglichst groß zu halten, dass er beim nächsten Start des Rechners wieder aktiv ist.

Stealthviren sind eine Weiterentwicklung der speicherresidenten Viren, sie versuchen, ihre Identität aktiv zu verstecken.

Orte der Infektionen[Bearbeiten | Quelltext bearbeiten]

CPUs segmentieren den Hauptspeicher hierarchisch (vgl. Ring (CPU)). Die Stärke Residenz eines Virus hängt davon ab, in welchem Ring er sich befindet. Je höher die Hierarchiestufe seines Speicherbereiches, umso schwieriger wird es, den Virus zu entfernen.

Auch wurden bereits Viren-Angriffe auf die Cache-Speicher von Chipsätzen getätigt. Dort ist es extrem schwierig, den Virus zu entfernen, da Betriebssysteme dem Anwender i.a. keinerlei Verfügungsgewalt über den Cache eines Chipsatzes bieten.

Schutz vor speicherresidenten Viren[Bearbeiten | Quelltext bearbeiten]

Speicherresidente Viren können sich nur verbreiten, wenn man infizierte Dateien benutzt. Hat bereits eine Infektion stattgefunden, kann mit der Entfernung ein beträchtlicher Datenverlust einhergehen. Moderne und aktuelle Antivirensoftware schützt weitgehend automatisch vor bösartigen speicherresidenten Programmen.

Siehe auch[Bearbeiten | Quelltext bearbeiten]