[Dresden-pm] Re: aligned memory
Steffen Schwigon
schwigon at webit.de
Die Sep 2 02:12:51 CDT 2003
Torsten Werner <twerner-perl at vwisb7.vkw.tu-dresden.de> writes:
> ich bräuchte eine Variable die auf 2048 bytes ausgerichtet ist. Geht das
> in perl zu machen? Hintergrund: um nach /dev/raw/raw* zu schreiben zu
> können (mit syswrite), braucht man einen Speicherblock, der an der
> Blockgröße des dahinterliegenden Blockdevices ausgerichtet ist.
Es sollte gehen.
Auf dem letzten Perl-Workshop war der Author des Moduls
Convert::Binary::C da und hat genau solche Dinge gemacht gezeigt.
Er hat C-Header geparst und entsprechende Perl-Datenstrukturen
aufgebaut. Alignment war ein konkretes Thema dabei. Dazu hat er aus
dem vorliegenden Compiler die Infos ermittelt, wie Datenstrukturen
(alignment, little/big endian, usw.) auf der Maschine aufgebaut werden
und dann das ganze auf pack/unpack runtergebrochen.
Du könntest also zumindest versuchen, ob Convert::Binary::C Dir
irgendwie einen Einstieg dazu verschafft.
GreetinX
Steffen
--
"Ich wollte das exotische Vietnam sehen, das Kleinod von Südostasien.
Ich hab mir gedacht, ich treff interessante und anregende Menschen
aus einer alten Kultur - und kill sie."
-- Full Metal Jacket