Azərbaycan respublikasi təHSİl naziRLİYİ azərbaycan döVLƏt pedaqoji universiteti



Yüklə 5,01 Kb.
Pdf görüntüsü
səhifə39/40
tarix11.04.2018
ölçüsü5,01 Kb.
#37892
1   ...   32   33   34   35   36   37   38   39   40

KOMPYUTER TƏLİM TEXNOLOGİYALARI 
97 
 
hesablamaların  həyata  keçirilməsi  kəsilmələr  mexanizmi  vasitəsilə  mümkündür.  Lakin,  bu  halda 
daha  sürətli  proseslərin  emalı  və  izlənməsi  problematikdir.  Çünki,  bu  halda  söhbət  real  zamanda 
paralel  hesablamadan  deyil,  sadəcə  baxılan  kəsilməyə  ayrılan  zaman  kvantında  proseslərin  ardıcıl 
icrasından  -  kvazi-paralelizmdən  gedə  bilər.  Bunun    da  səbəbinin  DOS-un  uyğun  hesablama 
sisteminin paralel hesablama imkanlarından istifadə edə bilməməsində olması aydındır.  
Qeyd  olunduğu  kimi  Windows  XP  real 
zamanda 
paralel 
hesablamaları 
dəstəkləyən 
Windows  ailəsinin  yeganə  (Windows  Vista  və 
Windows  ailəsinin  daha  sonrakı  üzvlərini  nəzərə 
almasaq) üzvüdür.  
Yuxarıda  verilən  nəzəri  araşdırmalar  öz 
tətbiqini  Windows  XP  üçün  yazılmış  kiçik  model-
proqramda tapmışdır.  
Proqram  baxılan  məsələnin  mahiyyətcə 
həllinin  həyata  keçirilməsinin  yollarını  göstərmək 
məqsədini güdür. Bunun üçün iki prosesin  - ədədin 
sayılması  (nəticəni)  və  bu  zaman  proqramın 
interfeys 
elementlərindən 
(o 
cümlədən 
düymələrdən)  alınan  informasiyanın  emalının 
həyata  keçirilməsi  nümunə  kimi  baxılır.  Proqramın  interfeysi  şəkil  3-də  göstərilib.  Burada  Start 
düyməsinin basılması ilə sayğac işə düşür. Bundan sonra, əgər adi halda Stop düyməsini (və eləcə 
də  digər düymələri)  “basmaq”  mümkün olmursa,  bu proqramda  Stop  düyməsini  basmaqla sayğacı 
saxlamaq mümkündür.  
 
Nəticə. 
Təklif  olunan  alqoritm  paralel  hesablama  tələb  olunan  praktik  məsələlərin,  o  cümlədən  də 
hərbi problemlərin həllində tətbiq oluna bilər. Bu tip məsələlərə  misal olaraq müxtəlif vericilərdən 
alınan  məlumatların  yığılması  və  onun  emalını  həyata  keçirən  proqram  təminatının  yaradılmasını 
göstərmək olar.    
 
Proqramın kodu aşağıda verilir: 
uses 
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
  Dialogs, StdCtrls; 
 
//Thread 
 type 
  TMyThread = class(TThread) 
  private 
  protected 
    procedure Execute; override; 
  published 
    constructor CreateIt; 
    //destructor Destroy; override; 
  end; 
 
  type 
  TForm1 = class(TForm) 
    Edit1: TEdit; 
    Button1: TButton; 
    Button2: TButton; 
 
 
Şəkil 3. Paralel hesablama 
proseslərinin proqramlaşdırılmasını 
nümayiş etdirən model proqramın 
interfeysi. 


KOMPYUTER TƏLİM TEXNOLOGİYALARI 
98 
 
    Button3: TButton; 
    procedure Button3Click(Sender: TObject); 
    procedure Stat; 
    procedure StatModul; 
 
    procedure Button1Click(Sender: TObject); 
    procedure Button2Click(Sender: TObject); 
  private 
    { Private declarations } 
    { Private declarations } 
    MyThread1 : TMyThread; 
    Thread1Active : boolean; 
    procedure ThreadDone; 
  public 
    { Public declarations } 
  end; 
 
var 
  Form1: TForm1; 
  var i:real; s:string; 
implementation 
 
{$R *.dfm} 
constructor TMyThread.CreateIt; 
begin 
  inherited Create(true); 
  FreeOnTerminate := true; 
  Suspended := false; 
end; 
procedure TMyThread.Execute; 
begin 
  Form1.Statmodul; 
end; 
 
procedure TForm1.ThreadDone; 
begin 
  if (MyThread1<> nil)then 
  begin 
     i:=0; 
     Thread1Active := false; 
     //MyThread1.Terminate; 
  end; 
end; 
 
procedure TForm1.StatModul; 
begin 
  i:=1; 
  while i>0 do 
  begin 
    i:=i+1; 
    Str(i:12:0,S); 


KOMPYUTER TƏLİM TEXNOLOGİYALARI 
99 
 
    Edit1.Text:=s; 
    edit1.refresh; 
  end; 
end; 
procedure TForm1.Stat; 
begin 
  if (MyThread1=nil)or(Thread1Active=false)then 
   begin 
     MyThread1:= TMyThread.CreateIt; 
     Thread1Active := true; 
   end 
end; 
 
procedure TForm1.Button3Click(Sender: TObject); 
begin 
   Stat; 
end; 
 
procedure TForm1.Button1Click(Sender: TObject); 
begin 
  ThreadDone; 
end; 
 
procedure TForm1.Button2Click(Sender: TObject); 
begin 
  ThreadDone; 
  close; 
end; 
 
end. 
 
İstinad edilmiş ədəbiyyat: 
 
1.
 
Windows для профессионалов.- Джефри Рихтер. Москва, 2001.  
2.
 
Барский А. Б. Планирование параллельных вычислительных процессов.—M.: 
Машиностроение, 1980.—192 с. 
3.
 
Пярнпуу А. А., Хохлюк В. И. Параллельные вычисления в прикладных 
задачах//Сообщение по прикладной математике/Вычислительный центр АН СССР—
M., 1985.—64 с. 
4.
 
Системы параллельной обработки: Пер. с англ./Под ред. Д. Ивенса.—M.: Мир, 
1985.—416 с. 
5.
 
Хохлюк В. И. О параллелизме в целочисленной оптимизации// Вычислительные 
системы.—1981. Вып. 89,—С. 3—22. 
6.
 
Ху T. С. Целочисленное программирование и потоки в сетях: Пер. с англ.—M.: Мир, 
1974.—519 с. 
7.
 
Kuck D. J. Parallel Processing of Ordinary Program//Adv. Comput.—1976.—N 15.—P. 
119—179. 
 
 
 


Yüklə 5,01 Kb.

Dostları ilə paylaş:
1   ...   32   33   34   35   36   37   38   39   40




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə