W systemie operacyjnym Windows 7, gdy aktywny proces znajduje się w pamięci, a systemowi brakuje pamięci do alokacji, czy zaprzecza tworzeniu nowych procesów lub używa pliku wymiany?
W systemie operacyjnym Windows 7, gdy aktywny proces znajduje się w pamięci, a systemowi brakuje pamięci do alokacji, czy zaprzecza tworzeniu nowych procesów lub używa pliku wymiany?
Odpowiedzi:
To pytanie jest zbyt źle sformułowane, aby odpowiedzieć tak, jak zostało napisane. Najbliższa bezpośredniej odpowiedzi, jaką mogę ci dać, jest następująca: Jeśli w systemie zabrakło pamięci przydzielić , to musi już obiecać dostępne miejsce w pliku wymiany lub nie skończyłoby się. Myślę, że twoje pytanie pochodzi z błędnego przekonania, że system przydziela fizyczny pamięć bezpośrednio do procesów. To nie tak działa nowoczesne zarządzanie pamięcią.
Zazwyczaj system przydziela pamięć wspierana do procesów. Jest to całkowita pula pamięci fizycznej plus miejsce na plik stronicowania. Kiedy obiecuje całą pamięć, którą posiada, bez względu na to, czy jest faktycznie używana, system musi przestać składać obietnice. To tak samo, jak musisz zaprzestać pisania czeków, nawet jeśli na koncie są jeszcze pieniądze.
Plik wymiany jest jak linia kredytowa, którą możesz wykorzystać, aby móc kontynuować pisanie czeków. W większości przypadków plik wymiany nie jest faktycznie używany, zapewnia jedynie siatkę bezpieczeństwa, która pozwala systemowi na pomyślne przydzielenie pamięci wirtualnej.
Więcej szczegółów znajdziesz na stronie ta odpowiedź do podobnego pytania.