/OS-Life

Task #5 for OS course #2.

Primary LanguageJava

OS-Life

Задание №5 (2 семестр, курс ОС).

Требования

Java 1.8

Описание

Игра жизнь. Поле тороидальное, размеры по умолчанию 30х20.

Клиент и сервер запускаются отдельно:

java -jar ServerLife.jar [-t] [w] [h] [filename]
java -jar ClientLife.jar

Параметр -t для сервера позволяет принимать соединения по телнету. К сожалению, при этом не принимаются соединения от ClientLife.jar. Преимущество клиента перед телнетом в том, что количество передаваемой по сети информации в разы меньше.

Также в параметрах можно указать желаемую высоту, ширину и имя файла, в котором будет храниться состояние.

Файл при работе программы хранится в памяти. Для синхронизации использован механизм выставления lockа на файл.

Расчёт поля запускается в отдельном процессе (StateCalc.java, Server.java:30).