INTERNET, NOWE TECHNOLOGIE, WEBDEVELOPMENT, BADANIE INTERNETU
|
18 GRUDNIA 2013 / TECHNOLOGIE / 1 KOMENTARZ WOJNY RDZENIOWE |
|||||||
Wojny Rdzeniowe (w oryginale Core Wars) powstały w 1983 roku na uniwersytecie Western Ontario w Kanadzie. Grę stworzył amerykański matematyk dr Dewdney w formie narzędzia naukowego dla studentów. Cel gry był typowo edukacyjny - zrozumienie zasady działania programów w pamięci komputera. Prosty i zarazem genialny pomysł zamienił się w coś znacznie większego, gdy został opisany przez magazyn "Scientific American". Od tego momentu Wojny Rdzeniowe zyskały nieśmiertelność, stając się popularne na całym świecie.
Zasady gry są proste i zrozumiałe dla wszystkich. W wydzielonym obszarze pamięci komputera walczą ze sobą dwa programy komputerowe. Pojedynek kończy "śmierć" jednego z zawodników lub remis. Walkę można śledzić na ekranie monitora w formie graficznej, gdzie każdy piksel to jedna komórka pamięci. W zależności od tego gdzie znajdują się zawodnicy i co robią, ekran zapełnia się punktami. Widać przemieszczające się ciągi bajtów należące do programów, a także miejsca, w które zawodnicy uderzają, próbując zatrzymać lub zdezintegrować program przeciwnika. Programy tworzone są w specjalnym języku zwanym Redcode. Język zbliżony jest do asemblera i składa się z dziesięciu instrukcji. Każda z nich służy do specyficznych operacji na pamięci komputera, między innymi do odczytywania, zapisywania i usuwania zawartości wskazanych komórek pamięci, są również instrukcje warunkowe. Gdy programy są gotowe, rozpoczyna się walka, którą nadzoruje arbiter w postaci programu o nazwie MARS (Memory Array Redcode Simulator). Arbiter umieszcza programy w losowych miejscach pamięci, a następnie wykonuje na przemian po jednej instrukcji każdego z nich. W tym miejscu zaczyna się najciekawsze. O losach pojedynku decyduje inwencja twórców, którzy pisząc swoje programy muszą stanąć przed podstawowymi dylematami związanymi z programowaniem. Najprostszy zawodnik będzie bajt po bajcie zerował komórki pamięci w nadziei, że w końcu trafi na przeciwnika i zniszczy jego kod. Taki program składa się zaledwie z kilku instrukcji, dzięki czemu całość będzie wykonywana częściej niż program o dłuższym kodzie. Jego zaletą jest szybkość wykonywania, która często może zadecydować o zwycięstwie. Dłuższy program może poszukiwać przeciwnika przy pomocy bardziej złożonego algorytmu i jednocześnie zabezpieczać się przed atakiem. Jednym z widowiskowych sposobów na obronę i podniesienie skuteczności jest multiplikacja. Program może rozbić się na kilka mniejszych, które zaczną działać na własną rękę. Można także przejąć fragment programu przeciwnika lub zabezpieczyć się, sprawdzając integralność własnego kodu. ![]() Pojedynek między programami Dwarf Scout i Little Factory Grę pierwotnie stworzono dla komputerów Apple, ale dziś jest ona dostępna dla wszystkich platform, w tym dla peceta. Organizowane są turnieje, różniące się często składnią języka, która z biegiem lat doczekała się drobnych usprawnień. Gra wykorzystywana jest także jako pomoc naukowa na uczelniach, niestety, głównie amerykańskich i zachodnich. Nie słyszałem, aby jakikolwiek polski uniwersytet wykorzystywał ją w toku edukacji. Wojny Rdzeniowe oprócz walorów edukacyjnych mają również zastosowanie w badaniach naukowych. Idea gry symulacyjnej, w której posiadające cechy oraz niezależność programy oddziałują między sobą i otoczeniem, to dziś podstawa badań komputerowych m.in. w dziedzinie medycyny. Z drugiej strony Wojny Rdzeniowe uważane są za protoplastów wirusów komputerowych. Najważniejsze, że ten prosty i genialny pomysł przetrwał do dzisiaj. Sławomir Wilk Artykuł opublikowany został w serwisie Dziennik Internautów www.di24.pl.
Proste pomysły są zawsze najlepsze i zasługują na uznanie. I tutaj się to potwierdza.
Dodaj komentarz: |