malloc nutzt nur zwei Systemaufrufe für 1000 Aufrufe
Die Bibliothek glibc führt Buchhaltung im Hintergrund, sodass 1000 kleine Speicheranfragen nur zwei brk-Systemaufrufe benötigen. Ein leerer Aufruf dauert laut Messung 575 ns.
- Bereich
- Tools und Releases
- Was gemacht wurde
- Die Entwicklung untersucht, wie das System malloc Speicherblöcke verwaltet, indem es die Anzahl der Kernel-Aufrufe (syscalls) misst, die für die Zuteilung erforderlich sind. Durch das Ausführen einer Schleife, die 1000 kleine Speicherblöcke anfordert, wurde festgestellt, dass nur zwei Aufrufe an den Kernel notwendig sind, obwohl jede einzelne Anfrage theoretisch einen eigenen Aufruf erfordern würde.
- Warum es wichtig ist
- Dies ist relevant, weil Kernel-Aufrufe teuer sind (gemessen bei 575 Nanosekunden für einen leeren Aufruf) und die Optimierung der Speicherverwaltung die Leistung von Programmen verbessern kann.
#malloc#kernel#system call#glibc#memory management



