СЦБИСТ - железнодорожный форум, блоги, фотогалерея, социальная сеть СЦБИСТ - железнодорожный форум, блоги, фотогалерея, социальная сеть
Показать сообщение отдельно
Старый 22.01.2014, 15:17   #256 (ссылка)
ЛИИЖТ АТ-103 (1981-1986)
 
Аватар для Просто инженер АиТ

Регистрация: 16.10.2012
Адрес: Где резной палисад
Возраст: 64
Сообщений: 980
Поблагодарил: 220 раз(а)
Поблагодарили 140 раз(а)
Фотоальбомы: не добавлял
Репутация: 380
На каждом ЛП время синхронизировалось с точностью до секунды. Каждому сообщению присваивался номер (unsigned char), для следующего сообщения номер увеличивался на 1. В сообщении записывалось время создания в формате time_t и номер - это было достаточно для определения только первого.
Так же была сделана адресация ЛП, не просто 1,2,3..., а структура несколько похожая на IP адрес - это позволяло легко маршрутизировать сообщения в серверах, как по адресу, так и по типу сообщения (тип системы (АСДК, АСК ПС, САИ "Пальма", Энергетики, ...), подтип сообщения в системе).
union AdrFed // Формат адреса.
{
Word DAdr;
WordByte BAdr;

struct
{
Word LocalAdr :5; // Локальный логический адрес в данной сети/подсети.
Word NetNum :4; // Номер сети на данном узле.
Word UnitNum :4; // Номер узловой станции.
//----------------------
Word NODNum :3; // Номер Отделения.
} Adr;
};

Метод маршрутизации несколько напоминал маршрутизацию в ОС Unix (Linux), строилась на основе фильтров (фильты на входе и на выходе).
ПО компилировалось под DOS, QNX 4.25, Linux, Windows
#ifdef __DOS__
#pragma option -a1
#endif
#if defined(__WIN32__) || defined(__GNUC__)
#pragma pack(1)
#endif
#ifdef __QNX__
#pragma pack(push,1)
#endif
__________________
Не важна реальность, важно как мы к ней относимся!

Последний раз редактировалось Просто инженер АиТ; 22.01.2014 в 15:21.
Просто инженер АиТ вне форума   Цитировать 0
 Нажмите здесь, чтобы написать комментарий к этому сообщению