Кіріспе

Компьютерлік жадының тиімділігін арттыру техникасы. Компьютерлік ғылымда кэшті бояу (немесе бетті бояу) – процессордың кэшінде сақталған беттердің жалпы санын барынша арттыру мақсатында, процессор кэшінің тұрғысынан тікелей жатқан бос беттерді бөлу әрекеті. Кэшті бояу көбінесе операциялық жүйедегі төменгі деңгейдегі динамикалық жадты бөлу кодымен виртуалды жадты физикалық жадқа бейімдеу кезінде қолданылады. Кэшті бояу жоқ виртуалды жад жүйесі кэштің жұмысына қатысты белгілі бір нәтижеге келуде нашар, себебі бір бағдарламадан екінші бағдарламаға беттерді бөлудегі айырмашылықтар бағдарламаның өнімділігінде елеулі өзгерістерге алып келуі мүмкін.

Операциялардың егжей-тегжейі

Физикалық индекстелген CPU кэш-кеші, көршілес физикалық жад блоктарындағы адрестер кэш-кеште әртүрлі орындарда ("кэш-жолдар") болады деп жобаланған, бірақ виртуалды жадқа келгенде бұл жағдай осылай болмайды; виртуалды түрде көршілес, бірақ физикалық түрде көршілес емес жад блоктары бөлінгенде, олар кэш-кеште бірдей орынды алуы мүмкін. "Түсті таңдау" – жадты басқару бағдарламалық құралында іске асырылатын әдіс, ол көршілес беттермен қақтығыспайтын беттерді таңдау арқылы осы мәселені шешеді. Физикалық жад беттері "түстеледі", сондықтан әртүрлі "түстерге" ие беттер CPU кэш жадында әртүрлі орындарда болады. Процестер үшін виртуалды жадтағы тізбектелген беттерді бөліп беру кезінде, ядро әртүрлі "түстерге" ие беттерді жинап, оларды виртуалды жадқа бейімдейді. Осылайша, виртуалды жадтағы тізбектелген беттер бір кэш-жолы үшін бәсекелес болмайды.

Қолданылу

Бұл код виртуалды жадты бөлуге арналған ішкі жүйенің күрделілігін арттырады, бірақ нәтижеге жетуге арналған күш-жігердің өте құнды екенін көрсетеді. Жады беттерін түрлендіру (Page coloring) виртуалды жадты кэштің өнімділігі тұрғысынан физикалық жадтай болжамды етеді. Жады беттерін түрлендіру Solaris, FreeBSD және Windows NT сияқты операциялық жүйелерде қолданылады.