Anzeige:
Ergebnis 1 bis 3 von 3

Thema: malloc/calloc/ralloc, granularität

  1. #1
    Registrierter Benutzer
    Registriert seit
    05.04.2003
    Ort
    STUTTGART
    Beiträge
    27

    malloc/calloc/ralloc, granularität

    ist es auf einem 64BitSystem überhaupt sinnvoll, Speicher nicht in Vielfachen von 8Byte
    anzufordern? Wird also der Platz bis zu nächsten 8ByteGrenze ggf. von weiteren
    malloc/calloc Aufrufen genutz?

  2. #2
    Registrierter Benutzer
    Registriert seit
    11.09.2003
    Beiträge
    100
    Soweit ich 64bit verstanden habe, heißt 64bit nicht, dass man nur noch in 64bit-Blöcken adressieren kann. Ganz im Gegenteil: die Adressbreite ist 64bit, d.h. man kann nun 2^64 Bytes (einzeln) adressieren.

  3. #3
    Registrierter Benutzer Avatar von jeebee
    Registriert seit
    01.01.2005
    Ort
    Bern || Zürich
    Beiträge
    540
    Grundsätzlich kommt es drauf an, auf welchem 64bit System du dich befindest.

    Es kommt auch drauf an, was du mit malloc allozierst, z.B. werden struct's generell auf ein Vielfaches der Grösse des grössten Elements vergrössert (z.B. die Grösse eines structs, welches als grösstes Element einen double enthält, wird auf das nächste Vielfache von sizeof(double) vergrössert).

    Zusätzlich kann es auch sein, dass die Implementation von malloc und co. auch noch ein paar zusätzliche Bytes zur Verwaltung der einzelnen allozierten Blöcke verwendet und daher (das ist nur ein Beispiel) intern immer mindestens 16 Bytes alloziert.

    HTH
    -- jeebee
    my very own 128 bit integer
    C4 D3 B8 A8 9E A0 C6 EC 7D EC A8 15 28 D1 92 58
    more information

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •