ПЗ_ИУ5-91_Боровков (5 вариант 2), страница 10
Описание файла
Файл "ПЗ_ИУ5-91_Боровков" внутри архива находится в папке "5 вариант 2". Документ из архива "5 вариант 2", который расположен в категории "". Всё это находится в предмете "эксплуатация автоматизированных систем обработки информации и управления (асоииу)" из 9 семестр (1 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "эксплуатация асоииу" в общих файлах.
Онлайн просмотр документа "ПЗ_ИУ5-91_Боровков"
Текст 10 страницы из документа "ПЗ_ИУ5-91_Боровков"
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Edit9: TEdit;
Label7: TLabel;
Edit12: TEdit;
Edit14: TEdit;
Edit15: TEdit;
Edit18: TEdit;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Edit19: TEdit;
Label15: TLabel;
Label16: TLabel;
Label11: TLabel;
Edit10: TEdit;
Label14: TLabel;
Label17: TLabel;
Label12: TLabel;
Label13: TLabel;
Label18: TLabel;
Label19: TLabel;
Button2: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
function step(x:real; y:integer):real;
var
Form1: TForm1;
N:integer; // Число РС
T0:real; // Вр. доработки запроса на РС
Tp:real; // Вр. формирования запроса на РС
C:integer; // Кол-во процессоров сервера
Tn:real; // Вр. обработки запроса в процессоре
M:integer; // Кол-во дисков сервера;
Td:real; // Вр. обработки запроса в сервере
Pii:real; // Вер-ть обращения к i-му диску
b:real;
v,v1,v2,v3:real;
Tk:real;
TkL:real;
TnL:real;
TdL:real;
L,L1,L2,Ld,D1:real;
TTp:real; // Время реакции системы на запрос
Ppc:real;
Pn:real; // Коэф. процессора
Pd:real; // Коэф. диска
implementation
{$R *.DFM}
function step(x:real; y:integer):real;
var i:integer;
begin
result:=x;
for i:=1 to y do result:=result*x;
end;
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
begin
N:=StrToInt(Edit1.Text);
T0:=StrToFloat(Edit2.Text);
Tp:=StrToFloat(Edit3.Text);
C:=StrToInt(Edit6.Text);
Tn:=StrToFloat(Edit7.Text);
M:=StrToInt(Edit8.Text);
Td:=StrToFloat(Edit9.Text);
if M<>0 then Pii:=1/M
else Pii:=0;
Edit10.Text:=FloatToStr(Pii);
b=1;
v2:=C/(b*Tn); //интенсивность фонового потока запросов в процессоры
v3:=1/(b*Pii*Td); //интенсивность фонового потока запросов в дисковые массивы
if (v2<v3) then v:=v2
else v:=v3;
L2:=0.99995*v*(N-1)/N; //среднее значение суммарной интенсивности
Edit18.Text:=FloatToStr(L2);
repeat
L1:=L2;
TnL:=Tn*b/(1-Power(b*L1*Tn/C,C)); //процессорное время
TdL:=Td*Pii/(1-b*Pii*L1*Td); //время дисков
L:=(N-1)/(T0+Tp+b*(TnL+TdL));
D1:=abs(L1-L)/1000;
L2:=L1-D1;
until abs((L1-L)/L)<0.00001;
TTp:=T0+Tp+b*(TnL+TdL);
Ppc:=(T0+Tp)/TTp;
Ld:=N/TTp;
Pn:=Tn*b*Ld;
Pd:=b*Td*Pii*Ld;
Edit19.Text:=FloatToStr(TTp);
Edit12.Text:=FloatToStr(Ppc);
Edit14.Text:=FloatToStr(Pn);
Edit15.Text:=FloatToStr(Pd);
end;
end.
Главная форма программы имеет вид:
Рис.8.1.
9. Имитационное моделирование сети
Моделирование РСОД будет проводиться с использованием средств языка GPSS.
Рис.9.1. Формализованная схема моделируемой РСОД.
ОАдб – обслуживающий аппарат (ОА), имитирующий работу рабочей станции по дообработке запроса к серверу.
ОАф – ОА, имитирующий работу рабочей станции по формированию запроса к серверу.
Бcpu – буфер (Б), имитирующий очередь запросов к процессорам сервера.
ОАcpu – ОА, имитирующий работу процессора по обработке запроса от рабочей станции.
Бдм – Б, имитирующий очередь запросов к дисковым массивам сервера.
ОАдм – ОА, имитирующий работу дискового массива сервера.
Вариант 1
Данные: Tдообработки = 350
Tформирования = 700
Nws = 35
Tcpu = 10
Ncpu = 2
Tдиска = 20
Nдм = 3
Найти: загрузку рабочих станций;
загрузку ЦП;
загрузку дисковых массивов;
время реакции.
Текст программы на GPSS (комментарии приведены в тексте программы)
INITIAL X$STATION_N,35 ;количество рабочих станций
INITIAL X$STATION_TD,350 ;дообработка запроса
INITIAL X$STATION_TF,700 ;формирование запроса
INITIAL X$SERVER_CPU_T,10 ;время работы процессора
INITIAL X$DISK_N,3 ;количество дисковых массивов на сервере (RAID-5 -> мин. 5 дисков)
INITIAL X$DISK_T,20 ;время работы дискового массива
WS_D STORAGE 35
WS_F STORAGE 35
SERVER_CPU STORAGE 2
DISK_N FUNCTION RN1,D3
0.33,1/.66,2/1,3
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
*******************************************************************************
;формирование запроса
ENTER WS_F,1
ADVANCE (Exponential(1,0,X$STATION_TF))
LEAVE WS_F,1
*******************************************************************************
;обработка на сервере
;процессоры
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
*******************************************************************************
Отчет о работе программы
GPSS World Simulation Report - imit.22.1
Friday, October 16, 2009 22:14:07
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 100000.000 21 3 3
NAME VALUE
DISK_N 10004.000
DISK_T 10005.000
EXPON 10009.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 6.000
SVR_DISK 9.000
WS_D 10006.000
WS_DOOB 15.000
WS_F 10007.000
WS_FORM 2.000
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 35 0 0
WS_FORM 2 QUEUE 3210 0 0
3 ENTER 3210 0 0
4 ADVANCE 3210 27 0
5 LEAVE 3183 0 0
SVR_CPU 6 ENTER 3183 0 0
7 ADVANCE 3183 0 0
8 LEAVE 3183 0 0
SVR_DISK 9 ASSIGN 3183 0 0
10 QUEUE 3183 0 0
11 SEIZE 3183 0 0
12 DEPART 3183 0 0
13 ADVANCE 3183 0 0
14 RELEASE 3183 0 0
WS_DOOB 15 ENTER 3183 0 0
16 ADVANCE 3183 8 0
17 LEAVE 3175 0 0
18 DEPART 3175 0 0
19 TRANSFER 3175 0 0
20 GENERATE 1 0 0
21 TERMINATE 1 0 0
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
1 1057 0.216 20.452 1 0 0 0 0 0
2 1067 0.219 20.501 1 0 0 0 0 0
3 1059 0.207 19.535 1 0 0 0 0 0
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
1 4 0 1057 826 0.064 6.049 27.678 0
2 3 0 1067 845 0.054 5.060 24.321 0
3 4 0 1059 818 0.060 5.679 24.953 0
QSYSTEM 35 35 3210 0 35.000 1090.343 1090.343 0
STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY
WS_D 35 27 0 20 3183 1 11.169 0.319 0 0
WS_F 35 8 0 35 3210 1 22.677 0.648 0 0
SERVER_CPU 2 2 0 2 3183 1 0.326 0.163 0 0
SAVEVALUE RETRY VALUE
STATION_N 0 35.000
STATION_TD 0 350.000
STATION_TF 0 700.000
SERVER_CPU_T 0 10.000
DISK_N 0 3.000
DISK_T 0 20.000
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
31 0 100014.181 31 4 5 2 3.000
3 0 100027.704 3 4 5 2 3.000
32 0 100049.630 32 4 5 2 2.000
9 0 100058.128 9 16 17 2 1.000
26 0 100089.504 26 4 5 2 1.000
10 0 100136.219 10 16 17 2 1.000
34 0 100164.201 34 16 17 2 3.000
33 0 100225.800 33 4 5 2 1.000
16 0 100240.162 16 4 5 2 2.000
14 0 100253.209 14 16 17 2 3.000
12 0 100280.227 12 4 5 2 3.000
27 0 100327.797 27 4 5 2 3.000
24 0 100366.289 24 16 17 2 3.000
29 0 100431.805 29 4 5 2 2.000
25 0 100439.789 25 16 17 2 1.000
11 0 100483.362 11 4 5 2 3.000
8 0 100484.984 8 16 17 2 2.000
13 0 100580.023 13 4 5 2 2.000
6 0 100652.562 6 4 5 2 2.000
30 0 100689.166 30 4 5 2 2.000
22 0 100792.313 22 4 5 2 2.000
28 0 100839.172 28 4 5 2 2.000
18 0 100875.131 18 4 5 2 3.000
35 0 100887.069 35 4 5 2 2.000
15 0 101001.532 15 4 5 2 2.000
21 0 101005.460 21 16 17 2 2.000
1 0 101104.322 1 4 5 2 2.000
23 0 101198.977 23 4 5 2 2.000
17 0 101316.459 17 4 5 2 3.000
4 0 101338.410 4 4 5 2 1.000
36 0 101508.738 36 4 5 2 2.000
7 0 101521.372 7 4 5 2 3.000
20 0 101790.554 20 4 5 2 3.000
19 0 101888.190 19 4 5 2 3.000
5 0 103613.523 5 4 5 2 1.000
37 0 200000.000 37 0 20
*******************************************************************************
Вариант 2. Узким местом являются дисковые массивы сервера
Загрузка дисковых массивов максимальна.
Данные: Tдообработки = 120
Tформирования = 140
Nws = 35
Tcpu = 60
Ncpu = 2
Tдиска = 500
Nдм = 3
Найти: загрузку рабочих станций;
загрузку ЦП;
время реакции.
Отчет о работе программы
GPSS World Simulation Report - imit.20.1
Wednesday, October 14, 2009 15:37:43
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 100000.000 21 3 3
NAME VALUE
DISK_N 10004.000
DISK_T 10005.000
EXPON 10009.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 6.000
SVR_DISK 9.000
WS_D 10006.000
WS_DOOB 15.000
WS_F 10007.000
WS_FORM 2.000
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 35 0 0
WS_FORM 2 QUEUE 582 0 0
3 ENTER 582 0 0
4 ADVANCE 582 2 0
5 LEAVE 580 0 0
SVR_CPU 6 ENTER 580 0 0
7 ADVANCE 580 0 0
8 LEAVE 580 0 0
SVR_DISK 9 ASSIGN 580 0 0
10 QUEUE 580 30 0
11 SEIZE 550 0 0
12 DEPART 550 0 0
13 ADVANCE 550 3 0
14 RELEASE 547 0 0
WS_DOOB 15 ENTER 547 0 0
16 ADVANCE 547 0 0
17 LEAVE 547 0 0
18 DEPART 547 0 0
19 TRANSFER 547 0 0
20 GENERATE 1 0 0
21 TERMINATE 1 0 0
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
1 173 0.885 511.299 1 26 0 0 0 8
2 190 0.892 469.403 1 11 0 0 0 4
3 187 0.997 533.194 1 5 0 0 0 18
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
1 13 8 181 27 3.977 2197.185 2582.406 0
2 16 4 194 23 5.508 2839.411 3221.320 0
3 32 18 205 1 20.723 10108.628 10158.180 0
QSYSTEM 35 35 582 0 35.000 6013.746 6013.746 0