Opis funkcji swap_amount

Zadaniem funkcji swap_amount jest ustalenie ile ramek należących do danego zarządcy pamięci ma zostać poddanych wymianie. Algorytm wyliczający tę liczbę jest bardzo prosty. Wystarczy się przyjrzeć ciału funkckji i wszystko będzie jasne:

#define SWAP_MM_SHIFT	4
#define SWAP_SHIFT	5
#define SWAP_MIN	8

static inline int swap_amount(struct mm_struct *mm) {
/*mm->rss - liczba ramek posiadanych przez zarządcę pamięci.*/
        int nr = mm->rss >> SWAP_SHIFT; 

        if (nr < SWAP_MIN) {
                nr = SWAP_MIN;
                if (nr > mm->rss) 
                        nr = mm->rss;  
        }
        return nr;
}


Tomasz Szymko 27 listopada 2001