root@localhost Geschrieben 8. Dezember 2004 Teilen Geschrieben 8. Dezember 2004 Hallo Jungs und Mädls, hab hier ne Zeile PERL Code die mir echt Kopfschmerzen bereitet: # Memory Information my $memoryinfo = $hklm->{"HARDWARE\\RESOURCEMAP\\System Resources\\Physical Memory"}; $info->{"memory"} = ceil((unpack "L*", $memoryinfo->{".Translated"})[-1] / 1024 / 1024 + 16) . " MB"; Das ganze ist aus dem Modul Win32::MachineInfo (MachineInfo.pm ) und sollte eigentlich die Größe des RAM`s berechnen, bei den meisten unserer Rechner funktioniert das auch richtig, nur kommen bei einigen 17MB Arbeitsspeicher raus. Und das ist definitiv falsch. - ich verstehe die funktion ceil() , rundet auf die nächste ganze zahl auf - ich verstehe unpack (), zerlegt den string - was mich allerdings sehr verwirrt ist der index [-1] von der Klammerung glaub ich gehört der zur unpack funktion , ist das irgendein special oder so?? ciao r##t Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
taschentoast Geschrieben 8. Dezember 2004 Teilen Geschrieben 8. Dezember 2004 Hallo Jungs und Mädls, hab hier ne Zeile PERL Code die mir echt Kopfschmerzen bereitet: # Memory Information my $memoryinfo = $hklm->{"HARDWARE\\RESOURCEMAP\\System Resources\\Physical Memory"}; $info->{"memory"} = ceil((unpack "L*", $memoryinfo->{".Translated"})[-1] / 1024 / 1024 + 16) . " MB"; [schnippschnapp...] - was mich allerdings sehr verwirrt ist der index [-1] von der Klammerung glaub ich gehört der zur unpack funktion , ist das irgendein special oder so?? das [-1] bezeichnet das letzte Element des Arrays davor, sprich: des Arrays "(unpack "L*", $memoryinfo->{".Translated"})" und die 17MB werden wohl davon kommen, dass bei den Divisionen mal 1 rauskommt und +16 gerechnet wird. taschentoast Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.