Thread Perl und Garbage collector: Warum macht der Perl GC nichts? (14 answers)
Opened by Gast at 2006-03-24 18:37

murphy
 2006-03-25 14:12
#64062 #64062
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
[quote=esskar,25.03.2006, 02:59][quote=Relais,24.03.2006, 21:22]Können Programme während ihrer Laufzeit Speicher an das OS zurückgeben? Wie geht das?[/quote]
ich kann jetzt nur von windows sprechen:
ein prozess hat - egal wieviel RAM der computer hat - 2 GB virtuellen speicher (RAMD + SWAP). Diesen kann er beliebig nutzen.

Unter C/C++ kann man zwischen zwei Arteb von Speicher unterschienden. Code-Speicher und Stack-Speicher (@Ronnie: in uralt C Zeiten kannte man Heap noch gar nicht)

eine
Code: (dl )
char var[512];
belegt z.b. 512 bytes vom code speicher, wobei ein
Code: (dl )
char *var = new char[512]
512 bytes auf dem stack belegt. Code-speicher kann man nicht - zumindeest nicht durch anschupsen - an das OS wieder zurück geben. Speicher Stack schon, und zwar mit
Code: (dl )
delete var
.
[...][/quote]
Irgendwie finde ich deine Definition von Stack ausgemacht merkwürdig. Und deine Definition von Code würde ich auch lieber "statische Daten" nennen.

Es ist meines Erachtens schon sinnvoll, zwischen statisch gemappten Daten, automatisch gemapptem Stack und programmgesteuert gemapptem Heap zu unterscheiden.
When C++ is your hammer, every problem looks like your thumb.

View full thread Perl und Garbage collector: Warum macht der Perl GC nichts?