Система защиты от несанкционированного копирования — страница 10

  • Просмотров 6402
  • Скачиваний 198
  • Размер файла 150
    Кб

                                          3.      3.1.   Языки программирования нельзя сравнивать между собой вне связи с решаемыми задачами. Ведь каждый язык изначально проектировался для максимально эффективного решения какого-то своего класса задач. Язык Фортран (Fortran - FORmula TRANslator – транслятор формул) – для численных

вычислений, язык Лисп (Lisp –LISt Processing – обработка списков) – для решения задач искусственного интеллекта, Пролог (Prolog – PRO LOGic) – для программирования в терминах логики и т.д. Таким образом ещё до написания программы встаёт вопрос выбора языка программирования, который бы представлял наиболее подходящие средства для решения поставленной задачи. Постановка задачи должна быть ясна из вышесказанного. Ниже автор постарался

сформулировать основные требования к программной реализации и на основе как постановки задачи, так и этих требований выбрать язык программирования. Требования к программной реализации: -          -          Для реализации программы автором выбран язык программирования ассемблер (Assembler). Подчеркнём те особенности языка, которые и определили этот выбор: 1)       Basic), Паскаль

(Pascal), Си (С). Следовательно язык Ассемблера максимально приближен к аппаратным средствам компьютера и его «натуральным» возможностям, что позволяет организовать непосредственное управление аппаратурой. 2)       3.2.   Программа состоит из трёх модулей: 1)       Frozen - подготавливает ключевую дискету и записывает на неё инсталлятор, в который включает защищаемую программу. Frozen Install Ind Task Install Ind Task На

дискету 2)       Install, который проверяет дискету и, если она является ключевой, устанавливает на винчестер пользовательскую программу (Task), защищённую модулем Ind. Install Ind Task С дискеты Ind Task 3)       Ind, который при первом запуске определяет характеристики среды и сохраняет их, а при всех последующих запусках сравнивает текущие характеристики среды с определёнными при первом запуске. Если характеристики не

изменились, то модуль расшифровывает и запускает Task. После отработки Task удаляется с винчестера. Ind Task Task Рассмотрим эти модули поподробнее. 3.2.1.      Frozen. Модуль Frozen подготавливает ключевую дискету следующим образом. На дискете форматируется дорожка с номером 80 (нумерация дорожек начинается с нуля). Так как DOSом на дискетах объёмом 1.44 мегабайта используются только дорожки с номерами от 0 до 79, это действие никак не