Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник ИСПиУ.doc
Скачиваний:
215
Добавлен:
18.09.2019
Размер:
17.33 Mб
Скачать

4.9.14 Атрибуты транзакции

Определим для транзакции T следующие атрибуты:

a(T) – время прихода;

s(T) – время начала работы;

– число порожденных отложенных транзакций в момент времени t;

Pt(T) – приоритет транзакции в момент времени t.

Некоторые атрибуты могут меняться во время выполнения транзакции. Они помечены индексом t, что означает значение атрибута в момент времени t.

Методы назначения приоритетов, описанные в следующих пунктах, используют следующие оценки:

Xt(T) – оставшееся время выполнения;

Сt(T) – время завершения (Ct(T)=t+Xt(T));

St(T) – запас свободного времени (St(T)=d(T)–Ct(T));

– число непосредственных транзакций, порожденных T после времени t;

– число отложенных транзакций, порожденных T после времени t;

– среднее время выполнения непосредственной транзакции, порожденной транзакцией T;

– среднее время выполнения отложенной транзакции, порожденной транзакцией T;

– оставшееся среднее время выполнения транзакции, T учитывая все ее подтранзакции на момент времени t:

; (4.9.6)

– оставшийся средний запас свободного времени на момент времени t, учитывая все ее подтранзакции:

. (4.9.7)

Заметим, что наименьшее значение Pt(T) равносильно наибольшему приоритету. Во всех описанных ниже методах директивный срок подтранзакции назначается равным директивному сроку породившей ее транзакции, т.е. d(Tsub)=d(T).

4.9.15 Приоритет «непосредственной» транзакции

Рассмотрим некоторые из политик назначения приоритетов непосредственным подтранзакциям.

    • PD метод:

Согласно этой политике непосредственной подтранзакции назначается приоритет, равный директивному сроку отцовской транзакции. Более того, приоритет отцовской транзакции не меняется после порождения подтранзакции. Т.е., если i-я непосредственная транзакция, порожденная транзакцией T в момент времени t, то .

    • DIV метод:

Рассмотрим транзакцию T, которая в момент времени t порождает непосредственную транзакцию , тогда:

(4.9.8)

Пусть транзакция заканчивается в момент времени w>t, тогда приоритет отцовской транзакции будет следующим:

. (4.9.9)

Согласно этой политике оценочное свободное время отцовской транзакции делится поровну между всеми порожденными подтранзакциями и отцовской транзакцией. Это число плюс оцененное время завершения подтранзакции определяют приоритет подтранзакции. Приоритет отцовской транзакции динамически выравнивается с учетом динамической работы. Эта политика использует оценки времени завершения только уже порожденных подтранзакций и не использует никаких знаний о возможных последующих порожденных транзакциях. Приоритет, назначаемый подтранзакции можно толковать как виртуальный директивный срок, который представляет собой сумму времени завершения подтранзакции и некоторого запаса полученного от породившей ее транзакции.

    • SL метод:

Согласно этой политике оставшийся средний запас свободного времени отцовской транзакции ( ), вычисляемый в потенциальные моменты порождения транзакции, используется в качестве приоритета породившей и порожденной транзакций. Т.е. отцовская и порожденная транзакции имеют одинаковые приоритеты.

Пусть, например, транзакция T стартует в момент времени t0, а момент времени t является потенциальным для порождения i-й непосредственной транзакции . Первоначальный на момент времени t0 приоритет транзакции T вычисляется как:

.

Если в момент времени t транзакция была порождена, то:

(4.9.10)

.

Если в момент времени t подтранзакция не была порождена, то:

. (4.9.11)