Title:

Garbage Collection für Parallele und Verteilte Systeme

Home
deutsch
  
ISBN: 3211711767   ISBN: 3211711767   ISBN: 3211711767   ISBN: 3211711767 
 
|<< First     < Previous     Index     Next >     Last >>|
  Wir empfehlen:       
 

– 4 – der Referenzen, besonders bei kurzlebigen Objekten, großen Overhead in Bezug auf die Zeit  zum  Updaten  der  Zähler  und  den  zusätzlichen  Platzbedarf  für  die  Zähler.  Ferner kann beim Löschen des letzten Zeigers auf ein Objekt keine Zeitdauer bis zum Ende des Vorgangs garantiert werden, weil sich das Freisetzen von Speicherzellen rekursiv fort- setzen  kann  [Jo96].  Abgesehen  vom  Basisalgorithmus  des  Reference  Counting  gibt  es noch  weitere  Algorithmen,  welche  die  oben  genannten  Probleme  zumindest  mindern. Für  Details  verschiedener  Algorithmen  sei  dazu  auf  Jones  und  Lins  [Kap.3,  Jo96] verwiesen. 2.2 Mark-Sweep GC läuft bei einem Mark-Sweep Collector in zwei Stufen ab, die den oben vorgestellten zwei Teilen bei der GC entsprechen. Zuerst werden bei der Garbage Detection diejeni- gen  Objekte  markiert,  die  vom  Root  Set  erreichbar  sind  (Tracing).  Im  zweiten  Schritt wird  der  Speicher  von  allen  Objekten  bereinigt,  die  im  ersten  Schritt  nicht  markiert worden sind, d.h. die freigesetzten Speicherbereiche werden wie beim Reference Coun- ting in eine Liste für freie Speicherbereiche eingetragen. Allerdings erfolgt die GC beim Mark-Sweep  Algorithmus  erst,  wenn  der  Speicherbedarf  für  neue  Objekte  nicht  mehr gedeckt werden kann.   Auch bei der Mark-Sweep GC gibt es verschiedene Schwierigkeiten, wie z.B. Fragmen- tierung  des  Speichers,  hohe  Kosten  beim  Markieren  aller  lebenden  Objekte  und  lange Pausen im laufenden Programm während der GC-Phase. Durch geschickte Implementie- rungstechniken lassen sich diese Probleme jedoch teilweise mildern [Wi94]. Außerdem ist  von  Vorteil,  dass  der  Mark-Sweep  Algorithmus  zyklische  Garbage-Strukturen  ent- deckt und kein Overhead bei der Manipulation von Zeigern entsteht [Jo96]. 2.3 Copying Garbage Collection Ein Copying Collector teilt den Speicher bzw. den Heap1 in zwei gleichgroße Bereiche (Semi-Spaces)  auf.  Ein  Teil  enthält  aktuelle  und  der  andere  Teil  veraltete  Daten.  Zu Beginn  der  GC  werden  die  Rollen  der  beiden  Bereiche  getauscht.  Datenstrukturen in dem  vorher  aktiven  Bereich    (Fromspace)  werden  traversiert  und  „lebende“  Zellen  in die  andere  Hälfte  (Tospace)  kopiert.  Auf  diese  Weise  wird  im  Tospace  die  aktive  Da- tenstruktur  repliziert.  Allerdings  ist  es  bei  Verwendung  der  Grundform  des  Copying Algorithmus  nötig,  das  laufende  Programm  zu  unterbrechen  bis  alle  aktiven  Zellen  in                                                                  1 In Anlehnung an Jones [Jo96] kann ein Heap als eine Region im Speicher definiert werden, in der die Deallokation von Objekten keiner spezifischen kausalen Ordnung folgt.
  
Trölß, Josef, Bd.2 : Komplexe Zahlen und Funktionen, Vektoralgebra und Analytische Geometrie, Matrizenrechnung, Vektoranalysis
Siehe auch:
Angewandte Mathematik mit Mathcad. Lehr- und Arbe...
Angewandte Mathematik mit Mathcad. Lehr- und Arbe...
Angewandte Mathematik mit Mathcad. Lehr- und Arbe...
Bildverarbeitung für Einsteiger: Programmbei...
 
   
 
     
|<< First     < Previous     Index     Next >     Last >>| 

Back to the topic site:
StudyPaper.com/Startseite/Computer/Informatik

External Links to this site are permitted without prior consent.
   
  Home  |  deutsch  |  Set bookmark  |  Send a friend a link  |  Copyright ©  |  Impressum