next up previous contents
Next: System bliźniaków Up: Alokator strefowy Previous: Alokator strefowy   Spis rzeczy

Strefy

Różne zakresy fizycznych stron mogą mieć różne właściwości z punktu widzenia jądra. Np. ,,DMA'', obszar pamięci, który pozwala zapisywać i odczytywać dane bezpośrednio do pamięci RAM bez udziału procesora działa tylko dla fizycznych adresów mniejszych niż 16MB. Dalej, niektóre systemy mogą mieć więcej fizycznej pamięci niż może być zaadresowane między 3GB, a 4GB. Te ramki nie są bezpośrednio dostępne dla jądra i muszą być potraktowane w inny sposób (mogą być przeznaczone na strony użytkowników i pamięć podręczną - jest to tzw. ,,HIGHMEM'', strefa, w której znajduje się pamięć fizyczna powyżej 896MB). Alokator strefowy obsługuje takie różnice dzieląc pamięć na kilka stref i traktując każdą z nich jak osobną jednostkę do allokacji. Każde żądanie przydzielenia strony jest związane z listą stref, w których można ją allokować. Lista jest uporządkowana od najbardziej do najmniej preferowanej strefy. Np. przy żądaniu przydzielenia strony dla użytkownika trzeba sprawdzić miejsce w ,,zwykłej'' strefie, później w ,,HIGHMEM'' i jeżeli to się nie powiedzie to w strefie ,,DMA''. Prośba o przydział strony ,,DMA'' może być spełniona tylko w strefie ,,DMA'' i tylko ona znajdzie się na liście możliwych stref.

Każda fizyczna ramka w strefie ma swoją strukturę z opisem jej stanu.


next up previous contents
Next: System bliźniaków Up: Alokator strefowy Previous: Alokator strefowy   Spis rzeczy
Jarek Babel 2002-12-10