Als «stack» getaggte Fragen

3
Wie funktioniert die Stapelzuweisung unter Linux?
Reserviert das Betriebssystem die festgelegte Menge des gültigen virtuellen Speicherplatzes für den Stapel oder etwas anderes? Kann ich einen Stapelüberlauf nur mit großen lokalen Variablen erzeugen? Ich habe ein kleines CProgramm geschrieben, um meine Vermutung zu testen. Es läuft auf X86-64 CentOS 6.5. #include <string.h> #include <stdio.h> int main() { …

1
Wie kann ich den Speicherverbrauch pro Prozess / pro Thread überwachen (unterteilt in Heap, Stack, Daten, Code)?
Bevor ich hineinspringe und meinen eigenen Code schreibe, möchte ich herausfinden, ob es eine GNU / Linux-Software gibt, die etwas Ähnliches wie QNXshowmem ausgeben kann . Für jeden Thread jedes laufenden Prozesses möchte ich, dass der Speicherverbrauch in die folgenden Kategorien unterteilt wird: Process listing (Total, Code, Data, Heap, Stack, …
11 linux  memory  stack 

2
Was setzt fs: [0x28] (Stapelkanarienvogel)?
Aus diesem Beitrag geht hervor, dass FS:[0x28]es sich um einen Stapelkanarienvogel handelt. Ich generiere denselben Code mit GCC für diese Funktion. void foo () { char a[500] = {}; printf("%s", a); } Insbesondere bekomme ich diese Baugruppe. 0x000006b5 64488b042528. mov rax, qword fs:[0x28] ; [0x28:8]=0x1978 ; '(' ; "x\x19" 0x000006be …
11 linux  security  gcc  stack 


2
Wie bestimmt der ELF-Loader die anfängliche Stapelgröße?
Ich studiere die ELF-Spezifikation ( http://www.skyfree.org/linux/references/ELF_Format.pdf ) und ein Punkt, der mir über den Programmladeprozess nicht klar ist, ist, wie und was der Stapel initialisiert wird Die anfängliche Seitengröße ist. Hier ist der Test (unter Ubuntu x86-64): $ cat test.s .text .global _start _start: mov $0x3c,%eax mov $0,%edi syscall $ …
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.