[linux-l] Re: [linux-l] Re: Programmiersprachen - Lösung in Python (kurze Version)

Peter Ross Peter.Ross at alumni.tu-berlin.de
Sa Sep 16 01:17:26 CEST 2006


Oliver Bandel wrote:
> On Mon, Sep 11, 2006 at 06:32:53PM +1000, Peter Ross wrote:

> Naja, wieso meinst Du, daß Hand-GC per free() eigentlich besser sein
> sollte, als GC-unterstütze Sprachen?
> Weil Du Java als einziges GC-Beispiel für alle GCs nimmst?

Nein, ich verallgemeinere nicht, ich berichte von einem aktuell
vorliegenden Problem.

Ein Hand-GC, wie Du es nennst, kann insofern besser sein, weil es die
Kontrolle dem Programmierer uebergibt.

In Deutschland faehrt doch kaum jemand mit Automatikgetriebe. Hier ist das
normal. Kein "Schalten ist kein Geheimnis, jeder kann es hoeren". Und doch
werden viele deutsche Autofahrer behaupten, dass ein Auto mit Automatik
"lahm" ist, dass sie ohne mehr aus der Kiste herausholen.

Ein Automatikgetriebe kann eben nicht wissen, dass ich jetzt aber ganz
besonders schnell auf Tempo kommen will. Es verhaelt sich immer gleich,
egal wie die Situation ist. Und trotzdem gibt es schlechte Autofahrer, die
mit Automatik ganz sicher besser aufgehoben sind.

> C ist eben für Abstürze gut geeignet... ;-(

Gott, die gibt es mit Java auch (Alltagserfahrung). Dem Programmierer wird
eben nur eine Handvoll Moeglichkeiten genommen, gegen den Baum zu
fahren;-) Und.. auch Java ist in C geschrieben.. da hat jemand die Fehler
fuer Dich schon vorgebaut;-)

Z.B. wohl in einem DB-Verbindungspool. Auf die Abloesung auf einen neuen
warten wir sehnsuechtig, es wird schon getestet. Wie gesagt, am 3.Oktober
solls werden:-)

> Was für eine ominöse Anwendung ist es denn, von der Du sprichst?

wie schon erwaehnt, webbasiertes Dokumentenmanagement fuers Bauwesen
(www.aconex.com).

Gross genug, um ueberall an die Schmerzgrenzen zu stossen, vom Java, und
manchmal auch von Linux. Speziell was die Linux-VM angeht.. es ist schon
viel besser mit 2.6.. wir haben gerade heute morgen die letzte 2.4er Kidte
in Rente geschickt:-)

Die VM von Java packt eben auf die Linux-VM eine Abstraktionsschicht
drauf, und ist in gewisser Hinsicht nur halb so smart wie die des OS.

In gewisser Hinsicht "entsorgt" ja auch das Betriebssystem. Wenn Du
Speicher in einem, sagen wir mal C-,Programm angefordert hast, und den
lange nicht benutzt hast, lagert das OS den irgendwann aus. Und hat dazu
eben sehr ausgefeilte Mechanismen.

Auf diese Mechanismen verzichtest Du praktisch, wenn Du eine Java-VM hast
(und, wie bei mir der Fall, die Java-anwendung so ziemlich allein die
Maschine belastet).

Gruss
Peter







Mehr Informationen über die Mailingliste linux-l