������ �Neutrino�: � ������� �������
������
� �. �.
���������, 1997
QNX
� Unix - ������� ����� ��������
����
������� Neutrino.
�����������
��������� Neutrino
�������
� ������ ���������
������������
������� ���������� �������
����������
������ ��������� ��� � �������
��������� ������ 32-������ ������������ ������ ��� ����������� Intel. ����� ���
���������, ���� ����� ���������� � ���, ����� �� ��� ������ ��������� � ������
��� ��������. � ���-��? Windows95 �������� ������ ������� � ��������� ���������,
�� �� �������������� ������������. Windows NT ��������� ���� ������������ �
������ �������� ������������ �� ��� ������ �� ��� ���� �����, �� ��� ������ ��
������ ���������. OS/2 ���-�� ������� �������� ����� � ����� ���������� ����� �
���� Unix - Linux. ��� �� �����, �� ���� �� ���� ������ �� �������� �� ��������
����������� � �������� ������������ �������������, ����� ������� � ���������
���� ������ ������. �������, �� ��� ������, ����������� � ���, ��� �����������
������ �������� ����� ����� ����������� - ������������� ������, ��-�� ��������
�������� ����� ����������� ����������� � ������������ ������� �� ����� �����
���������� ��, ������� ����� ������� ������� �� ����� � ������ ����������
������.
��� ���� ����� � ����� ������ �
������� QNX, ������� ������ �����������, ����������� �� ���� ������������������
�� ��� ������ ��������� ������� � �����-����� ������������� �������. ������ ��
������������ ���������� �� ������� ��������� ��� ���� �������� � QNX, ���������
���� ���� ����� � �����. ������ �� ����� ��� ���� ����������� �������,
����������� ������ ���������� �������. ��� �� ��������� Windows95, ��� �����
����� ������, ����� �������� ���� �������� ���������� ����� ��, �������, ��
�������� ���������� ������� ����, ����� �� ��������� � ���� ������ ����,
������������� � ������ ������������ ������. ���� ������ ������� ������� ��������
�Neutrino�, ������� �������� ������ �������� ��� ���� � ��������� ��������� �
����� ������� ��. ������ ������ ������� �������� ������ �� ������ ���� �����
Neutrino?� �, ��� ����� ���������, ������
��� ���� ������� � � ��� �� ������� �� QNX.
QNX � Unix - ������� �����
��������
������
�����, Neutrino, ��� � QNX, �� ������ ����� �������� � ��������� Unix-��������
������, �������� �� ��� ��������������� ��������. ������� ������ ������ ������
����������� ������ ������� � �������� ��. ��� ������ ��������� ����� ��������
����� QNX � Unix, ��� ��� ��� �� ������ � QNX. �������, ��� ��������� ����� ���� �������� � ���, ��� �
��� ��� ������.
��� ����� QNX?
� ����� ������ ����������������� ����������
� API, ��� �� ����� ������� �� UNIX. ���� �� ������������, �������� � UNIX, ��
�������� ������� �������� � ��� ��� �������, ��� ��� � ��� ������������
����������� ���� ����� ����������� ������ � ����������� ������� ����� ���������.
X Window ������� ���� ����, ��� � TCP/IP. ���� �� �����������, �������� � UNIX,
�� ��� ��� �� �������� �������� ����� ��������� ���� ��� GNU/Free ���������� �
QNX. ����� ���������� ��� Apache � Mosaic ������ ������������� �������
������������� API.
������, QNX ��� �� ������ UNIX.
��� ���� ����������� � ���� � ��������� �� ���������� ������ �������������
���������, �� � ������ ������ ���������� POSIX, ������� �������� � ���������� ��������� ������������
�������� � ��������� ������� ������� Unix.
���������� ������� ��������� ������ QNX Software Systems Limited (����� -
QSSL).
��� QNX ���������� ��
UNIX?
QNX ���� ������
������������ ��, ����������� �� ��������� ��������� � ������ �����������.
������� ����������� � ���� ������������ ����������� (�� ����������������� �����
����� �����������) ��������� ���������� ������ (��������� � ��������), ������ ��
������� ��������� ������������ ��� �������. ��� ���� ��������� ��������
���������� ��������� �����������:
- ���������������, ���������� ��
������������ � ������� �������� ��������� �������; �� ���� ������ UNIX
�� ����� ������� ��������� ��������, ��������� ����������������� ��� ����
������� �����. ����� ��������� ����� � UNIX ����� �������� � ���������������
��������. ��-�� ����� �������� Windows NT, ��� �������� ����� �������������
����� ISR (��������� ���������� ����������) � DPC (����� ����������
���������)
- ���������������� � �������������, �����������
����������� �������������� �������� � ���������� �� ������������ ���
���������� (embedded) ������; �� �� ������� � �������� /dev �������� ����
������, ��������������� �������� ���������. �������� � ��������� �����
��������� ������ �� ��������� ������. � ������� (����� �������� ������� J ) �����������. �� ������
����� ������ ��� ������, ������� ��� ������� �����, ������ ��� �� �������
��������� ������ � �� ��������� �������. �� ����� ������ ������ ������ ��
������, ������� ������� �����!
- �������������
� ���������� ������������, ��������� ���������� ���� ������� �� �����
������������� � ����, ������ ������� �������������� �������. ���������
�������� (������ ����������� ������) �������� � ������ 3 � �� ������ ���������
����, �� �������� �� �������. �������� �������� � ������ 1 � ����� �������
��������, �� �� ���������� ���������. ����� ����, �� ���������� ������ ������
� ����������. ��������, ���������� �������� ������������� ��������� ���
Linux - ��������� ��������� ������������ �����
������ ��� DMA ��������� - �������� ������ � ���������, ����� �������
mmap().
- ������� ������� ��������
FLEET, ���������� ��� ������
�����������, ������������� �������������� ������������������,
�������������� �������� � ������������� ����� ��������������� ������ �������.
�� �� ��� ����������� ��� TCP/IP, ��
������� ����� � ������������� � �����������.
- ������� ����� �����������
���������, ���������� QNX Windows, X11R5 � Photon, ��� ���������
������������� �������� ��, ������� ����� �������� ��� �� �����. ��� ��������
�������� ���������� QNX ������������
������� X11 ������� �����������, ��
������� Photon, ����������� �� ���-�� ��������� ����������� ��� � ����
QNX, ��������� ��������
������������������� GUI (���� Motif 2.0), ���������� ������ �
POSIX-����������� �� ����� � 4Mb ������.
�������, � ���� ������� �� ��� �������.
��������� QNX �� ���������� �� ���� UNIX, �� ������� ������� ��������
�������������. ���� � ��������� �����������, ��������� � ����������� ������� ��
����� ���������� ������ ��������� �������. ��� ��������� ��
���:
- ��� ���������
SMP;
- ��� ��������� ���������� ������
�� ����;
- ������������� � �������������
��������� ����� (threads);
- ��� ��������� Java (���
��������� ����������� ������);
- ��� ��������� �����������
������ � ������;
- �������������� �����������
�������� �������;
- ��� ��������� UNIX-domain
sockets;
- ������ �������� ������������� �
�������� ������� �������������;
- ���������� ������� ������������
� ������ ������������ �������� ���������;
���� ���� ������ �������� ���������� ������
������, �� ��� ��� �������� ������������ ��� ����� QNX, ��������� ��� �� ��������������� ��� ����������� �
Unix. ��, ��� ������� ����� �����, ���������
������ ����� ������, � ����� ��������� ������ ����������� QNX, ��������
���������� ������������ � ����� ������ ������ ������ ��������� �������. � ���
������, ��� QNX �������� ������� �����
�����!
QNX � ������� ���������
�������
���-�� ��� ��
����������? ��� ����, ����� ��� ������,
������� ���������� ���������� � ��, ��������������� ��� ���������� ������
��������� �������. ������ ���� ����� � ��������� � ������������������� ������
��� ��������� ������� (Real Time OS). ������������� �����-���� �� ��� ��
����������� ��������� ����������. ����� ����� ����� �� ������ ���� � ������� ��
�� ���� ����� �������, ��������������� ��� ������ � �������� �������
(����� � �������� ��������� �������), �� �� ��������� �� ��� ����������.
��� ��������������� ������� ��������� �������? ���� ��� �������� ����������:
- ������� ������ ����������� ��
�������, ������� ���������� �� �� ������������� ����� ��� � ��������������
������� ������� (����� � ���������� �����);
��� ���������� ����� ����������
������� ������ �������� ����������������, ������� �� ������� ������ �
�������������������. ������� ��������� �� ������� Windows 3.1 �������������.
- ������� ������ ��������
������������ � ������������ ��������� ���������� �������. ���� ���������
������� ��������� ������������, ������� ������ ������ ���������� ��� ������� �
�������������� ������� ������� ��������� ������, ���������� �� ����������
�������, ������� �� ����������� � ����������� �� ���������
�����.
��� ���������� ����� ����������
������� ������ �������� ������������ �������������. ����������� ��� ��������,
��� ������� ������ ������������ ����������� ���������������, ���������� ��
�����������, � ����� ���� ��������� ������������ ��������� �����������
������������.�
��-�� �����, ����� ����� ��������� �� � �� �� ������ ������� ������� ���������
�������. ��� �������, ��� ����� �� �������� �� ������� ���� ���������
�����������:
- �� ������ ������������
����������� ��������������� (preemptive multi-threading) � ������������������ �����������;
- ���������� ����������� ������
������������ ��������� ������� ���������� (interrupt levels) � �� ������
������������ ���������� (preemption) ������������ ����������;
- ������ ���� ����������
(thread) ������ ����� ������ ���������
����������� ��������. � ������ ����������� ������ ������������� ��������� ���
����, � ������� �������� ������ ����� ������� �� ���������� �� ��������� �����
(��������, ��������� ��� EDF � Earliest Deadline First). ������, �������� ��������� ���������� ����� �����,
����� ������� ����������� ������� ����������� � �����, ��� ������� ���������
���������� �������� ���������� ������� �����������;
- �� ������ ������������
������������� ��������� ��� ������������� ����� ������ � ��������������
���������, ����������� �������� ���������
������������. ��� ��������, ��� ��� ���
�������� ������, ��� � ��� ������������� ����� ������ ��������������
������������� �����������.
- ��������� ����� �� �����
��������� ������� � ����������� ������� ������ ���� ������������ � ��������
�������. ��� ��������, ��� ������������ �� ������ ��������������� �����
��������� ��������������, ��� ��������� ��������� �����������
(interrupt latency), ������������ �����
���������� ���������� � ����� ������������ ����� ���������� ���� ���������
�������.
- �� ������ ���� ��������
�������� � ������������ ��������, �������� ��� �������� �����������
������;
- ��������� ������� ��� ��������
������� ������ ���� ���������� ������;
- �� ������ ������������ API �
����������� ������, ��������������� �� ��������� � ���������� �����������
������ ��������� �������;
�������� �� �������� ��������� ����-�� ����� ����
����������, ���� �� ��� �� ��� ��������� �����. �������� Windows NT, �������� �� �� ����� �����������, �� ��������� �
Windows 95, ����������� ���������� ��
������������� ����������� ����������� 2 � 4 , � ����� ����� ����� �������������
����������� 3, 5, 6, 7 � 8. ������� ������, ��� QNX ����� �� ������ ��������
���� �����������. � ���������, QNX �����
��������� ��������� ����������:
- ������������ ��������� ����� �
���������� ��������� ������������ ������������������ ����������
(SMP);
- ������������ ���������� �������
���������� (32);
- ���������� ���������
������������� ����������� ��� ���������� �������������
(���������);
- ������������� �������� ��
�������� � ������� ������ ����� 512Kb � � ������������ �������������
����������� ��� ������.
- ������������ ������� ����, ����
��� ������� ������� �������.
� ��������� ������� ��������� �� ��������� �����������
�������������� ������������� QNX. ��������,
������������ ���������� ����� � SMP ������� �������������� ����� ����� ��������
������������ ��������� ����� ����������, � ������� ���� � ������������
���������� ��������������. �������� �� ������ �������� ����� ������� � ������
��� QNX.
��� �� �����, ����� � �������,
����� �������� ������ �������� ������������������. �� ���� �������� � ��� � ����
����� ������ ������� Neutrino �
Photon, ���������� � �������� �����
���������� ������, �������� ��� �������� ��������.
���� �������
Neutrino.
����
���������� �������� ��� �������� QNX, �� ��
����� ������� �������� 3 ��������:
- ������������� ��������������� �
������������ POSIX � �������� ���������
�������;
- ������������� ���������� ��
���������� �������� � ��������� 64K � 512K;
- ������������� ���������� ��
�������� ������� ������ (SMP ��������).
������ �����, ��� ���������� ���� ������� Neutrino
- �������� POSIX ����������� �������������� ��, ��������� ��� ����������
������ ��������� ������� �� ����� ������� �������
������������.
��� ���� ���� ����� ���������� ���� �������� ������������� ����
���������� �� ��������� ������� �������. �� ����, ��� ��� �������� ������ ����
������� ��������� � ����� ��� SMP-�������. �������
������ ���� ������ ���� ��������� ������, ����������� � �������������, ��� �
Neutrino ����� �������� ��� � �������
������ ������������ ������.
���.
1 - ������� ����������
Neutrino
������, ����� ������������ ���� ��������� � ����������.
��-������ � ������ �� ������ ���� POSIX �����������? �� ��� ���� ���������
������, �������� ���� ��������� �� ���:
- ������������� ���� ���������� �
����������� ������������� ������� ������������ ������� ����. POSIX
������������ ����� ��������� �������� ��� ����
����, ��������� �� ����� ������ ���������� ����������, �� ����������
����������� �� ���������� � ������������ ������������� ����� ������ ��
�������������.
- ������������� ���������� ��
������������� ���������� � ������������ �������. ��� ������ �������
����������, �������� � ��������� SPARC/Solaris �� x86/QNX ��
������������ ������������� �����. Neutrino ������ ������� ���� ������� �����������
��������������.
- ������������� �������
���������� � ������� ������������ ���������� ����������������� �������������
��� POSIX API.
- �������� POSIX � UNIX ����
����������� ���������� ������� ���������� � runtime-�������, ��� ��������� ������������� � �����������
���������� ��� �� ��������� ��������� ����������, ��� �������� ���
�������������.
- ����������������� ������
��������� ����� (�������� C��) �������
������������� � POSIX ����� ������. ����
����� ������, ��� ������������ �� ������ �2, ��������� POSIX-����������������� ������� ������ �������� ������������
���������� ������.
�������, POSIX ���
������� ������ ����������, � ������ �Neutrino�, ���� �������� ���������, ����������� �� ������ ����� ��
�� ���� ��, � ���� � �� ���������. ��� ��������� ����� ����������, � ���������,
�� ���������� ����������� POSIX:
- 1003.1, 1003.1a,
- 1003.1b Realtime,
- 1003.1c Threads,
- 1003.1d Realtime Extensions
- 1003.13 Realtime Profile Support
����� ����, � ���������
Neutrino ��������������� � ������ ���������
������ ����������, ����� ��������, ��� ��������� ������������� ������ �
����������� ���������� ���� ��������������� �� ROM.
����������� ���������
Neutrino
���������
���� ���� ������� ����� ����������������, ��� �������. ��������, ���� ����������
�� ��� ������ ��������� ������� � ����������� POSIX ���������� �����, �� ������ ����� ���� �� ���������
�������. POSIX-������� ����� ��������� ����������, ���������
��� ������������� � ������ ������� � Unix. � ��������� ������, Neutrino ��������
��������������� ����������� ������������� ���������� POSIX �������.
��� ���������� ���� �����
������������ ���� ������ ������������� ������������ ��������� QNX.
Neutrino ������������ ����� ����������� �����
����������� ������, ����������� ������� ������ �������, ��� ���������
QNX, ���� ��� ���� ������ ������������������
� ��������� ��������������. ���������� ��������� ��������� ����� ��������
��������� ������ ��������� ��������� (� 80 �� 20Kb), �������� ����� ������� �� ��������� ������ �����
�����.
��������� �
��������
��������,
���������� ������� ������� � ���������� ������� ���������, � 10Kb �� 28Kb. ������, ���
���������� ������ ����� ���������������. ����������, � ��� ����������
���������, �������������� ��������� ��������������� �������� ���������,
�������, � ���� �������, ������������ ������� ������ ��� ���������������� �����
� �������������� ��������� �������.
�������, ���������� � ���������,
���� ������� �� �������� ������������ ���������� ��������, ����������� ��� ��
����������. ��� ������������ ������� ������� ���� �������� �� �������
������.
�� ���� ������� Neutrino
�������� ���������� ��������� � �������, �����
��-�������� ���������� �����������. ��������, Neutrino ������������ ������� ����, ���������� � ���������
��������, �� �� ����� ��������� ��������. � ��������� ������ ��� ����,
���������������� ��� ���������� ����������� �������, ����������� ��� ����������
������ ���������. ����� ������� ���� �������, � ���� ����, ��� ��������� �������
��������� ������� ����������� ����� ������� ���������� � ������� � ��������
���������� ����, ��� � ������, ��������� ����� �������������� ����� ����������.
����� ����, ��������� ���������� ������ �� ����������� �������� �����������
������. � �� ����������� � ������������ �������� �� x86 ��� ������ �������� �����. ��� ��� ����� ������ ��������
����������� � ������������� �������, � ����� �������� �� ������� �� ������
���������.
���.
2 - ������ ��������� � �������
��������
��� ��������� ������ Neutrino ����� �����������, ��� ������������� ���������� ����� ��
���� � ����� ������� ����������, ���� � �������� �������� ���������. ���
�������� ���������, � ����� ��� ������������� �������� � ����� ������, ���������
�������������� ������������� ������������������ ���� � �������. ���, � ����
�������, ����� ��������� ������������� ���������. �� ���� ����� ����������
��������� �������������� �������. �������� ���������� � ������ ��������
���������� ���������� ������ ������� ������. �������, ��� ��������� ����������
���������� � ���� (spin-locks), �����������
��� ��������� ������������������ ����������, ��� �������� ���������� SMP � �������� ������������� ������������� ��������������
�����������. �� ����, ���������� ����� �������������� ��, ����������� ���
���������� ������ �������� ������.
���. 3 - ����������
������� �� ������ SMP Neutrino
�� ���������� QSSL, ����
������������ SMP Neutrino ������������������
������� � ��������� (!) ���� ������������������ ��� ���������� ��������������
����������� (�� 8), ��� �������������� ������������ ��������. �������� ������,
��� ��� ����������, �� ��� ������ ��� ������� J . ������ � QNX �
Neutrino �����������. ����� ����,
���������� SMP Neutrino ��������� ������
������������� ��������� ����� ������������, ��� �������� �������� ��� �������
������������� � �������������� ����� ����������. ��� ������� ��� ������� �������
������� �� ������� �������������������� ��������, ����������� �
��������������������� �������� ��� ���������� ������ �������������� ������. ����
�� �������� � ���� ������� � �������������� Neutrino ��� �����.
��������� �
�������������� ������
������� ������� ������� ��������� Neutrino �� ��������� QNX � ��� ��� ����������� � �������� ��������. � QNX ���������
��������� ������������ � ���� ��������� ���������, ��� �������� �������������
������������� ���������� ���� ���, ��� �� ����� ��� �������. ���������
Neutrino ������ ���� ��������� ��� ������
������ ������� ������, ���� ������������������ �������, ��� �����������
���������� ���� �������������, � ����� �������� ���������� � ������. ���������
Neutrino ����� ������������ ��� ��������� ���������, ��� ��������� ������� ��� �
���������������� �����, ������� ����� ������� ��������, ���������� ����������
������� (system process). �����
������� �� ������� ��� ������ �� ��, �� ���� BIOS, ��������� � ��������
������� ������ ����� ������� IPL
(��������� ��������), ��������� �������� BIOS � ���� ��������.
��������� ������� �������� �
���������������� ����������. ������� �� ����� �� � ������ ������ ����� �����,
��� ����� ����������� ������� ��������� �������. Neutrino ���� �����������
������������� ����� �������, ��������� ����������� API, ������������ POSIX,
����������� ��� ���� ����������� ����������� ��� ����� �������
�������.
���. 4 -
������������ ���������� Neutrino
���� �� ��� ������� ����� ����������� ��, ����� �������
��������� � ���������� ��������� Neutrino (ProcNto), ����� ������������ ������ ����, � �������� �� ����
����������� �������� ����� ���-�� ��� ��� �������� � QNX.
� ���, ���� ��� ����������
��������� ������� ProcNto �� ��������? Neutrino ������������� ������������� ����� ������ ������� �� ����
������.
�������������� ����������
��������������� �������
�������� ��������� ProcNto ������������ ����� �����
�����, ������������� � �������� ������������ ��������� � �������� �� ����������
�������, ��������� ������������ ���� � �������� ����� ���������. �� ��� �� ����
������� ����� ������ ������. ��������, ���������� �������, ������������
������������� ����� ���������, ��������� � ����, ����-�� ����������� �������
�������� ����� ���������, � ���������� ��������� ��������. �������, �������� ��
���� ����� ������, ProcNto ����� ���������
��������������� �����. � ����� ������� ����������� ������� ����� �����������
�������������� �������������� �������, � ������� ������ ProcNto ������������ ��� ����������� ���, ��������� � ���������
�����������, ���������� ���������� ���������� ��� ���������� ������������ ������
�������. ���, ��������, ����� �������������� ���������� ������� open(),
read() � write(), ���� ��� ���, ��� ���������� ���
�������.
���������� ���� �
���������� ����� ��������� �������
��� ���� ��������� ��������� Neutrino ����������� � ��������� ����������
(�xtensions). ��� Neutrino ��������
��������� ������� ���������, ������� ����� ���� �������������� � ������
���������� ����� �����, ���������� � �������� ������������ ���������. ���
������� ����� ��������� �� ������ ������� � ����� ������ ����. ��������,
ProcNto ���������� ���� �������� ��� ������
����������� ������� ���������� �������, ������������ � Neutrino, �� ����� �������, ����������� ��������� �������� �
�������������� ������������ ��������� ��������������, ���������������� ���������
���������. ���� ��������� �� �������� ����, ���������� �������� � �����������
�������, ����� �� ���������� �������, ������� ���� �������� �� ������������ ���
�� ����������.
ProcNto ����� ��������� �
��������� ����� ��� �������� ����� ����� � ��������� ������� ��������, ����
Neutrino �������������� ������ �� �����,
��������� ��� ���� ����������� ������ ����������� �������������� ����� ��������
�������������. ����������� ���������� ProcNto ������ ��� ����������� �������� ��������� �����
����������, ����������� � ���������� ����������� ��������
�������������.
Neutrino ����� ��������
����������� ����� �����, ����� ������� ����, ������������� � ��������
������������ ���������, ����� ���������� ��� ������ �������. ����� ���������
�������� ��� ������� �� ����� ����������. ���� �������� ������������ �����������
���� ��� ����, ����� ��������� ����������� ��������� ��������� �� ���������
����� �� �� ������������ �����. ������ ��� ��������� �������� ������
������������ �������� �������������� � QNX/Neutrino, ��������� �������� �������
����� ��������� � ��������� ����������� ���������. ���� Neutrino ������������ � ������������ ���������, ��������
��������� ���������������������� ���������� SMP �������.
�������, ����������������� ����
����� ���������� � �������������� � ��������� ����� ��������� ������, ��������
��� �������������� �����������.
���������� ���������� �
�������
��� ���� ��������
����, ���������� ���������� � ������� �� ��������, ������ ������, ��������
Neutrino. ��� ������� ��������� ���������
ProcNto, ������� ����� �����, ����������
���������� ������������ ���� �����/������ �
��� ����� "�������". ������ ���� ����� ��� �� �������� ��� ������������
������� �������.
������ ��� ��������� ����������,
���������� ����� ����������� ��������� �� � ������-���� ��������. � ���� ����� �
������ ProcNto ����� ����� ����� ����������
� ����� �����������. ���� ���������� ������������ �������� ����������� �������
� ������� ELF, QNX4 � shell-��������. ������ ELF (��������� ����� ��� Evil Linkage Format J ) �������� ���
Neutrino �����������, ��������� ��
������������ ��� �����������, ����� ��� ��������� ������������� ���������� �,
��� ����� ����� ��� ���������� ������, ��������� �� ������������� XIP
(eXecute-In-Place), ����������������� ����������
���� ����� �� ROM, ��� �������� � RAM. ���� ����������� ������������
������� ������ ����� ���������� ���������,
�� ��� ������ ���� ��� �� ������ ������� ��� ����.
��� ���� �� ������� ProcNto ���
��������� ����������� �������� �������, ������������ � �������� �����������
����� �������. ��� ������������ ������, �� ��������� �������� ������, ����
������� ����� �������������, ��������� �� �������� ��������� �������, �������
���������� � ������ � ��������� ��������.
� ���-��, ����� ���������� ���
���������� �������. ���� ������ �������� ���������� �����������, ��������� ��
��� ������� ������� ����� ������. �������, ����������� � QNX �� ���� ���������� ������. QNX 4.23 ������ ���������� ����������� ������, ��� �� ���������
������������ �� �� ��������� ����� Intel-����������� �����������, �������� ������ ����������� ��
���������� ��c�����, �������� ������������ National Semiconductor ��� AMD, ���������
��� �� �������� Paged-MMU (����������
���������� ����������� �������). ����� ����, ����������� ��������� ��
����������� ��� x86 ���������� MMU ���������� ������� ������� �� ������
���������.
� ����������, Neutrino
���������� ���������� ������� � ������������ �����
������ ������ ������ �������������. ��� Neutrino �� ���������� MMU ���
����������� ������ � ����� ����. ��� ����������� �� ���� ������ �������
������������� MMU �� ������� ������
(mmuon) � ������ ������� ����������
����������� ������� � ���������� ���������, �������������� ProcNto. ��� ��������
MMU ������ mmuon ����� �������� � ����, ����� ���� �������� ��������� ������
������������ ����������� ������. ���� ������ �� �������� ���������, ��
��������� ������������� ���������� � ���������� ��������� ���� ������. ���
�������� ��������� ����� ���������� � ���������� ���������, ��������������� ����
������ ������. ����� �������, Neutrino/ProcNto ������������ 4 �������� ���������� �������, �� �������
���������� ������, �� �������������� ������� �������� ������������ 4Gb
������������ ��������� ������������. � �������
�������� ����� ������ ProcNto,
�������������� �������� ����������� ������ �� ����, ��� ����� ���������
����������� ��� ��������� ������ �������� ������.
������� 1: ����������
������.
��� ����
������������ ��� ���������� ������� � ������, ������������� � ��������
������������ Neutrino. �������� ���������
������ �����������. ��� �������� ������������, ������� ������������� ���������
realtime executive, �� ������� Neutrino � ���, ��� ��� �������� ���� � ����
������ ������ ��������� (��������� ��� ��������) ������� mmap(), ��� ��������� ���������� ��� ��������� ��������� ����
������� ��� ����� ������ ������.
������� 2: ������
����������� ����� �� ����������������.
� ���� ������ ����, ���������� � �������� ������������
Neutrino (��� ������ ProcNto, �������� ����
��� ������������ ������������� ����) �������� �� ��������� �����, �� ���������
���� �� �������� ���� �� �����. ������ �������������� ��������� MMU,
����� ���������� ������� ��� ����������� �
������������������.
���. 5 -
����������� ������ ������ ������
������� 3: ������ ���� �����
���� �� �����.
����
������� ���������� �� ����������� ���, ��� ���������������� ���� ����� ��������
���� �� �����. ������ �������������� ����� ������������ ���������� �������.
���������� �������� ���� �����, ����������� ��� ���������. �����, ��� ��������
���������� ����� �� ���������������� ����� �� �������� ���������� ���
���������������� (��� ����� �������� ���� ������ � ����� ������), �� ��� ���,
���� ��� �� �������� ����������, ����� ���� ��� ����� ����������� ���
���������.
���. 6 -
������ ������ ������ ��� �������������
������� 4: �����������
������.
� ���� ������
������ ������� ����� ����������� �������� ������������, ������������ � ������ 0
� ���������� �� ��������� ���������. ���� �������� ����� � ��� ���� ��������
������������. ��������� �������� ������������ Neutrino ����� �������� �� ��������� ���������. ������
�������������� ����������� Paged-MMU � ����������� ��������������� �������
ProcNto.
���. 7 -
������ ������ �� ������ ����������� ������
������� � ������
���������
Neutrino ������������ 48 ��������� ������� (�� ��������� � 14 �
QNX), �������������� ����,
�������� ���������, �������, ��������� ���� � �������, ��������� ���������� � ��������� �������������
�����.
�������� � ����:
��������������� � �������������
Neutrino ������������ ������ ����� POSIX 1003.1�, � ������������ � ������� ������� �����
����������� ��������� � ���������� ���� ��� ����� �����. ������������ ����� ��
������ ������ ������������ ��� ������ � ������ ���� API Neutrino, ����
����������� ���������� pthreads.
���� �� �������� ����������, ���
���� ������ ����� ����������� ������ �����������. Neutrino, � ������� ������ ������������� ������, ����� ������������
256 �������, ������ ������ ���� ����� ����� ����� ����������� ��������
���������������, ������ ������� ����������� ��� QNX (� ��������� POSIX) � round-robin, FIFO � ����������.
����������, ��������� �����
������������� �����, ��� ��� ����� ������ ����� ������. ��� �����������
������������� Neutrino ������������ ���
���������: �������� ����������
(condvars) � ����� ��������� ����������
(mutexes). ��� ���� �������� ���������
������������ �������� ������������ �����������.
���������� mutexes ���������� ����� ������� ��������������. ��������� ���
������������ ������������ ������� ���� mutex ������� ���������� ����� ������ ����. ��� ���������,
� Windows NT ��� �������� ����� ��������
����� �� 700 ms.
������ ������� � �������� ������
�����������
������ �������
Neutrino ������������ ����� ��� ����
������������ ���������� ���� �������. �������� ��������� � ������������ ����
������� � �������� ����������� � ���, ���������� ����� ������� � ������ ����
�������-������ ����� ������ ������������ ����� ���� � ���������� ����������
�������� ������ ��������������. ������� Neutrino ���������� ������ ������,
���������� event steering, ���
������� ������ ����� �������� ��������� ����� ����������� �������, ������� �� �
���� ��������.
�����������, ���� ��������
����������� �� ������ �� ���� ����� ����������: ��������� �� ������ ����, ���������� ��� ������. �������
���������� � ����� ���������� ���������, ����������� �������, Unix ��� POSIX ��������,
���������� � ����� ������������ ������� ForceReady, ����������� ����������� ������� ���� � ���������
Ready, ��� �������� ��� ������-���� �������.
�������� event steering �������� ���������
�������:
- ������ �������� �������
���������, ���������� ��������� � ��������� ��������� ���������
�����������;
- ������ ������������ ��� ����� �
��������� � �������� �������, ������ ��� �� ����������.
- ����� ��������� ������������� �
����������� �������, ������ �������� ��� ���������, � ��������� �����������
��� � ���������� �����.
���. 8 -
��������������� ������ �������
������� �
Neutrino �������������� �
���� ��������������: ������������ �������
Unix � ������������ ������� POSIX, c
�������� ����� ���������� �������� ������ ������ (4
�����). ������ �������� ����� ���� ����������� � ���, ��� ������� POSIX
��� ����������� � �������� ������������, ����
�����-���� �� ����� �������� �� ������� � ��� �������. Neutrino ��������� ��������� POSIX ���, ��� ����� ��������� ����� �������� ��������� ���
������ �������, � ��� ����� ����������� �������� Unix. ����� ����, Neutrino ��������� ���������� ������ � ���������� ���� ������
��������, � �� ������ � ��������.
��������� ��������
������������ ���������� QNX, �������
���������� � � Neutrino, �� ���������
���������� � ����������. ������ ���������� ��������� Neutrino ������������ �������� ����������� ���������, ����������
��������� (Pulses) , ����������� �������� 4
����� ������ � ������������� �� ���-�� ������, ��� � ������� POSIX. ������ ������������ ����� ���������� ������������
������� ��������� Proxy, ������������ �
QNX.
�������� ������������ �������
����� ����������� ����� ���������� ��������� �������� ���������. ���� �
QNX �������� ������������� ����������� �����
��������������� ���� � ������, �� � Neutrino ��� ������ ������������ ��� ���� ���� ����������
(connections) � ������ (channels).
���.
9 - ������ � ����������
������ ������������ ������ �� ������� �������, ���������
��� ���������� ��� ������ ��������� (�� �� ��� ��������� ������� �� ���������
���������). ���������� ������������ ������ �������� ��� ������� ���������
��� ������� � ������. ��������� ����� ����� �������� ��������� � ���� �����, ���
���� �������� ����� ����� ���� ����������. ��� ���� ��������� ����� ����� ����
������������ ����������� �� ������. � ���������� � ������ ���������������� �
���������� ��������� ����������������, ���������� �������� ������������ �
�������.
��������� ���� �
�������
��������� ����
������������ ��� ������������ ������� �����, �������, � ���� �������,
������������ ���������. Neutrino ������������ ��������� ����� ��� ������� �������������
����� ����� ����������� ���������.
����� �������� ���� ������������
������ � ����������� ���������������� ����������� � ������������� �����������
���������� ����, ������������ ������, �� ����, ��� ��� ������ ��������� ������
�� ������, ��� �������� ���� ������ ��������������. � ����������, ����� ������
���-�� ������ �����������, ������ ����� ���� ��� ��������, ��� �������� �
����������� ���������������� �������.
� Neutrino ��� �������� ������ ��
���� ��������� ��������� � ��������� ������������� ��������. ��� ����� �����
������ ����������� ����������. �����������, ����� ���������� ����� ���������
������, ����������� � ����-����, ��� ����������� � ��������� ��������������
������ ������� � ������ �������� ���������� � ������������ ���������. ������
������� � ������ ������� ���������� ��������� ���������, �������� ��� �����
���������������.
���������
����������
���� �����
�������� ����� �� ����� ������� ��� ���������� �� ��� ������� ��������� �������,
��������� ���������� ��������� ��������� ����� ������������� ����������. API
��������� ���������� �������� ������ ������������� ���������������� ���������
POSIX 1003.1d. ������ ��������� �������� ��������� �������.
����, ������� ���������������
����������, ����� ����������� ������������� � ������� ����������� ����������,
����� �������� ��������� ������ �������-����������� (ISR). ��� ������������� ����������, ��������� ����������
������� � ���������, ������� �������� ��� ��� ��� �������������. ����� �������
ISR ��������� ��������� �������� �����������
���� � ����������������� �������� ���������� ����� �������, ��� ISR ����� ������ � ��������� ������������ ����, � ������� ��
����������. ��� ��������� ISR ���������
��������� ��������� ������� � �������� ����, � ������� ��� ����������, ���
������������ �������� ������ ��� ����������� ��������� ���� �����. ��� �����
��������� ISR ������������ ������ �� ����
�����������, ����������� � ������ ��������������� (������� ���������) ������
���� � ��������������� ��������� �������� �����-������. � ����������, ��������
���������� �� ������ ���� ������� � ����� � ����� �������� � ������
1.
� ������ ���������� �����
������������ ��������� ISR, ��� ���� ��� ���
����� �������. ISR ������ ������� ����������
��-����������� ������, ������� ���������� �������� ��� ����������
��������������� ����� �������� � ������������ ��� �� ����, �������� � �������
������. ���� ������������ ����� �� ISR
�������� ��������� �� ��, ��� �������� ��������� �������, ������ ����, ���
������� ����� ������������. ����� ������ ���� ISR ��������� ��������� ������ � ��������������� ������������
���������� � ����������� ���������� �� ����������. ������, ������� ���������� ��
����������� � �� �����, ��� ��� ���������. ���� ���� �� �������������� �������
������� ������� ����� ������������������ ���� � ��������� READY, �� ���������� ����� ���������� � �������� ���� ����
����. �������� ������� ���� ����� �� ��������� ISR/DPC, ������������� � Windows
NT, ����������� � ���, ��� ��� DPC ���������������� � ����� � ���-�� ������� ����������, ���
�������� ������������� ���������� ������ DPC ������ � �������� � ��������������� �������� ���������
����� ������������������ ����������.
��������� ������ ������������
����� ������� ��������� �������������� (interrupt latency � sheduling latency), ��������� Neutrino ��������� ���������� ���� �� ����� �������� ����������
�������, �� ��������� �� ������. ������������ ����� �������� ���������
���������� ����� ���������, �� ��������� ��������, �������� ���������� � �����
������ ���������� ���� ISR ����������� ��� ���������� � ����� ������� ����������
�����������.
���.
10 - ��������� �������������� Neutrino ���
��������� ����������
��� ����� ����� �����
��������������, ��������� Neutrino ������������� API ��� ��������������
����������� ������� ���������� � �����������. ����� ����� ������ �� � ����,
���������� ������� ����� �������, ����� �� ������ ISR ������ �� ��������, � ��� ������ ����������� �� �� ������
����� � ������������, ������������ �������������, � �� � ������������ �
������������ ���������� ����������.
�������, ������ �������
����������, ���� ����� ����������� ��������� ���������� �������
Neutrino, � ���� ������������� ����������
���������� (NMI). �������, ��� ���������
�������� ��������� ������� ������� �� ����������� �����������, ����������
���-��, ��� � ����������, ��������� ��������� ������� ���������� ����� ���-��,
��� ��������� ����������. ��-����, ���������� ��������� ��� ��������� ����������
� ��������� ������� ���������� ��������� ������.
������������ �������
���������� �������
��� ������� �� ����� ������� Neutrino, ��� ������� ������ ���� � �������� ����� �������� ���
������� ����� ������ �����, ��� �������� ������� ���������� �����������
����������� ���������, ��� �������� �������������� Internet-�������. ������, ��� ����������� ������� ����� ����
������������� ��� ������������, ��� ������������ ������ ��������� ��� �������
������� ����������, ����������� �������, ��������������� ������������
����������� �� ����������� ������������� � ������ ������ ����������� �
������������ ��������, � ��� ����� ������������� ������.
����������� ����� ��
�������� ����������������, ������� ������ ������� �� ���������� ��������,
�������� ����� ��� ��� ���� �������. ��������, ���� ����������
Internet-������� �� ���� QNX/Neutrino ������
����� ���������� ����������������, �� ���� ����� ��� ��������, � ��� �����
Internet-����������, ������� ������� ��� ���� ���� QNX � ��������� �� ������. � ����� ������ QNX �������� ������������ ��, ��������������� �� �������
��������� �������, �����-����������� ������� ���������� �� ��� ������������
���������� Internet-�������. � �� �������
�������, ��� Neutrino ������ �������� ���
��������� ��. ����������� ������ � ��� �������, ����� �� �������� �� �����
���������, ������ ���, ��� � ������� ������ ������� ���������� ������
J . �� � �����, ��� Neutrino ����� ���������, � ������� ��������������, ���
����� �������� ����� �����. ������ �� ���������������� ��������� �
����������� ������������ ���������� �������.
����������� ����������
Photon
����������
��������� �������� ��������� ������������ ������, ��������� ��� �������� ������
��������� �������. ������ ����������� �� ��� ���������� ������ ��������
���������� ������������ ���������� ������������ (GUI) ��� ������������ ������,
��������� ������������ ����� ����� ������������ �� ������������ realtime
executives. �� ��������, ��� �������� ����������
����������� GUI, �������� RtLinux,
�� ��������� ������� �� ����� ������������ ������,
��������� ���������� ������������ GUI, ����
X11, ������� � ����� �������� ��������� ��������, �������� ������.
������� ������ Neutrino, ���
������������ �������� � �� ���� �������. ��� ���������� GUI, ���������� � ������������� �� ������������ ��������
��������� �������, ����������� ��� ����� ��� ���� ������ � Photon. ����������� ����� �������� ����������� ����������, ��
�������� ���� � ��������� ����������������� ���������� ����� ������� ��
X11/Motif, �� ������ �������� �� ��������
��������. ����� ��������� ��� ��������� ��������� ���������� ��� �� ����������
�������� ����������� � ���� ����� ��������������� ����.
� ��� ����� �� ���� �������
���������� ��������, ������� �� ���� �����������. �������������� �����
���������� � ������ �Photon microGUI: �� ��
������� ��������, �������������� � ������� ���� �ʻ, No. 11/1996.
������, �� ������� ���������� ���
������ ������ Photon ����������� � �������
����������� �������, � ������� ��� ���� ������� ������ ������������������. ���
���� �������� ������������ �� ���:
- ����������� �����
���������������� ���������, ������� ����� ������ ����� �����������, ����������
�������������� (�� ������������ int10) � ������������ ��������� ������� High
Color � True Color ��� ���� ���������. ������ �������������� ���������
���������� ������ �������� ��� Matrox Millenium, ATI Rage 3D/3DII, IBM XGA,
Trident 9470
- ��������� ���������
�������������� ������� ������� Bitstream TrueDOC, ����� ����-������,
�������������� ������ ������� ���������� � ����������� ���� � ��������� �����,
� ������ ��������� Unicode (UTF-8), � ����� �������������� ������ � ������� ��
����������;
- ������������ � ��������
���������� ��� ������ ����������� ����������, �������������� ���������
���������� ������ ������������� �����, � ��� ����� ��������;
- ����� �������, �������� PtHTML,
PtTree, PtDivider, PtMenuBar, PtGrid, PtFontSel, RtProgress � ��� ������,
������� ����������� ����������� ����� �������� Motif 2.0;
- ������� ��������� ���� �
������������ ��� �������� ����������� �������� � ��������� �� � ���������
���������� PhAB, ������� ����� ������� ���� ������� �����������;
- ����� ����� ����������,
���������� File Manager, CD Player, Audio Player, Calculator, Personal
Information Manager;
- ����������� ���������
���������������� �����������;
- ������� XinPh, �������
������������ ������ ������� X Window � ���� ������� Photon;
- �����-��������� ���������� ���
��������� ��������� ������ (��������, ���������, ���������).
� ��������� ����� ���������
� ������� ����-������ Photon 1.12, ������� ����� ��������� ��� ����� �������,
�������:
- ��������� ������ �� ���������
PostScript, Epson � Hewlett-Packard, Canon;
- ��������� ��������� Drag'n'Drop
�� ������ ��������;
- ����� ������� (PtNumber,
PtPrintSel, PtFileSelector � ������);
- ������������� �������
�������������� ������ VESA 2.0 (����� ����������� ��������, ������� �����
��������� � ����� "flat" ������);
- ����������� �������� �������,
�������������� ��������� Unicode.
- ���������� API ��� ���������
����� ������������ Neutrino;
������ ������� Photon ��� Neutrino ���������� � ������ ����-������������, �� �� ������
��������� ������ ��� ���������� ��� �������������.
��������� ������������� �����
������� �����, ��� ����������� "�������" ������� � ������������ �������
�������������. C ������� ������ 1.12 ��� ������ ������� ������������� �
��������� ���� Windows CE � �������, ���������������� �� ���������� �
����������� �����������.
������� ������ �
�������� �������
�������
������ � Neutrino �� ������ ������
����������� ������ ���������� TCP/IP. ������������ Neutrino ������ ������������ �������������
������ ����� �������������� ������������ ������������� ����� TCP/IP, ��
���������� ����� ����������� ����� ���������� ������, ��� ������� ������������
���������� ������� ������ � �������� ����� �������� ���������. � ���������� ���
������� ����������� ������ ����� ��� ���������� ������ � Micro TCP/IP, �������
�������� ����� ����� 40Kb ����, �� ���� ��������� �����������. ��� ��� ��, ����
����� ��� ����������� TCP/IP, ��������
������������ �������������, �����
������������ ������ �������, 100% ����������� � BSD-sockets.
Neutrino ����� ����� ������������
������� �������� FLEET, ������������ ������
� QNX, � ���������� ��������������������,
����������� ��������������������.
�������� ������� � Neutrino
����������� �����, ��� � QNX. ������� �������������� ������� � �� ������
����������������� � ������� ���������. ��� ����� ���� �������� ������
�������������� ���������� �������� � ��������� ���������, ����������� �
QNX. ���� ��� �������� �������� �������
��������� � �������� ���������� ��� ��������� ������� ����������� ������, �� �
Neutrino ��� ��������. ������ ����������
���������� � ��������, ������� ���������� ��� �������� ������� (�� ����������) �
����������� ��������� ��������������� �������� �������, ������������� � ����
����������� ����������.
���������� ������, �������� ������
� Neutrino �����. �������������� ���
�������� �������, ��������� � QNX, � ����� ����������� �������� ������� Proc.
��� ����������� ������ ������� � ������� ������������� ��������� Neutrino �����
������������ �������� ������� CIFS (Common Internet File System), �������
������������ ����� ���������� ������� SMB, ��������� ������������ ����� ������ ���� (��������
DNS) ������ Netbios NS. ����������, ��� �������� ������� ����������� � ������
����������� ������ � ������������ ��������, �� ���� ����� ���������. ��������,
��� ��� ��������� �������� ������� Tiny QNX (POSIX) �������� ����� 12Kb,
���������� �� ���� ��������� �����������. ��� ������� �������� ������ �������
��������� QNX4, �� �� ����� ���������
������� ������ � ����� � ������� ������� 16 �������� (����� ������, �� �����
������ � ���� .inodes)
�������� ���������� �
�������������
��� ������
����� ������������ ������� ���������� ������� ������������������ �������
���������� ����������. � ������� �� ����������� ������ ����� UNIX�, Neutrino
����� ���� ����������� �������� ���������� ������ �������� ����������� GCC �
��������� � ��� ��������. ������, ��� �������� ������ �� ���� � ��� ������
���������� - ��� ���������� Watcom C/C++ 10.6. ����� ���������� �������� ���
����������� �������� Watcom, ����� IDE (����), ������� �� ������������� ������
����� �������� ����� ������ ������� Willows ��� QNX/Photon.
��� ������� (Willows) �����������
����������� ���������� ���������� ���������� � �������������� API Win32 ���
QNX/Neutrino/Photon. ��� ���� �������������� ��������� �������� �������� (DLL ��
������� ����) � ���������������� ���������� ���������� Windows (16-������) �����
��������. ������, ������������������� ���������� ����� ����� ������������ �
�������� (��������, ��� ����� �������� ������� ��� � Windows) � ������
������������ ������������ API ������� QNX/Neutrino ��� ���������� �����
��������� ������� � ������ �����������.
����� ���, ���������� GCC 2.7.2
��� ������� ��������� � QNX, ������������ ����� ��������� � Neutrino. �������
������ � ��� ��������� ����������� ���������� C �� Unix (libc). ��� ���������
���������, ��� ����� ������������ �������� ���������� � ������� ����������
Watcom. ������ ���� ����� ������� �������� ���� � ��������� �������� ����������
�� Unix � ��������� QNX/Neutrino � ������
�������������� �������� �������������� ���������� ��� Unix.
����� �������, �������� � �������
QNX/Neutrino ����� ����� ����������, �� ������� ����� ����� ��� �������
��������� ���������� � �� Unix � �� Windows! ������� ����� ���������� �������
������-����������, ������� �������� ������������� ����������
QNX/Neutrino ��� Windows NT.
�������� ������ � Internet �
���������� Internet-����������
������� ����������� �� �� ����� ������������ �������
Internet�, ��������� ��� ����� � ������ ����
��� ����� ������������ � �� ��������������� ����������������, � ������� ���
����� ��������. � ��������� Internet ���
������ �������� ����������, �� ����������� ����, ��� � ����� ����� ���� ������
�������� ���������� ���������� ������ � ������ ������� ��������. ���������
QNX/Neutrino � ����������� ������� Photon ��������� ���������� ����� �����������
��� ����� ���������� ����������
������ ��� Internet-��������� �����������
������� (handheld devices). ����� QSSL
������������� WEB-browser ����� Spyglass (�� ������� ����� ������� MS Internet
Explorer) � ����������� �������� ���������� ���������� ��� ������ � Internet
(Voyager Pro), ���������� web-�������,
mail/news-������ � ����������� ���������
������������ ���������� � ISP.
���� �������� �������� �����
��������� � �������� �����, ��� ��������� Internet Applliance Toolkit
(IAT). ������������ ����� ������������ ���� ��� ��� ��������
���������������� ������ ���������� �������� (browser, mail, news), ���������������� ��� ���������� �����. � ����������
������������ �������� ���������� ����������� ��������� ���������� ������� �
���������� Internet-���������� �� �����
�������� �����, ��������� ��� ��� �� ����������� � ��� ��������������
���������������� ��������� � ������� ����������� �������� ����������
(Photon Application Builder).
��� ������������ ������������ ����
���������� �� WEB-������� QSSL http://www.qnx.com/iat ��������� ����� ��������� - QNX Demo Disk. �����
�������� ����� ������� ����� 1.44 �������, ���������� ���������������� ������
�������. � ���� ������� ����� �����������, ������� ���� �� ������������,
���������� ���� 6Mb ����������� ������. ����� �������� �� ������� ��� ���
������� ��������:
- ������������� POSIX-�����������
32-������ �� (�������, �� ���, � ������ ����� ��),
- �������� ������� � Internet
(TCP/IP, ����������� ��������� ��� ���������� � ISP),
- ����������� ��������
Photon,
- Web-�������
Voyager,
- Web-������, ����� ������� �����
�������� ������������ �� ���,
- ��������� �������� (�
���������� ������� � �����),
- ������� ��������
�������,
- ��������� ���������
��������.
�������� ������� ����� ��������� �������� (������������ � ���������),
����� ������� ��� ���������� ������� ������ �� �������. ������� ��������, ���
��� �������� ���� ������� ������������ ���� ������� QNX � �� Neutrino, ��� ��
�������� ������������� ���������� ���.
����� Intel �����������������
���������������� ������ ������� QNX (�������� �� 30 ����) � �����������
��������� Photon � ���������� Internet Appliance Toolkit �� ��������� EXPLR2,
��������������� ��� ���������� � ������� ���������� ������. �������� �����
�������� ���������� ������������ �� ��������� (Design Reference Kit, � ��� �����
� ����������� ����) �� ����� Intel, ����������� �� �� WEB-������ http://http://www.explr2.com/.
����������
Neutrino �� �������� ������������ ����� ����������� � �������
������������ ������. ���������� ��������� ������ ���������� ��������, ���������
�� ������� ��������� �� ��������� ������� � QNX (��������� � ����� �����������) � �������� ��� ����������
� �������� ��������� �������. ����� �������, ��� L3/L4 � MkLinux ����� �����
���������� ������������ ����� ������������ ������� Neutrino, �������� ��������� ��������� ��������������� EDF
� ����������� ��������� ���������� Linux
(������� ���������� �����). ��� �� �����, �� ����
�� ���� ������ �� �������� ��� ���������� �� ������������ �������� �
������������� ���������, ��������������� ���������� ������� ��� ����� ������
��������� �������.
��� Neutrino ���������� �� QNX?
��� ��� ������ ������ � QNX �� ����� �������������� �����
������, ��� Neutrino ����� ��������� �����������. �� ��� �� ��� ����������� �
������ 1.0, �� ���������, ��� ��������� ������ 1.1 ����� ������������ �������
����� ����������� ������������. ����������� ������� ���� �������� �����������,
����� ����� ���� ��������������� � ������������ ������������:
- ������� �������
����������������, ��� ���� ��� � �����
- ����� �������
������������������, �� ���� ��������� ����������� (����).
- ������� ���������� �������
����������� (256);
- ����� �������� �������������
(condvars � mutexes), � ���������� ������������ �����������;
- ��������� ������������� �
BIOS.
- ���������� ��������
������������ ������. (Pulses)
- ��������� SMP;
- ��������� ������, ������������
� ������;
- ��������� UNIX-domain sockets �
100% ������������� � BSD-sockets;
- ����������� ������ �����������
������� (ELF, � ������������ ��� ������);
- ��������� �����������
����������� ��������� (DLL);
- ���������� ������� ������������
(���������� ���������);
- ������������������� ��������
�������;
- ��������� ����������� ��������
������� Proc;
- ���������������������;
- ��������� Java;
- ������������� ������� �� ����
����������� ��������� �������;
- ����� ������ ����, �� ����
����� ��������� ���������;
�������� ������� ������? ������������� ������������
��������� ���������, ��� ��� ��������� ������ �������� � ���������
��������������� � QNX 4.x. ������, ������������ �������� ��� ����� ����������
100% ������������� ���������� �� QNX � Neutrino. �� ������ ������ ��� ��� ��
�������, �� � �������� ��������, ������� � �������� �������������. ����� ����,
������� ��� �� ��������� ���������, ��������������� ���� ������ ������ ������
Neutrino - �������� 1998 ����.
QNX ��� Neutrino?
����� ������ � ��������� ����� ���������
��� � ���, ��� ��� ����� ���������� QNX ��� ����� ����������, ��� � � ���, ���
������ �������� ������ � ���� �������. QNX4 �������� �� ������ ������ ����� ������ ��������, � �����
������ �������������� ������������. ��� ��������� ��������, ������������� ��
����� ������� ����� ����� ��������. ������, �� ����������� ���������� �������
���������, ��� � Neutrino, ��� ��������� �������� ��������� ���������� ���
����������� �� ����������� ��������, � ������ Neutrino.
�� ��������� ���� �����������,
����� ������� ��������� ������. ���, ��� ��� ���������� ���� ������� ���
QNX4 � ������������ �������������
�������������, ������� ���� ���������� � QNX4 � �� ������� �� ��������. ��� ��, ��� ������ ��������
������������� ������� ��������� ������� ��� ���� ����� �����������, ����� �����
��������������� �� Neutrino. ������������ �� ������ ���������� ��������� � �����
������� �������� � �� ����� ������������ ������ ��������, ����������� �� �������
����� ��� ����� ������������ QNX4, � ��-��
����� ����� ����������� ������� �� ����� �����.
�� ������ ������ API ���� �������� ����� ������������ ���������������� �����,
������ ������������� QSSL ����������, ���
��� �������� ����� ���������. ��������, ����� �������� ������ ����� �������. ���
������ � ������� Photon, ������� �����
�������������� ��� ����� ��������, ��������� �������, ����������� �������� �����
QNX � Neutrino. �������, ��� �� ����� ���� �������. Neutrino
���������� ����������� ���� ���������
����������������, � ������� �������� �� ������������� ���������������, �������
��� �� ������������ ������������� �������� ������ �������� ������������
������������, ��������� � QNX4.
��� ��� �����, ������� ����������
�� Neutrino, �� ������� ��������, ���
������� ����� �������, ������������� � ����������� �� �����������
POSIX, ��� ������ ������ Neutrino
������ ��������������� ������������� ������������
��������. ������������ ����� ������ ��������� ������� ��������, ��� ��� ������ �
�������� ������������� �������� ��� ��� ������ ������������ ���������
����������� ������� (realtime executive) c ��������������������� API
� ����� �������� ������� ���������������
�������������. ������ ������� ������������ Neutrino ������� ������� ��������� ��������������� ������ �������,
�� ������� ���� ������������ ��� ��������������� �����, �� ��� ��������� ���
���������� �� ���������� ��������. �� �������� ����� Intel � ��������� ��� ������������ ����� ������� ��������� �
QSSL � �������� �������� �� Neutrino
� �������� �����������. �������� �� �������
����������� �� ��������� ������� iRMX, Intel ����� ���������� �������� � ���,
��� QNX/Neutrino �������� ��� ���
�Realtime OS of preference� �
��������� ����� 300 ����� ��������� �� ��������� ��������� �� �������� ��
�������� QNX/Neutrino.
��� �� �����, �������������� �����
QNX4 � �����-�� ���� ���� ���������� �����������, ������������� ���� ��������.
�� ���������� �������������� QSSL �
���������� ����� ����������� ���������� ���������� ����� ����� �������
(QNX4 � Neutrino), � ��� ����� � ����� ������ ���������� ������� �
�������������� �������, � ���� �������, ����� Neutrino ����� ������ �������� QNX � �������� �������� ������. ������ ����, ������ ��
Neutrino ������������� � �����������
������������ Unix-��������� ���
Windows NT �� ����� ����������������������
��������, � ������ �� ��� ������� ������� ��� �������� ����� �������������, ��
�� ����� ���������� ������ ��������� ������� �� ���� �����������
�����.
����, ���� ���������� ��� ���� �
���������� �������� WEB-������ �����
QSSL http://www.qnx.com/, ��� ����� ��������� ����� � �������� �������������
���������� ������� QNX � ����� �������������
��������. ���������� �� ������� �����, � ��� ����� ��� � ������ ��� ������
�������� �� ����� ������� http://http://www.infomarket.ru/, � ����� �� ������� ������������ ������������� QNX
� ������ � http://www.swd.ru/.
QNX�,
Neutrino� �
Photon� �������� ���������
������� ����� QNX Software Systems Ltd.
����������� � ������ � QSSL, ������������ � �� ��������� ����������.