7.2. Программа p2
Запишем в центральный процессор N3 пакетов “Запрос Bызова” ”, поступивших с канального процессора j=5 (т.е. КПР=5), в первые массивы очереди свободных блоков Освоб. В контрольном примере N3=3.
На рис. 3 показано формат полей массива пакета с начальным адресом A(i) “Запрос Bызова” (ЗВ), размещенного в Освоб.
Число байт |
2 |
2 |
30 |
Начальный адрес A(i) |
Первое адресное поле |
Второе адресное поле |
“Запрос Bызова” – логический канальный номер LCN 12 бит (биты <1- 8> 1 байта и биты <5-8> 2 байта), идентификатор пакета – 4 бита 1011 (биты <1- 4> 2 байта), адрес вызываемого – 14 (1+3+10) байт, адрес вызывающего – 14 (1+3+10) байт |
Рис. 3. Формат полей пакета “Запрос Bызова” в массиве свободного блока очереди Освоб.
Примечание: биты <5-8> 2 байта LCN являются младшими.
Установим значение полей этих пакетов “Запрос Bызова” .
Значения LCN этих пакетов запишем в виде следующего одномерного массива - LCN (i) = 179, 195, 201. Здесь i- номер пакета ЗВ.
FOR i= 1,2…..N3 DO
Записать в поле пакета “ЗВ” с начальным адресом массива A(i): биты <1-8> 1 байта и биты <5-8> 2 байта:= LCN(i), биты <1- 4> 2 байта:= 1011; в каждые 14 байт с начиная с третьего записать значение i (адрес вызывающего абонента), в каждые 14 байт с начиная с 17-го записать значение i+1 (адрес вызываемого абонента),
END
В результате в N3 пакетах “ Запрос Bызова ”, находящиеся в Освоб с начальными адресами массивов A(1), A(2), A(3), записаны соответственно следующие логические канальные номера LCN=179, 195 и 201.
Перенести массивы этих N3 пакетов из Освоб в очередь массивов принятых пакетов ОЗВпм (5) с канального процессора j=5, т.е. КПР=5.
Откорректировать очередь свободных блоков Освоб. , создать ОЗВпм (5) и характеристики Нсвоб. , НЗВпм (5). На рис. 4 приведена характеристика этой очереди Нсвоб. Корректировка и создание очередей здесь не показана.
АНсвоб.
-
А(N3+1)
А(N1)
N1- N3
Рис.4. Характеристика Нсвоб.
На рис. 5 приведена характеристика очереди НЗВпм (5).
АНЗВпм (5)
-
А(1)
А(N3)
N3
Рис.5. Характеристика НЗВпм (5)
D:=D+1
GO TO DISP7
7.3. Программа p3
Создать очередь свободных номеров Освн из очереди свободных блоков Освоб. Принять число свободных номеров для всех вариантов и контрольного примера Y=20. . Корректировка и создание очередей здесь не показана.
Установить характеристику Нсвн очереди свободных номеров Освн (рис.6)
АНсвн
-
А(N3+1)
А(N3+20)
20
Рис.6. Характеристика Нсвн
- откорректировать очередь массивов свободных блоков Освоб. На рис. 7 приведена характеристика этой очереди Нсвоб.
АНсвоб.
-
А(N3+20+1)
А(N1)
N1- N3 - 20
Рис.7. Характеристика Нсвоб.
На рис. 8 приведен формат массива блока свободных номеров.
Байты |
2 |
2 |
2 |
Значение |
Начальный адрес предыдущего блока |
Начальный адрес следующего блока |
Значение свободного номера для записи LCN |
Рис. 8. Формат массива свободного номера
Установить значения одномерного массива свободных номеров для шести (для упрощения из 20) значений LCN1 (i) = 3201, 220, 4072, 3701, 475, 432.
Записать в шесть массивов блоков очереди свободных номеров Освн эти значения свободных логических канальных номеров LCN
FOR i= 1, 2…..6 DO
Записать в поле значения свободного номера массива свободных номеров (рис. 8) с начальным адресом А(N3+i):= LCN1(i)
END
Заменить значения логических канальных номеров LCN во всех N3 принятых пакетах ОЗВпм (5) с канального процессора КПР=5 на значения, взятые из очереди свободных номеров Освн.
FOR i= 1,2…..N3 DO
Записать в поле пакета “ЗВ” с начальным адресом массива A(i): биты <1-8> 1 байта и биты <5-8> 2 байта:= А(N3+i)
END
- откорректировать очередь Освн и характеристику Нсвн ..
Корректировка очереди здесь не показана. Массивы свободных номеров, начиная с А(N3+1) по А(N3+ N3) пересылаются в отдельную очередь занятых номеров, которая для упрощения здесь не показана. На рис. 9 показана характеристика Нсвн.
АНсвн
-
А(N3+ N3+1)
А(N3+20)
20- N3
Рис.9. Характеристика Нсвн
D:=D+1
GO TO DISP7