tekst, zap, Analiza
[ Pobierz całość w formacie PDF ]
Wiecie juz jak definiowac zmienne roznych typow wiecie jak sa przechowywane w pamieci komputera czyli macie pelne podstawy ku temu aby troche blizej poznac bardziej zaawansowane mechanizmy pozwalajace na swiadome zarzadzanie zawartoscia pamieci komputera przez programisteLecz najpierw kilka slow wyjasnienia po co jest to Wam potrzebne Dostepem programow do pamieci steruje system operacyjny Tutaj zastosujemy pewne uproszczenie w momencie uruchomienia programu system operacyjny przydziela pamiec proces przydzielania pamieci nazywac bedziemy alokacjaJezeli pamieci na te zmienne nam zabraknie - program po prostu sie nie uruchomi Pamiec przydzielona na zmienne statyczne na poczatku dzialania programu pozostaje przez nie zajeta az do konca jego pracy - i nic nie mozemy z tym zrobic Naklada to na programiste powazne ograniczenia - juz w momencie pisania programu musimy przewidziec maksymalne zapotrzebowanie na pamiecZalozmy wiec na przyklad ze w tablicy umieszczamy rekordy zawierajace dane osobowe naszych znajomych Poniewaz nie mamy zadnej mozliwosci zmiany rozmiaru tablicy statycznej podczas pracy programu juz w trakcie jego tworzenia musimy wiedziec ilu maksymalnie znajomych miec mozemy Oczywicie to ograniczenie mozna obejsc podajac za kazdym razem absurdalnie wysokie wartosci tak aby na przyklad tablica zawierala milion elementow System operacyjny musi nam wtedy przydzielic pamiec na milion rekordow co przy zalozeniu ze jeden z nich zajmuje jak chcielibysmy pamietac zdjecie - chocby male 10 kB daje nam 10 000 000 kB czyli prawie 10 GB Jesli macie komputer o takiej pamieci to mozecie probowacTo moze nie byl najmadrzejszy przyklad ale pamietajmy ze nie tylko nasz program pracuje na komputerze Tworzenie zmiennych statycznych o maksymalnym mozliwym rozmiarze nie jest wiec zadnym rozwiazaniem - jest nieeleganckie nieefektywne i samolubne - odbieramy w ten sposob przestrzen zyciowa dla innych rownolegle pracujacych programowxyz
[ Pobierz całość w formacie PDF ]