12150

Модель 2-х процессорной системы

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторная работа № 4 Модель 2х процессорной системы Блоксхема 2 процессорной системы Код отвечающий за моделирование: Memo2.Lines.Add Начало моделирования while flag0 do begin Memo2. Lines. AddinttostrTime {Проверка процессора 1 на наличие задач и решение з

Русский

2013-04-24

83.5 KB

1 чел.

Лабораторная работа № 4

Модель 2-х процессорной системы

Блок-схема 2 процессорной системы

Код отвечающий за моделирование:

Memo2.Lines.Add('Начало моделирования');

while flag0 do

begin

Memo2.Lines.Add(inttostr(Time)+':');

  {Проверка процессора 1 на наличие задач и "решение" задач}

 If p0[0]<>-1 then

 Begin

 inc(p0[1]);

 If p0[1] = ZTO[p0[0]] then

  begin

  Memo2.Lines.Add('>>Задание '+inttostr(p0[0]+1)+' >> Обработанно процессором №1');

  p0[0]:=-1;

  end;

 end;

   {Проверка процессора 2 на наличие задач и "решение" задач}

 If p1[0]<>-1 then

 Begin

 inc(p1[1]);

 If p1[1] = ZTO[p1[0]] then

  begin

  Memo2.Lines.Add('>>Задание '+inttostr(p1[0]+1)+' >> Обработанно процессором №2');

  p1[0]:=-1;

  end;

 end;

  {Обработка очереди}

 If ochered[0]<>-1 then

 begin

  if p0[0]=-1 then

   begin

    p0[0]:=ochered[0];

    p0[1]:=0;

    Memo2.Lines.Add('>>Задание '+inttostr(ochered[0]+1)+' >> Начало обработки процессором №1 (из очереди)');

    ochered[0]:=-1;

   end

   else

  if p1[0]=-1 then

   begin

    p1[0]:=ochered[0];

    p1[1]:=0;

    Memo2.Lines.Add('>>Задание '+inttostr(ochered[0]+1)+' >> Начало обработки процессором №2 (из очереди)');

    ochered[0]:=-1;

   end;

 end;

 If ochered[0]=-1 then

  If ochered[1]<>-1 then

   begin

   ochered[0]:=ochered[1];

   ochered[1]:=-1;

    If ochered[2]<>-1 then

     begin

     ochered[1]:=ochered[2];

     ochered[2]:=-1;

     end;

   end;

  {Начало цикла просмотра Задач поступивших во время Time, с

   целью распределения по процессорам или местам в очереди}

 For i:=0 to N-1 do

 begin

 if ZTP[i]=Time then

  Begin

  if p0[0]=-1 then

   begin

    p0[0]:=i;

    p0[1]:=0;

    Memo2.Lines.Add('>>Задание '+inttostr(i+1)+' >> Начало обработки процессором №1');

   end

   else

  if p1[0]=-1 then

   begin

    p1[0]:=i;

    p1[1]:=0;

    Memo2.Lines.Add('>>Задание '+inttostr(i+1)+' >> Начало обработки процессором №2');

   end

   else

  if ochered[0]=-1 then

   begin

    ochered[0]:=i;

    Memo2.Lines.Add('>>Задание '+inttostr(i+1)+' >> В очереди (место 1)');

   end

   else

  if ochered[1]=-1 then

   begin

    ochered[1]:=i;

    Memo2.Lines.Add('>>Задание '+inttostr(i+1)+' >> В очереди (место 2)');

   end

   else

  if ochered[2]=-1 then

   begin

    ochered[2]:=i;

    Memo2.Lines.Add('>>Задание '+inttostr(i+1)+' >> В очереди (место 3)');

   end

   else

   Memo2.Lines.Add('>>Задание '+inttostr(i+1)+' >> Не может быть обработанно!');

  end;

 end;

   {Конец цикла просмотра Задач поступивших во время Time, с

    целью распределения по процессорам и местам в очереди}

 inc(Time);

if (Time>strtoint(Edit3.Text)) and (p0[0]=-1)

and (p1[0]=-1) {and (ochered[0]=-1) and (ochered[1]=-1)

and (ochered[2]=-1)}then flag0:=false;

end;

Memo2.Lines.Add('Моделирование завершенно...');

Пример


Прибытие заявки

ачало обслуживания

После завершения

Запись время завершения обработки

Записать время прибытия заявки

Заняты ли ЦПУ?

Перевести процессор в состояние «свободно»

Память =  Память -1

Узнать очередное событие

Перевести процессор в состояние «занято»

Память = Память +1

Память = 0 ?

Да

Нет

Да

Нет


 

А также другие работы, которые могут Вас заинтересовать

57821. Сірники: історія та шляхи модернізації 312 KB
  Вивчити склад, особливості розвитку й розміщення сірникової промисловості світу, розширити знання з історії добування сірників, географії їх поширення, з’ясувати на основі вивчених властивостей сполук неметалів екологічні наслідки сірникової промисловості...
57822. Системи лінійних нерівностей з однією змінною 68.5 KB
  Організаційний етап привітання перевірка присутніх на уроці На минулих уроках ми зупинилися на розвязуванні лінійних нерівностей з однією змінною. І напевно кожний із вас зрозумів що для того щоб правильно і швидко розвязувати завдання потрібно багато працювати...
57823. Разработка слайдовой презентации 1.06 MB
  Электронная страница презентации слайд Демонстрация презентации показ III. Компьютерный практикум Создание слайдовой презентации Слово учителя: На рабочих столах в папке Материалы для...
57824. Математика від «Смішариків» 546 KB
  Та для подальшої роботи нам необхідно розділитися на команди нехай це буде за рядами кожен учитель вирішує сам як поділити клас. Учитель. Учитель вивішує на дошку завдання Учитель....
57825. Sport 148.5 KB
  Wie ihr verstanden habt, treiben nicht alle Sport. In meiner Kindheit habe ich Sport nicht getrieben, nur in den Sportstunden. Ich habe Klavier gespielt, im Schulchor gesungen.
57826. Роль ссавців у екосистемах, їх значення для людини. Охорона ссавців. Тваринництво 148.5 KB
  Мета: розширити знання учнів про ссавців; розкрити їх значення у екологічних системах; забезпечити засвоєння знань про біологічну роль ссавців на планеті; узагальнити знання учнів про роль ссавців у природі та значення їх у житті людини...
57827. Урок-суд «Сталин – кто он?» 137 KB
  ЦЕЛЬ: обобщить и закрепить знания учащихся по теме «СССР в 30-е годы ХХ века», рассмотреть основные направления внутренней и внешней политики в этот период развития СССР на примере деятельности исторической личности Иосифа Виссарионовича Сталина...
57828. Запліднення. Генетичне визначення статі. Вагітність 72.5 KB
  Основне поняття: сперматозоїд яйцеклітина овуляція запліднення вагітність зигота ембріон плід плацента хромосоми. Робота в парах Слайд 3 Обличчям до обличчя один у двох усі разом Девіз: Думати працювати у парі обмінюватися думками...
57829. Прийняття рішень в умовах невизначеності 527 KB
  Чим займається наука статистика Відповідь. Що таке математична статистика Відповідь. Що таке вибірка Навіщо використовують вибіркове спостереження Відповідь. Що таке ранжування Відповідь.