Буферизация и обработка заданий

GENERATE 3,1		;поступают задания
ASSIGN SIZE,(uniform(1,400,800))	;устанавливаем размер заданий
PRIORITY (1000-P$SIZE)	;приоритет присваиваем каждому заданию в зависимости от длины. 
			;у коротких заданий приоритет выше

*****СТАДИЯ ВВОДА********

PLACESTART QUEUE TOBUF		;буфферизуем задание
SEIZE TASKENTER		;отправляем на ввод
DEPART TOBUF		;извлекаем из буффера
ADVANCE (P$SIZE/100)	;процесс ввода
RELEASE TASKENTER		;конец ввода

*****СТАДИЯ ОБРАБОТКИ********

QUEUE TOBUF		;буфферизуем задание
SEIZE PERFORMING		;отправляем на обработку
DEPART TOBUF		;извлекаем из буффера
ADVANCE (P$SIZE/100)	;процесс обработки
RELEASE PERFORMING		;конец обработки

*****СТАДИЯ ВЫВОДА********

QUEUE TOBUF		;буфферизуем задание
SEIZE PERFORMING		;отправляем на вывод
DEPART TOBUF		;извлекаем из буффера
ADVANCE (P$SIZE/100)	;процесс вывода
RELEASE PERFORMING		;конец вывода

TRANSFER 0.05,,PLACESTART
TERMINATE 1

start 1000

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *