Используйте некоторые идеи от Обнаружение Плагиата алгоритмы.
Моя идея:
для создания сопоставимой "подписи" для каждого ROM, который варьируется немного, поскольку небольшие части изменяют, производят что-то как график частотности слова, но вместо того, чтобы записать частоты слов, Вы могли хешировать очень короткие разделы ROM и записать частоты значений хэш-функции.
только хешируют один раздел, тогда следующий раздел, начинающий с конца первого раздела, но вместо этого используют раздвижное окно, хешируя раздел, начинающий с байта 1, затем хешируют тот же раздел размера, начинающий с байта 2, затем с байта 3, и т.д. Это инвертирует эффект переменной измеренные переменные части в Вашем ROM.
, Если Вы использовали простую хеш-функцию как xor каждого байта на 8 битов, так, чтобы можно было легко вычислить хеш следующего положения окна xor текущий хеш с исходящими 8 битами и xor входящие 8 битов. Другая альтернативная хеш-функция может просто быть должна использовать длину слова системы команд. Это может быть достаточно для создания статических шаблонов для кодов, представляющих машинные команды. Важная вещь состоит в том, что Вы захотите хеш-функцию, которая приводит к общим коротким последовательностям в системе команд, приводящей к тем же значениям хэш-функции.
Вы, вероятно, хотели бы меньше значений хэш-функции с верхними частотами каждого, но не заходите слишком далеко, или Ваша диаграмма будет слишком плоской, приводя к трудности, сравнивающей их. Аналогично не идите слишком широкие, или у Вас будет много очень маленьких частот, делая сравнение трудно снова.
Хранилище этот график на ROM. Сравните графики частоты для двух различных ROMs путем вычисления суммы квадратов различия в частотах для каждого значения хэш-функции. Если это суммирует для обнуления тогда ROMs, то вероятно, будут идентичны. Еще дальше от нуля это, менее подобное, которым будет ROMs.
Да, возможно, вы можете использовать грузовой плагин для развертывания на сервере. См. Несколько примеров на странице Приступая к работе .
Если ваши скрипты не поддерживаются плагином, возможно, вы могли бы опубликовать дополнительную информацию, чтобы узнать, какие варианты есть для их решения.
Если вы говорите об Amazon Elastic Computing Cloud (EC2), возможно, вам стоит попробовать cloudtools и его плагин maven (см. ] объявление в блоге Криса Ричардсона). Но никогда не проверял себя.
+1 для плагина Cargo, я не знал об этом, но мог использовать его сам.
В случае, если он поможет вам или кому-то еще, вы можете запустить любой скрипт при запуске экземпляра . В этом блоге описано, как это сделать.