Atminties nutekėjimas

Šiaip čia rašliava iš serijos nežinau ką parašyti. Kartais tarp programuotojų ar šiaip kompiuterastų galima išgirsti terminą “memory leak” arba atminties nutekėjimas. Vos ne “smengenų nutekėjimas”. Kas tai? Tai programos naudojamos atminties nekontroliuojamas didėjimas. Kai rašoma programa, kartais reikia užsirezervuoti kokį atminties gabaliuką iš OS kokiam nors buferiui ar paveikslėliui. Kai ta atmintis nebereikalinga, specialios komandos atiduoda tą atmintį operacinei sistemai. Tačiau kartais padaroma kokia nors klaidelę ir keli baitai nebegražinami. Paprastai, programa ilgai nedirba ir ta nutekėjusi užgrobta atmintis atiduodama atgal kai išjungiama programa. Tačiau kai kurios programos veikia ilgai. O štai serveriuose, kai kurie procesai veikia “amžinai”.

Viena tokia neteisinga programa yra Bittorent klientas. Va kokį rezultatą pamačiau po kelių dienų veikimo…

mleak

Čia gal kiek vaizdžiau atrodo… vienok 1.3 Gigabaito (!) RAM vienai programulkai kiek daugoką?

mleak

5 replies on “Atminties nutekėjimas”

  1. Ir kas gi dar siais laikais naudojas tuo bittorrent. Gi yra daug mazesnis bei paprastesnis µtorrent, jis man ne 10MB ram nejama

  2. Nugi čia ne torrento reklama o straipsnis apie atminties nutekėjimą. O apie 10Mb- koks skirtumas tau tie 10Mb kai pas tave kompiuteryje vistiek windozė ima 400Mb vietoj galimu 75. 🙂

  3. aha tiksliai apie 400MB pas mane windows ir ima 🙂 o del atminties nutekejimo tai ir man paciam nekarta yra taip buve su visokiom programom. Dazniausiai tokie dalykai pasitaiko su word, tik beda dar buna jog daznai po ilgo naudojimo ir nuluzta jis atminties prisiemes 🙂

  4. Win.sp2. Intel core2duo 6600. 13 procesų, 112…125 MB. atminties sąnaudos ir 0…1% proco apkrova. 🙂 mTorrent max 50 MB ir 3% procesoriaus. Tai, kada siuntimas 450…470 MB/s ir 500 susijungimų. Nežinau, kaip Windows-ai pas jus gali vartoti tiek daug resursų?!.. 90% kompiutrinių gedimų r “tarmozinimų” dėl vartotojo kaltės. Juk galima Windozę davesti vos ne iki doosinio lygio, pagal resursų sąnaudas, o veiks šiuolaikiškai. 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *