Re: Czyszczenie ram

Autor: Radosław Sokół <Radoslaw.Sokol_at_grush.one.pl>
Data: Tue, 13 Nov 2012 08:14:00 +0100
Message-ID: <k7srvo$96h$1@node2.news.atman.pl>
Content-Type: text/plain; charset=UTF-8; format=flowed

W dniu 12.11.2012 20:51, marfi pisze:
> Zgadza się, miałem problemy z programami (dokładnie to jeden program działający w dwóch instancjach), które muszą działać non stop od aktualizacji do aktualizaci i używają ok. 1GB RAM.
> Jeżeli w czasie pracy dokonywały reallokacji w miarę potrzeb prędzej czy później występował błąd przydzielania pamięci i była katastrofa.
> Rozwiązaniem okazało się alokowanie pamięci na zapas po restarcie systemu w ilosci maksymalnie możliwej do zrealizowania.

Proszę, wyjaśnij o co chodzi bo piszesz albo zagmatwanie,
albo niezgodnie z prawdÄ… :)

Każdy proces ma *własną*, czystą przestrzeń adresową, więc
fragmentacja pamięci fizycznej nie ma z punktu widzenia pro-
cesu *żadnego* znaczenia. Nie liczy się zatem czas pracy sy-
stemu operacyjnego, ale samego *procesu* ewentualnie.

Jestem zatem w stanie uwierzyć, że wewnętrzna fragmentacja
sterty w ramach procesu powodowała jakieś problemy, ale nie
rozumiem, jak miałoby w tym pomóc "alokowanie pamięci na za-
pas po restarcie systemu" -- alokowanie przez proces po uru-
chomieniu samego procesu?

W każdym razie świadczy to o błędnie napisanym programie, bo
jeżeli faktycznie był to problem, to należało zmienić struk-
tury danych lub wprowadzić jakąś segmentację. A w ostatecz-
ności -- przejść na system i oprogramowanie 64-bitowe, bo
tam kwestia fragmentacji sterty w zasadzie jeszcze przez
wiele lat nie ma prawa wystąpić... :)

-- 
|""""""""""""""""""""""""""""""""""""""""""""""""""""""""""|
| Radosław Sokół  |  http://www.grush.one.pl/              |
|                 |                                        |
\........................................................../
Received on Tue 13 Nov 2012 - 08:15:02 MET

To archiwum zosta³o wygenerowane przez hypermail 2.2.0 : Tue 13 Nov 2012 - 08:42:01 MET