Co się wydarzy jeśli dostarczona pamięć przydzielona programowi przez system operacyjny zostanie przekroczona?

Odpowiedź :

Program zażąda zwiększonej ilości pamięci; jeśli system nie będzie mógł jej przydzielić, to program się zawiesi

Odpowiedź

„Co się wydarzy jeśli dostarczona pamięć przydzielona programowi przez system operacyjny zostanie przekroczona?”

   Nie wiadomo!

Jest kilka możliwości.

  • Program nadpisze fragment pamięci używany przez system operacyjny, a wtedy system może przestać działać lub będzie działał źle – nie wiadomo! Jedna z takich sytuacji to przepełnienie bufora (ang. buffer overflow) i jest metodą ataków na systemy komputerowe.
  • Program nadpisze fragment pamięci używany przez system operacyjny, a potem system też coś napisze do tego samego fragmentu pamięci: 1. program będzie dalej poprawnie działał, 2. program będzie działał niepoprawnie, 3. program przestanie dzialać.
  • Program wprawdzie nadpisze fragment pamięci używany przez system operacyjny, ale system akurat tego fragmentu nie potrzebuje i system operacyjny może kontynuować normalną pracę.
  • Program nadpisze fragment pamięci, który nie jest używany przez system operacyjny i inne aplikacje. Jednak jeżeli nie jest on w ogóle używany, to nie będzie żadnych zakłóceń w działaniu systemu operacyjnego i innych programów.
  • Program nadpisze fragment pamięci, który nie jest używany przez system operacyjny, ale jest używany przez inne programy. I znowu są dwie możliwości: niepoprawne działenie lub porwane dzialnie tekigo programu.

Wyjaśnienie

Istniały i istnieją systemy operacyjne w których takie zdarzenie nie jest możliwe.