Самый простой способ выбрать максимально разные цвета - это использовать значения HSL вместо RGB, а затем манипулировать оттенком, так как он имеет значение от 0 до 360 и оборачивается (0 - красный, а значит - 360);
Если вам нужно 10 различимых цветов, вы можете разделить 360 на 10, а затем выбрать отдельный цвет, умножив значение на индекс (на основе нуля). Вот пример функции, которая позволяет выбрать цвет из:
function selectColor(colorNum, colors){
if (colors < 1) colors = 1; // defaults to one color - avoid divide by zero
return "hsl(" + (colorNum * (360 / colors) % 360) + ",100%,50%)";
}
Таким образом, вы можете рандомизировать выбор цвета путем рандомизации индекса, но цвета всегда будут в одной палитре.
Это выберет случайный цвет из палитры 10:
var color = selectColor(Math.floor(Math.random() * 10), 10);
, и так будет:
var color = selectColor(Math.floor(Math.random() * 999), 10);
или вы можете выбрать определенный цвет из палитры, как 9-й цвет (индекс 8) из палитры 13:
var color = selectColor(8, 13);
Вот скрипка, с которой можно поиграть: http://jsfiddle.net/2UE2B/
Файлы, отображаемые в память, управляются измененным модулем записи страниц в ядре - они сбрасываются всякий раз, когда память, которая поддерживает страницу, должна быть повторно использована (так что это может произойти из-за нехватки памяти) .
Система также отслеживает количество грязных страниц и записывает их после достижения порогового значения.
Вы можете найти дополнительную информацию в этой статье об изменениях в управлении памятью Windows для Windows Vista - он не дает прямого ответа на ваш вопрос о том, как диспетчер памяти обрабатывает измененные страницы, но вы можете вывести некоторые подробности на основе информации в статье.
Я предлагаю вам получить копию
Microsoft® Windows® Internals Четвертое издание: Microsoft Windows Server 2003, Windows XP и Windows 2000
В кибер-облаке плавают файлы PDF.
Это книга, написанная группой "sysinternals", которые за эти годы написали несколько очень хороших утилит для Windows .
http://www.microsoft.com/technet/sysinternals
Вам необходимо прочитать главы, посвященные
Управление памятью
Управление хранилищем
Диспетчер кэша
Файловые системы
] Они напрямую не касаются вашей проблемы, но если вам удастся прочитать, переварить и усвоить очень технические абзацы, вы сможете решить это самостоятельно. Однако, если вы можете предсказать, почему Windows делает то, что она делает, «Вы лучше, чем большинство».
Счастливый мозг застывает, читая это.
Я предлагаю прочитать Microsoft Windows Internals Марка Руссиновича и Дэвида Соломона, в пятом издании также с Алексом Ионеску.
Внутренняя работа является деталью реализации и может изменяться. Они нигде не задокументированы, потому что Microsoft не хочет, чтобы вы полагались на детали.
Я должен спросить: а почему вас это волнует? Если у вас есть жесткие требования к работе в реальном времени, Windows может не подойти вам ...