� ���� ������� �� ��������� �� ��������� ����. ��������, ��� �� �����
����������, �� � ��� �� ���� ������� ���������. � ��� �� �� ��������� ��������
��� ���������� ����� ����������, �� �������, ��� ����� �����. � ��� �� �������
��������� ��� ����������� ����� ���������� 8086.
� 4-� �������, ����� � ���������� ���, ��� ������ boot sector, � ������� ����
���������� ��������� ������, ������� ������� � ��������� Bug Maker'�, �� ��, ���
������� �� ��� ��� ���������. � ��������� load_sector �, ������ �����, ����
����� ������� �� ���������� ������� �� �������. ��� ������� ���������
����������� ������� div, �������������� �������� ax � dx:ax �������� ��������
cwd. ������ ���� ������ ��� ������������ ���������� �������� �� ������ ����� ��
��������� 2880, �� �������, ��������, ��� ax ������ �������. ��, ��� �� �����,
������ �������������. ���� �������� ���� ����� ������ ���:
load_sector: push ax push cx mov cl, 18 div cl mov cx, dx inc cx
������������, � ������ ����� ������� cwd, � ������ ���� �� ���� cl. ��� ���,
� ���� ��, ���������� ��� ��� �����. :)
�� ��� ��� �� ���.. ��� ��������� boot sector'� � �������, ��� ��� ������ ��
������������� ������. ��� ��� � ����������. �� ���������� �� ������ ��� ��������
kernel. ���� ����� ���������� ��������� setup. �������������, boot sector'�
�������� ������ ������� setup � �������� ���... ���� ���� ������� �����
���������� ��������� ������ ������, � ��� �������� ����� 250 ���� �� ������
�����������... :)
� setup ������ ����� ����� ���������� ������. � ���� ����� �������� ��������� �������� �������, ��������� ����������� �������� ������. �� ���������� ������ ���������, � setup'� �������� ��������� ������ ���� ��� ��������� �������������� ��������, ������� ����������� ��� ��� ����������� ������ �������.
�� �� ���� �����. � ������ ���������� ����������� � ����������
�������.
� ������� �������, ����� � ������� � ������������ � ������������� �������� �
�� ����� �� �������� � ������������� ������� ���������� (Interrupt description
table ��� IDT). ��� ������� ��� �� ������� �� ������������, �� � ������� �� LDT
� GDT � ���� ������� ����� ����������� ������ �����. � ���������� ������ ���
���������� ���������� ����� IDT. ������������ ������� �������� ���������� �����
�� ������������.
������ ������������ ������ ���������� �� ����������� ��������.
��� ������
���������� ���� ������.
7 | 6 | 5 | 4 |
�������� 31-16 | ����� ������� | ���������� ���� ����� | |
3 | 2 | 1 | 0 |
�������� | �������� 15-0 |
� ���� ���� ������� �������� ������� ����������, ������� ������ ���� ���� CPL
�������� ��������, ��� ����������� � ��������������� ��� � ���������
�����.
�������� � �������� ������ ����� ���������� �������, ��� ���� ��������
������ �������������� ���� � GDT ���� � �������� LDT.
�������� "����������
���� �����" ������ ��� �������� ���������� � ���������� �������, ��� ����
��������������� ���������� ���� ���������� �� ����� �������� ������ ���������� �
���� ������ ���������� ���������� �������. ��� ���� ���������� ������ ������� 5
��� ���������� �����. ��������� ���� ������ ���� ��������.
���������� �
������ �����, ���� ���������� �� ���������� � IDT, ����� ������ �������� call
far, ��� ���� ����������� � ������� �������� ������������. � �������� ������
��������� �� ���������� ����� ������.
���� ���������� � ���� ������� ����� ���������� ������, ���������� �����
����� ������ � ����� ���� �������. � ������� �� ����� ������ ��� ����� ��
�������� � ���� ���������� ���� �����, ��������� ���������� ������ ����������� �
�������� � ��� ���������� ����� ���� - ������������. ��� ����� ������������
������ ������ � IDT.
���� ������ �������� � ���� ����������� ������ ����������.
�� ������ �
������� ����� ����������� ������������ �������� TSS (�������� ��������� ������).
���� ���� ������� ����������� ���������� ������ ������, �� � ���������������
�����. ��������� ���� ����������� �� ������������.
��� ������ ������ �����
���������� ������������ ��������� ������. ��� ���� ���������� ������ �����������
� �� ����� ���� ������� �� ��� ���, ���� ��������� ������ �� ������ ��
���������� �������� iret.
��� ������� ������� � ������ � ������� � ������� �������, � � ���� ��� �
������� �� ����. � ��������� ������� �������� ��� ���������� �����
��������.
��� ����������� ������� �� ����������� ������ ��������, ��������������� ���
���������, ���������� ��� ���������� "����������� ����� ���������� 8086". ���
���� ���������� �������� ��������� �������������� ������� ����������� ������. �
��� �� ������������� �������, ������� ����� ������������ ��������� ���
���������� ������, ��� � �����������. ��� ���� ��������� � ����������� ������
�������������� ������������ ��� 8086 ������� - �������/��������.
��������� � ����������� �������������� ����� IDT, �� ������� ����������
��������� ������ ����� ���� ���������� �� �������, ����� ������� ����������� �
IDT.
��������� ����������� ������ � ������ ��� �� ����� ���� ��������� �����
���������� ����������� ������. ��� ��������� � ����������� ������ ����������
����������.
��� ������� ����� ���� ���������� ��������� ���������� ������
���������� ����������� ����� � ����� �������������� �����. �� �� ����
������������ �� ����� ������������, � � ����� ������ ����� ������������ ��
��������� ������������� ����������� ������.
�� ���� � ������� ����������. �� ��������� ��������. ������.
���������� 2001-08-10 ��� 3692 �����������.
������� ��������
Dron