Stack?!? Was ist das?



  • Hallo.

    Ich lese häufig hier im Forum vom sogenannten "Stack". Laut Wikipedia handelt es sich dabei um einen von der CPU reservierten Speicher, um Adressen zu Unterprogrammen etc. abzulegen. Dazu ein paar Fragen:

    -Wo "ist" dieser Stack? Im RAM? Im Cache der CPU?

    -Laut Wikipedia werden lokale Variablen einer Funktion auch im Stack gespeichert. Wie sieht das dann mit Klassen etc. aus? Die sind an sich ja Schablonen und bilden im Speicher auch nur eine Reihe von Unterfunktionen ab. Geht einem bei Verwendung von nicht-mit-new-erzeugten-Instanzen nicht schnell der Stack leer? (new-erstellte Klassen werden doch im Heap gespeichert oder?)

    -Wie groß ist dieser "CPU-Stack" eigentlich? In nem Thread bissel weiter unten hier steht ja, dass mit Rekursion der Stack zulaufen kann, also kann er offensichtlich nicht wirklich riesig sein.

    mfg stapler




Log in to reply