РПЗ (23 вариант), страница 12
Описание файла
Файл "РПЗ" внутри архива находится в папке "23 вариант". Документ из архива "23 вариант", который расположен в категории "". Всё это находится в предмете "эксплуатация автоматизированных систем обработки информации и управления (асоииу)" из 9 семестр (1 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "эксплуатация асоииу" в общих файлах.
Онлайн просмотр документа "РПЗ"
Текст 12 страницы из документа "РПЗ"
NPC := StrToInt(Form2.Edit1.Text);
NServ:= StrToInt(Form2.Edit6.Text);
MTQueryPC := StrToInt(Form2.Edit2.Text); // время дообработки запроса
MTFormQueryPC:= StrToInt(Form2.Edit3.Text); //формирование запроса
MTTChannelDirect := StrToInt(Form2.Edit8.Text); //время передачи в прямом направлении
MTTChannelRevers := StrToInt(Form2.Edit9.Text); //время передачи в обратном направлении
MTQueryServer := StrToInt(Form2.Edit7.Text); //обработка на сервере
Precision := StrToFloat(Form2.Edit5.Text);
IterationNumber :=0;
tcs := MTQueryServer; // время дообработки запроса
C := NServ;
N := NPC; //кол-во рабочих станций, серверов
T0 := MTQueryPC; // время дообработки запроса
Tp := MTFormQueryPC; //формирование запроса
K1 :=StrToFloat(Form2.Edit11.Text);
K2 := StrToInt(Form2.Edit13.Text);
delta1 := 0;
Tk := 0;
Tc := 0;
Lf := 0;
B := 1;
Lf1:= 0;
tk_ := 0.5 * (MTTChannelDirect + MTTChannelRevers);
// выходные данные
Ppc := 0;
Pk := 0;
Pc := 0;
Tcircle := 0;
L := 0;
Treaction := 0;
// шаг 1
Lf1 := K1*GetMinimum(1 / (2 * tk_), C/tcs, 10000) * (NPC - 1) / NPC;
while true do
begin
// шаг 2
Tk := 2 * tk_ / (1 - 2 * Lf1 * tk_);
Tc := tcs / (1 - GetPower(( Lf1 * tcs / C), C));
// шаг 3
Lf := (N - 1) / (T0 + Tp + Tk + Tc);
// шаг 4
Delta := (Abs(Lf1 - Lf) / Lf);
if ( Delta < Precision) then Break;
// шаг 5
delta1 := (Lf1 - Lf) / K2;
Lf1 := Lf1 - delta1;
end;
// шаг 6
Tk:= 2 * tk_ / (1 - 2 * Lf1 * tk_);
Tc := B * tcs / (1 - GetPower((B * Lf1 * tcs / C), C));
Tcircle := T0 + Tp + Tk + B * Tc;
Ppc := (T0 + Tp) / Tcircle;
L := N / Tcircle;
Pk := 2 * L * tk_;
Pc := B * L * tcs/C;
Treaction := Tcircle - (Tp);
// вывод
Form2.Edit4.Text := FloatToStr(RoundTo(Pk,-2));
Form2.Edit12.Text := FloatToStr(roundto(Ppc,-2));
Form2.Edit14.Text := FloatToStr(roundto((T0 / Tcircle),-2));
Form2.Edit10.Text := FloatToStr(roundto(Tcircle,-2));
Form2.Edit15.Text := FloatToStr(roundto((NPC * Ppc),-2));
Form2.Edit19.Text := FloatToStr(roundto(NPC * (Tp / Tcircle),-2));
Form2.Edit18.Text := FloatToStr(roundto(Treaction,-2));
Form2.Edit16.Text := FloatToStr(roundto((Pc/2),-2));
Form2.Edit17.Text := FloatToStr(roundto(L,-2));
/// конец
result:= true;
end;
procedure TForm2.Button1Click(Sender: TObject);
begin
Calc();
end;
procedure TForm2.Button2Click(Sender: TObject);
begin
Close();
end;
end.
-
Интерфейс программы
Главная форма программы имеет вид:
Рис9. Главная форма программы
Вводим исходные данные и нажимаем кнопку «Вычислить»
-
Результаты аналитического эксперимента.
Таблица 38. Результаты аналитического эксперимента.
Номер эксперимента | 1 | 2 | 3 | 4 | 5 |
Исходные данные | |||||
Количество рабочих станций | 31 | 31 | 31 | 31 | 31 |
Среднее время дообработки запроса на РС | 310 | 210 | 310 | 310 | 310 |
Среднее время формирования запроса на РС | 310 | 310 | 210 | 310 | 310 |
Среднее время передачи через канал в прямом направлении | 5 | 5 | 5 | 5 | 5 |
Среднее время передачи через канал в обратном направлении | 5 | 5 | 5 | 5 | 5 |
Количество процессоров | 2 | 2 | 2 | 2 | 2 |
Среднее время обработки запроса на процессоре | 10 | 10 | 10 | 20 | 10 |
Результаты моделирования. | |||||
Загрузка рабочей станции | 0,83 | 0,92 | 0,92 | 0,78 | 0,82 |
Загрузка пользователя рабочей станции | 0,41 | 0,23 | 0,69 | 0,39 | 0,41 |
Среднее количество работающих РС | 5,8 | 6,4 | 6,44 | 5,5 | 5,77 |
Среднее количество РС формирующих запрос | 2,9 | 1,6 | 4,83 | 2,7 | 2,9 |
Загрузка канала | 0,42 | 0,23 | 0,23 | 0,39 | 0,41 |
Загрузка процессора | 0,21 | 0,13 | 0,13 | 0,39 | 0,2 |
Среднее время цикла системы | 167,7 | 304,3 | 304,3 | 179,3 | 169,6 |
Среднее время реакции системы | 97,7 | 234,3 | 94,3 | 109,3 | 99,6 |
-
Имитационное моделирование сети.
-
Формализованная схема.
-
Рис.11. Формализованная схема.
ОАдб – обслуживающий аппарат (ОА), имитирующий работу рабочей станции по дообработке запроса к серверу.
ОАф – ОА, имитирующий работу рабочей станции по формированию запроса к серверу.
Бcpu – буфер (Б), имитирующий очередь запросов к процессорам сервера.
ОАcpu – ОА, имитирующий работу процессора по обработке запроса от рабочей станции.
Бдм – Б, имитирующий очередь запросов к дисковым массивам сервера.
ОАдм – ОА, имитирующий работу дискового массива сервера.
-
Листинг программы.
INITIAL X$STATION_N,9 ;количество рабочих станций
INITIAL X$STATION_TD,90 ;дообработка запроса
INITIAL X$STATION_TF,90 ;формирование запроса
INITIAL X$SERVER_CPU_T,10 ;время работы процессора
INITIAL X$DISK_N,2 ;количество дисковых массивов на сервере
INITIAL X$DISK_T,20 ;время работы дискового массива
WS_D STORAGE 9
WS_F STORAGE 9
SERVER_CPU STORAGE 1
DISK_N FUNCTION RN1,D2
0.5,1/1,2
EXPON FUNCTION RN1,C23
0,0/.1,.104/.2,.222/.3,.355/.4,.510/.5,.69/.6,.915/.7,1.2/
.75,1.37/.8,1.5/.84,1.83/.88,2.12/.9,2.3/.92,2.52/.94,2.82/
.95,2.98/.96,3.2/.97,3.5/.98,3.9/.995,5.3/.998,6.2/.9995,7/1,8
*******************************************************************************
GENERATE ,,,X$STATION_N
WS_FORM QUEUE QSYSTEM
QUEUE QFORM
*******************************************************************************
;формирование запроса
ENTER WS_F,1
ADVANCE (Exponential(1,0,X$STATION_TF))
LEAVE WS_F,1
*******************************************************************************
DEPART QFORM
;обработка на сервере
;процессоры
SVR_CPU ENTER SERVER_CPU,1 ;занятие ЦП сервера
ADVANCE (Exponential(1,0,X$SERVER_CPU_T))
LEAVE SERVER_CPU,1
;диски
SVR_DISK ASSIGN 2,FN$DISK_N ;занятие одного из дисковых массивов
QUEUE P2
SEIZE P2
DEPART P2
ADVANCE (Exponential(1,0,X$DISK_T))
RELEASE P2
*******************************************************************************
;дообработка запроса на рабочей станции
WS_DOOB ENTER WS_D,1
ADVANCE (Exponential(1,0,X$STATION_TD))
LEAVE WS_D,1
DEPART QSYSTEM
*******************************************************************************
;переход на дообработку запроса
TRANSFER ,WS_FORM
*******************************************************************************
GENERATE 100000
TERMINATE 1
START 1
-
Листинг результата имитационного моделирования.
GPSS World Simulation Report - КП_мой.2.1
Sunday, October 30, 2011 20:11:45
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 100000.000 23 2 3
NAME VALUE
DISK_N 10004.000
DISK_T 10005.000
EXPON 10009.000
QFORM 10011.000
QSYSTEM 10010.000
SERVER_CPU 10008.000
SERVER_CPU_T 10003.000
STATION_N 10000.000
STATION_TD 10001.000
STATION_TF 10002.000
SVR_CPU 8.000
SVR_DISK 11.000
WS_D 10006.000
WS_DOOB 17.000
WS_F 10007.000
WS_FORM 2.000
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 9 0 0
WS_FORM 2 QUEUE 3916 0 0
3 QUEUE 3916 0 0
4 ENTER 3916 0 0
5 ADVANCE 3916 1 0
6 LEAVE 3915 0 0
7 DEPART 3915 0 0
SVR_CPU 8 ENTER 3915 0 0
9 ADVANCE 3915 1 0
10 LEAVE 3914 0 0
SVR_DISK 11 ASSIGN 3914 0 0
12 QUEUE 3914 0 0
13 SEIZE 3914 0 0
14 DEPART 3914 0 0
15 ADVANCE 3914 0 0
16 RELEASE 3914 0 0
WS_DOOB 17 ENTER 3914 0 0
18 ADVANCE 3914 7 0
19 LEAVE 3907 0 0
20 DEPART 3907 0 0
21 TRANSFER 3907 0 0
22 GENERATE 1 0 0
23 TERMINATE 1 0 0
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
1 1991 0.421 21.125 1 0 0 0 0 0
2 1923 0.374 19.435 1 0 0 0 0 0
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
1 5 0 1991 1194 0.252 12.668 31.647 0
2 5 0 1923 1259 0.174 9.031 26.156 0
QSYSTEM 9 9 3916 0 9.000 229.826 229.826 0
QFORM 9 1 3916 0 3.638 92.893 92.893 0
STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY
WS_D 9 2 0 9 3914 1 3.548 0.394 0 0
WS_F 9 8 0 9 3916 1 3.638 0.404 0 0
SERVER_CPU 1 0 0 1 3915 1 0.400 0.400 0 0
SAVEVALUE RETRY VALUE
STATION_N 0 9.000
STATION_TD 0 90.000
STATION_TF 0 90.000
SERVER_CPU_T 0 10.000
DISK_N 0 2.000
DISK_T 0 20.000
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
10 0 100006.494 10 9 10 2 2.000
5 0 100008.492 5 18 19 2 2.000
1 0 100008.721 1 18 19 2 1.000
9 0 100018.668 9 5 6 2 1.000
6 0 100075.355 6 18 19 2 1.000
3 0 100177.365 3 18 19 2 1.000
8 0 100218.335 8 18 19 2 2.000