Страница 2 из 2
Re: система QNX 6.5 в VirtualBox
Добавлено: 10 авг 2012, 18:26
Olej
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:
Чукча не читатель! Чукча - писатель!
- даже 2 чукчи!
Re: система QNX 6.5 в VirtualBox
Добавлено: 10 авг 2012, 18:35
Olej
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
Re: система QNX 6.5 в VirtualBox
Добавлено: 10 авг 2012, 23:25
Olej
Но вот относительно запуска 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
Re: система QNX 6.5 в VirtualBox
Добавлено: 21 янв 2023, 16:15
Olej
Olej писал(а):
Но вот относительно запуска 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?
система QNX 6.5 в VirtualBox
Добавлено: 21 янв 2023, 16:42
Olej
10 лет не обращался к теме...
А теперь, когда понадобилось потестировать
микроядерную ОС, никаких инсталляций, естественно не найдёшь...
Но!
У меня есть инсталляция QNX 6.5.2 в VirtualBox. И её загрузочный диск:
Код: Выделить всё
[olej@xenix QNX 6.5.3]$ ls -l qnx-6.5-3-disk1.vmdk
-rw------- 1 olej olej 2648440832 янв 21 15:20 qnx-6.5-3-disk1.vmdk
Теперь на любом хосте можно создать новую виртуальную машину...
- Снимок экрана от 2023-01-21 14-23-38.png (109.29 КБ) 556 просмотров
Без виртуального диска:
- Снимок экрана от 2023-01-21 14-28-57.png (121.43 КБ) 556 просмотров
Потом в настройках подбросить этот диск виртуальной машине:
- Снимок экрана от 2023-01-21 15-20-40.png (78.58 КБ) 556 просмотров
система QNX 6.5 в VirtualBox
Добавлено: 21 янв 2023, 16:45
Olej
Olej писал(а): ↑21 янв 2023, 16:42
Потом в настройках подбросить этот диск виртуальной машине:
С этого диска происходит нормальная загрузка:
- Снимок экрана от 2023-01-21 15-43-36.png (52.61 КБ) 556 просмотров
- Снимок экрана от 2023-01-21 15-45-12.png (274.77 КБ) 556 просмотров
система QNX 6.5 в VirtualBox
Добавлено: 21 янв 2023, 17:12
Olej
Olej писал(а): ↑21 янв 2023, 16:42
Потом в настройках подбросить этот диск виртуальной машине:
Таким образом можно для экспериментов с
микроядерной ОС - тиражировать сколько угодно
последнюю актуальную версию QNX (была ещё 5.6, и может более - до 7.0 кажется, но это уже всё - автомобильное направление применения).
Единственная некоторая неприятность этого - размер .vmdk : 2648440832 - 2.5Gb.
система QNX 6.5 в VirtualBox
Добавлено: 21 янв 2023, 17:24
Olej
Olej писал(а): ↑21 янв 2023, 16:45
С этого диска происходит нормальная загрузка:
Характерно ... Сюда
нельзя установить дополнения гостевой ОС
Но здесь можно применить
VirtualBox: режим масштабирования - нормально получается.
система QNX 6.5 в VirtualBox
Добавлено: 24 янв 2023, 14:45
Olej
Olej писал(а): ↑21 янв 2023, 17:12
Единственная некоторая неприятность этого - размер .vmdk : 2648440832 - 2.5Gb.
Любой желающий посмотреть QNX и микроядерную ОС вообще, может свободно скачать (если не пугает размер) имидж здесь:
https://drive.google.com/file/d/1kOy13n ... share_link
MD5 контрольная сумма:
Код: Выделить всё
ae1fbc216d399f59d91f6fd3b29dfdb6 qnx-6.5-3-disk1.vmdk
Вход:
login: user
password: user
Стать
root там в терминале можно без пароля:
Код: Выделить всё
$ su -
Tue Jan 24 13:46:10 2023 on /dev/ttyp2
Last login: Tue Jan 24 13:11:57 2023 on /dev/ttyp1
edit the file .profile if you want to change your environment.
To start the Photon windowing environment, type "ph".
# who
система QNX 6.5 в VirtualBox
Добавлено: 24 янв 2023, 15:04
Olej
Кое-что о имидже системы:
- в системе настроено переключение раскладок EN/RU по Alt+Shift ... работает в текстовом редакторе, браузере ... но не работает в терминале - да там оно и не надо (это вот вписано, как понятно, из самой системы QNX + и на русском языке);
- при регистрации от root (из-за $PATH) там работает привычный mc...
Код: Выделить всё
# uname -a
QNX qnx3 6.5.0 2010/07/09-14:44:03EDT x86pc x86
- в
настройках виртуальной машины в VirtualBox нужно сменить тип сетевого адаптера с NAT на "мост" (bridge) - для того чтобы иметь к ней доступ из хостовой машины (и её LAN)... тогда IP будет получаться динамически по DHCP:
Код: Выделить всё
# ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33192
inet 127.0.0.1 netmask 0xff000000
en0: flags=80008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,SHIM> mtu 1500
address: 08:00:27:81:bc:eb
media: Ethernet 10baseT full-duplex
status: active
inet 192.168.1.197 netmask 0xffffff00 broadcast 192.168.1.255
- тогда ping с хост машины будет выглядеть как-то так:
Код: Выделить всё
[olej@xenix ~]$ ping 192.168.1.197 -c3
PING 192.168.1.197 (192.168.1.197) 56(84) bytes of data.
64 bytes from 192.168.1.197: icmp_seq=1 ttl=255 time=0.344 ms
64 bytes from 192.168.1.197: icmp_seq=2 ttl=255 time=0.272 ms
64 bytes from 192.168.1.197: icmp_seq=3 ttl=255 time=0.208 ms
--- 192.168.1.197 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2026ms
rtt min/avg/max/mdev = 0.208/0.274/0.344/0.055 ms