система QNX 6.5 в VirtualBox

Виртуальные машины и среды исполнения

Модератор: Olej

Аватара пользователя
Olej
Писатель
Сообщения: 13417
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: система QNX 6.5 в VirtualBox

Непрочитанное сообщение Olej » 10 авг 2012, 18:26

Olej писал(а):Это, при таком mount, QNET идёт обменом на уровне MAC-пакетов ... то, что в Linux называют L2.
А вот - что такое QNET и с чем его едят:

Native Networking (Qnet) - это самое интересное следствие микроядерности OS: сетевая прозрачность до такой степени, что появляется возможность делать на чужих хостах всё, что и на собственном - фактически N хостов автоматом превращаются в N машинную рапределённую кластерную систему. Это то главное, мимо чего Эндрю Таненбаум, заделавшись главным защитником микроядерности, прошёл мимо и не заметил ... в своём MINIX 3.

Transparent Distributed Processing Using Qnet - а это о том (в деталях), как прозрачно запускаются и выполняются процессы на любых других хостах такой N машинной рапределённой системы.

Это безумно интересно ... даже тем, кто никогда не собирается иметь дел с микроядерными OS.
И то, что никак и никогда не достижимо в моноядерных OS, в принципе: будь то Windows, Linux, Solaris или ещё кто.

P.S. Вот эти короткие тексты и есть ответ на яростный спор Л.Торвальдса с Э.Таненбаумом, в котором они переходили почти на матюки уже... ;-)
... поскольку ни Э.Таненбаум, ни уж, тем более, Л.Торвальдс не дали себе труда хотя бы минимально познакомиться с техдокументацией QNX:
Чукча не читатель! Чукча - писатель!

:shock: - даже 2 чукчи! :lol:

Аватара пользователя
Olej
Писатель
Сообщения: 13417
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: система QNX 6.5 в VirtualBox

Непрочитанное сообщение Olej » 10 авг 2012, 18:35

Olej писал(а):сетевая прозрачность до такой степени, что появляется возможность делать на чужих хостах всё, что и на собственном - фактически N хостов автоматом превращаются в N машинную рапределённую кластерную систему.
А чтоб не быть голословным, вот живой (ещё тёпленький) пример, выполненный на виртуальной QNET сети, построенной 3-мя постами выше - специфическая команда on выполняет любой процесс на процессоре любого хоста сети QNET.
Вот как это видится на хосте qnx2 - команда pwd выполняется на процессоре хоста qnx3, к нам направляется только результат в SYSOUT, выполняемый на том хосте:

Код: Выделить всё

# uname -n
qnx2
# ls /net
qnx2    qnx3
# on -f qnx3 pwd
/net/qnx2./root
# on -n qnx3 pwd
/
# pwd
/root

Аватара пользователя
Olej
Писатель
Сообщения: 13417
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: система QNX 6.5 в VirtualBox

Непрочитанное сообщение Olej » 10 авг 2012, 23:25

Olej писал(а): - делаем:

Код: Выделить всё

# mount -T io-pkt lsm-qnet.so
Но вот относительно запуска QNET на протокольном уровне L3(IP), который должен бы происодить так:

Код: Выделить всё

# mount -T io-pkt -o bind=ip,resolve=dns lsm-qnet.so
-ничего хорошего не получается.


P.S. по местонахождению (путавым именам) плагинов:
- модули протоколов:

Код: Выделить всё

# ls /lib/dll/lsm-*
/lib/dll/lsm-autoip.so    /lib/dll/lsm-pf-v6.so
/lib/dll/lsm-pf-v4.so     /lib/dll/lsm-qnet.so
- модули сетевых карт:

Код: Выделить всё

# ls /lib/dll/devn-*
/lib/dll/devn-asix.so                  /lib/dll/devn-pegasus.so
/lib/dll/devn-crys8900.so              /lib/dll/devn-rtl.so
/lib/dll/devn-dm9102.so                /lib/dll/devn-rtl8150.so
/lib/dll/devn-el509.so                 /lib/dll/devn-sis9.so
/lib/dll/devn-el900.so                 /lib/dll/devn-smc9000.so
/lib/dll/devn-epic.so                  /lib/dll/devn-speedo.so
/lib/dll/devn-fd.so                    /lib/dll/devn-tigon3.so
/lib/dll/devn-i82544.so                /lib/dll/devn-tulip.so
/lib/dll/devn-micrel8841.so            /lib/dll/devn-via-rhine.so
/lib/dll/devn-ne2000.so
/lib/dll/devn-pcnet.so

Аватара пользователя
Olej
Писатель
Сообщения: 13417
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: система QNX 6.5 в VirtualBox

Непрочитанное сообщение Olej » 11 авг 2012, 00:02

Olej писал(а):
Olej писал(а): - делаем:

Код: Выделить всё

# mount -T io-pkt lsm-qnet.so
Но вот относительно запуска QNET на протокольном уровне L3(IP), который должен бы происодить так:

Код: Выделить всё

# mount -T io-pkt -o bind=ip,resolve=dns lsm-qnet.so
-ничего хорошего не получается.
Похоже, нашёлся споcоб запускать QNET над L3 (IP) ... QNET over IP.
Это выглядит так (довольно странные параметры):

Код: Выделить всё

# mount -T io-pkt -o bind=en1,bind=ip /lib/dll/lsm-qnet.so
# ls /net
qnx2    qnx3
# uname -n
qnx2
# ls /net/qnx3
.            bin          fs           opt          tmp
..           boot         home         proc         usr
.boot        dev          lib          root         var
.diskroot    etc          net          sbin         x86
Или здесь всё ещё в LAN работает QNET over MAC?

Ответить

Вернуться в «Виртуализация»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя