Бой в памяти


Бой в памяти (англ. Core War) — разновидность компьютерной игры «Дарвин», разработанная Александром К. Дьюдни. Помогал разрабатывать игру Дэвид Джонс, студент кафедры информатики университета Западной Онтарио, где преподавал Дьюдни.

В данной игре игроки разрабатывают компьютерные программы на специальном языке программирования, похожем на ассемблер — Redcode. Программы размещаются в циклически замкнутом участке памяти (core), состоящей из 8000 ячеек и зацикленной в кольцо. Каждая команда занимает одну ячейку. Redcode-программы работают под управлением MARS (англ. Memory Array Redcode Simulator — Симулятор Массива Памяти Redcode). Программы загружаются по случайным адресам в памяти.

Каждая программа (начиная со стандарта ICWS'1988) может иметь несколько активных потоков, причём поток может порождать другие потоки с помощью инструкции SPL. Потоки, принадлежащие одной программе, выполняются по очереди, поэтому скорость их выполнения обратно пропорциональна количеству потоков. Поток завершается, если пытается выполнить некорректную инструкцию. Программа, все потоки которой завершились, считается проигравшей.

Статьи, посвящённые игре, публиковались в журнале Scientific American в 19841987, в колонке Computer Recreations (Занимательный компьютер). Игра вызвала значительный интерес у читателей, и впоследствии было основано международное общество International Core War Society (ICWS) со штаб-квартирой в США и отделениями во многих странах мира, включая СССР.

ICWS проводила ежегодные международные турниры, начиная с 1986 года. Соревнования проводились по круговой системе. Первые два турнира были по сути чемпионатами Северной Америки. Турнир же 1988 года, проводившийся по новому стандарту игры ICWS'88, привлёк многочисленных участников из разных стран и стал де-факто первым чемпионатом мира. Победителями стали Евгений Лилитко (СССР) – 1-е место, Luca Crosara (Италия) – 2-е место и третьим стал Douglas McDaniels (США)[1]. Ещё один советский участник – Александр Бурцев занял пятое место. В настоящее время соревнования проводятся в основном по системе "King of the hill".

Разработать «Бой в памяти» Дьюдни побудила история о двух противоборствующих программах CREEPER и REAPER (см. компьютерный вирус). Обстоятельства разработки CREEPER/REAPER дошли до Дьюдни в несколько искажённом виде, так, по словам Р. Томлинсона, ни заражения ARPANet, ни «поединка» между двумя программами в действительности не было.