Pinon ylivuotovirhe
Siirry navigaatioon
Siirry hakuun
Pinon ylivuotovirhe (engl. stack overflow) on virhetilanne tietokoneohjelmassa, jolloin ajonaikaiselle pinolle varattu tila ei riitä (säie käyttää kaiken sille varatun tilan).[1][2] Virhe johtaa tyypillisesti ohjelman kaatumiseen.[3] Ajonaikaiselle pinolle varattua tilaa voi tietyissä tapauksissa kasvattaa, mutta yleensä suositellaan muuttamaan ohjelmaa.[3]
Tyypillinen syy on ääretön rekursio.[1] Toinen syy on liian suuri pinosta varattu taulukko[3] tai sen ohi kirjoittaminen. Haittaohjelmat voivat pyrkiä hyökkäykseen pinon kautta esimerkiksi ylikirjoittamalla paluuosoitteen.[4]
Katso myös
[muokkaa | muokkaa wikitekstiä]Lähteet
[muokkaa | muokkaa wikitekstiä]- ↑ a b Debugging a Stack Overflow learn.microsoft.com. 15.12.2021. Viitattu 8.10.2022. (englanniksi)
- ↑ The StackOverflowError in Java baeldung.com. 5.9.2022. Viitattu 8.10.2022. (englanniksi)
- ↑ a b c 15.1.6 Stack Overflow gcc.gnu.org. Viitattu 8.10.2022. (englanniksi)
- ↑ CWE-121: Stack-based Buffer Overflow cwe.mitre.org. Viitattu 8.10.2022. (englanniksi)
Aiheesta muualla
[muokkaa | muokkaa wikitekstiä]- Memory Management (PDF) (englanniksi)