книги из ГПНТБ / Левковиц, Д. Структуры информационных массивов оперативных систем
.pdfхи обозначают резервное пространство дорожки . Из при
веденных формул • на |
рис. 6-6 |
ясно, |
что Nt3 |
есть целая |
часть отношения 22/4, |
р а в н а я |
5; Ntz |
равно |
отношению |
22/42 =22/16, которое равно 2 (берется целая часть плюс единица), a Nu — отношению 22/4 3 = 22/64, равному еди нице (берется целая часть плюс единица) . Следуя про цедуре создания дерева, показанного на рис. 6-1, необ ходимо полностью заполнить пять д о р о ж е к по четыре ключа е а д о р о ж к у (для ключей от 1-го д о 20-по). Объем памяти, требуемый для хранения второго уровня, равен
одной |
полной д о р о ж к е |
(рис. 6-6). Д л я того чтобы мож |
||||
но |
было о б р а щ а т ь с я к |
пятой |
д о р о ж к е |
третьего |
уровня, |
|
т. |
е. к |
дорожке, с о д е р ж а щ е й |
ключи |
от 17-го до |
20-го, |
необходимо хранение одной записи на второй дорожке второго уровня. Остальные дв а ключа, 21-й и 22-й, по мещаются в две из оставшихся трех записей второй до р о ж к и второго уровня. Резервное пространство этой до рожки равно, таким образом, н а ч а л ь н о м у резервному пространству плюс одна неиспользованная запись. Дл я того чтобы обеспечить две дорожки второго уровня, тре
буется только одна |
д о р о ж к а |
|
первого уровня. |
Следова |
||||||||||||
тельно, словарь с 22 ключами требует |
одну д о р о ж к у для |
|||||||||||||||
хранения |
первого |
уровня |
дерева, |
две — дл я |
второго и |
|||||||||||
пять — д л я |
третьего |
уровня |
|
(на |
к а ж д о й |
д о р о ж к е |
хра |
|||||||||
нится по четыре |
к л ю ч а ) . |
|
|
|
|
|
|
|
|
|
|
|
|
|||
Если хранить |
первой уровень |
в оперативной |
памяти, |
|||||||||||||
то требуется только две логические записи |
типа |
фраг |
||||||||||||||
мент ключа/двойной |
адрес |
[т. е. |
|
|
Mc—2(Cf+Ca)]. |
|
||||||||||
Рассмотрим наиболее |
распространенные |
случаи. |
||||||||||||||
1. Трехуровневое |
дерево: |
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
iWft = 20000; |
|
|
|
|
|
|
||||||
|
|
|
|
m = |
100; |
|
|
|
|
|
|
|
||||
|
|
yVt3 |
= |
I N T . ? ^ |
= |
200; |
|
|
|
|
||||||
|
|
Л ^ = |
Ш Т + |
2 |
0 |
ÎOO2 |
' «- ' |
|
|
|
|
|||||
|
|
|
|
|
|
0 |
0 |
0 |
|
|
|
|
|
|
||
|
|
д. |
|
|
|
20 000 |
, |
|
|
|
|
|
||||
|
|
|
|
Wt = 203. |
|
|
|
|
|
|
||||||
З а м е т и м , что так как m значительно |
больше |
10, то |
||||||||||||||
приближение Ni^Nt3=200 |
|
является |
весьма |
точным. |
120
2. |
Двухуровневое |
дерево: |
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
Wh = 20 ООО; |
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
m |
=100; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Nu = |
\ЫТ_ |
20 ООО |
= |
200; |
|
|
|
|
|||||
|
|
|
|
|
|
|
100 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
л , |
т |
м ^ |
20 000 |
- = |
0 |
2. |
|
|
|
|
|
||
|
|
|
|
tft1 = |
|
I N T + |
- r o 5 ï |
|
|
|
|
|
|
||||
|
|
6-5-2. |
Формулы дл я р а н д о м и з а т о р а |
|
|
|
|||||||||||
Требуемый дл я декодера с рандомизацией объем |
|
памя |
|||||||||||||||
ти зависит от вида данного рандомизатора, |
однако дл я |
||||||||||||||||
обобщенных рандомизаторов, показанных |
на |
рис. 6-4 и |
|||||||||||||||
6-5, применимы следующие |
формулы . |
|
|
|
|
|
|||||||||||
Д л я рис. 6-4: |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
Md= - ^ 5 - + Nk |
[ c f c + C , + 1 + |
|
|
|
||||||||||
|
+ ( ^ r ) c |
« + c « ] = |
|
( c " + c < + 2 C « + |
! > - |
|
(6-9) |
||||||||||
|
|
|
|
||||||||||||||
Для рис. |
6-5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
Md |
= N*Ca |
|
|
|
|
|
a— 1 |
{Ca + |
Cf) |
|
|
|||||
|
|
|
|
Cffl |
|
|
l |
- f d |
+ |
Ca + |
2 |
|
|
(6-10) |
|||
|
|
|
|
|
|
|
|
|
|||||||||
При расчете по формуле (6-9) |
дл я хранения |
уровня |
|||||||||||||||
косвенной |
адресации |
требуется |
Nul о, |
областей, |
к а ж д а я |
||||||||||||
из которых |
содержит |
адрес |
записи, |
хранимой в |
З У П Д . |
||||||||||||
При |
словаре ключей |
объемом 20 000 |
слов и |
выделении |
|||||||||||||
(при |
рандомизации) |
из к а ж д о г о |
ключа 10 бит создает |
||||||||||||||
ся 1024 |
кода, причем |
среднее |
количество |
избыточных |
|||||||||||||
декодирований |
(т. е. |
средняя |
длина |
цепи |
а) |
|
равно: |
||||||||||
20000/1024 ~20 . Таким |
образом, |
объем памяти (в сим |
|||||||||||||||
волах), требуемый дл я хранения |
уровня косвенной |
адре |
|||||||||||||||
сации, равен NkCJu. |
Д л я к а ж д о г о |
|
из Nu |
ключей, |
полу |
чаемых с помощью декодера, требуется следующее коли
чество символов: |
дл я |
полного |
ключа — 6\; |
дл я |
длины |
|
списка — Са; |
дл я |
цепного адреса — Са (если |
есть |
цепь), |
||
и для адреса |
ссылки |
на выход |
декодера — Са. |
|
||
М о ж н о сэкономить |
один параметр, д о б а в л я я в выход |
|||||
ную запись |
символ, |
у к а з ы в а ю щ и й существование цеп- |
121
ного адреса. Следовательно, добавим в расчет еще один
символ и положим, что требуется |
только а—1 |
цепных |
|||
адресов (если |
длина |
цепи равна |
а ) . Если |
в |
формуле |
(6-9) раскрыть |
скобки |
и привести |
подобные |
члены, то а |
уничтожится. Читателю предлагается определить, поче
му так |
получилось. |
|
|
Из |
формулы (6-10) видно, что |
для хранения уровня |
|
косвенной адресации снова требуется N^CJa |
символов. |
||
Однако |
хранение полного ключа |
не требуется |
(так как |
используется ключ, имеющийся в записи) . Количество требуемых символов равно для длины списка С/, для
звездочки (сигнального символа |
ц е п и ) — е д и н и ц е , для |
|
а—1 |
цепных адресов — Са (если |
длина цепи равна а) и |
для |
фрагмента ключа — С/. При |
раскрытии скобок и |
приведении подобных членов а не исчезает, поэтому
результат, полученный по формуле (6-10), |
меньше |
ре |
||||||
зультата, |
полученного |
по формуле (6-9), |
на |
Nn[Ck— |
||||
— С / ( 1 — 1/а)+С„ — 1 ] |
символов. |
|
|
|
|
|
||
Если |
разместить уровень косвенной |
адресации в |
опе |
|||||
ративной |
памяти, то |
формулы |
примут |
следующий |
вид: |
|||
д л я рис. |
6-4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(6-9а) |
|
|
М , = = Л ^ [ С , ; + С г + С а ( 2 - 1 / а ) + 1 ] ; |
|
|
|||||
для рис. |
6-5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(6-10а) |
|
|
Ма |
= N* [С, + |
(Сj + Cd) |
(1 - i/o.) + |
2]. |
|
|
|
Необходимо, однако, заметить, что |
обе |
эти |
формулы |
справедливы в предположении, что декодирование одно
значно, |
в то время |
как формулы |
д л я |
деревьев (6-6) и |
(6-7) не |
учитывают |
этого предположения . Следователь |
||
но, если |
удалить из |
формул (6-9) |
и |
(6-10) часть, свя |
занную с неоднозначностью декодирования [для прове
дения прямого сравнения |
с формулами |
(6-6) |
и (6-7)], то |
|||
они примут |
следующий |
вид: |
|
|
|
|
д л я рис. |
6-4 |
|
|
|
|
|
|
Md = Nk[Cj |
+ |
Ci+Ca(l |
+ l/a)]. |
(6-96) |
|
Д о б а в к а , |
связанная |
с |
неоднозначностью, |
равна: |
||
|
Ск - Сj + |
1 + ( I - |
4-) |
Са] ; |
(6-9в) |
122
для рис. 6-5 |
|
|
|
|
M |
^ / |
V ^ + ^ |
+ l ) . |
(6-106) |
Добавка, связанная |
с неоднозначностью, |
равна: |
||
|
|
|
|
(6-10в) |
Обычно величину а стараются делать близкой к еди |
||||
нице (выделением из ключа logzNk |
бит), чтобы создать |
|||
столько областей |
д л я |
уровня |
косвенной |
адресации, |
сколько имеется ключей. Тогда, чем ближе а к единице,
тем |
лучше |
рандомизатор . Обычно хороший рандомиза- |
тор |
имеет |
а около 1,1. Д л я ускорения декодирования |
требуется уменьшить а (это видно при обсуждении вре
мен |
о б |
р а щ е н и я ) . Так |
как Md |
не |
зависит от а, то потерь |
памяти |
нет (если косвенный уровень не хранится в опе |
||||
ративной п а м я т и ) . Поэтому |
при |
ограниченной памяти а |
|||
надо |
увеличивать. |
|
|
|
|
|
6-5-3. Сравнение |
требований |
к объему памяти |
В табл.'6-4 производится сравнение требований к объему памяти для трех основных методов декодирования: упо рядоченного дерева с ключевыми словами постоянной длины, дерева с ключевыми словами постоянной длины, дерева с ключевыми словами переменной длины и двух методов рандомизации . Д л я к а ж д о г о из этих методов рассмотрены два случая. В первом случае среднее коли чество символов (или усечение постоянной длины) на фрагмент ключа равно 4, что близко к минимальному значению этого параметра, а во втором среднее количе
ство символов |
равно 8, |
что более |
типично для |
длины |
фрагмента. Значения этих параметров у к а з а н ы |
в столб |
|||
це для Cf. Д л я |
к а ж д о г о |
значения |
С/ создается |
дерево |
с т р е м я |
различными значениями Nu |
(ключей |
в системе); |
||||||||||
как указано в третьем столбце таблицы, |
эти значения Nh |
||||||||||||
равны |
соответственно |
1 ООО, 10 ООО и 30 |
ООО. |
|
|||||||||
|
П а р а м е т р а м и |
длины |
ключа |
для |
рандомизатора, |
изо |
|||||||
браженного на рис. 6-4, |
являются |
С,- |
и |
Ch |
[формулы |
||||||||
(6-9в) |
и |
(6-9с)], |
а для |
рандомизатора, |
изображенного |
||||||||
на |
рис. |
6-5, — Cf. |
Д л я |
С,- |
выбрано |
значение |
2, так |
как |
|||||
при |
этом |
выделяется |
16 |
бит |
или |
2 1 8 |
ячеек |
косвенной |
|||||
адресации, что соответствует заданному |
количеству |
клю- |
123
|
|
|
|
|
|
|
|
|
|
|
Т а б л и ц а |
6-4 |
|
Сравнение требований к памяти |
для различных методов декодирования |
справочников |
|
||||||||||
|
|
|
|
|
|
|
іИ£ , символов |
М^, символов (ООО) |
|
Сумма (000) |
|||
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
Добавка для |
двухуровневое |
|
Метод декодирования |
спра |
|
с. |
|
m |
двухуров |
треху ров- |
двухуров |
трехуров |
однозначности |
деревэ+добав - |
||
|
|
декодирования |
ка д л я одноз |
||||||||||
вочников |
|
|
|
(ООО) |
|
невое |
невсе |
невое |
невое |
||||
|
|
|
|
|
|
символов (000) |
начного |
деко |
|||||
|
|
|
|
|
|
|
дерево |
дерево |
дерево |
дерево |
|
дирования |
|
Дерево с ключевыми |
слова |
4 |
- |
1 |
270 |
32 |
8 |
12 |
12 |
12*** |
24 |
||
ми постоянной длины |
|
|
|
10 |
|
340 |
8 |
114 |
114 |
120 |
234 |
||
|
|
|
|
|
30 |
|
896 |
8 |
336 |
336 |
360 |
696 |
|
|
|
|
8 |
— |
1 |
192 |
72 |
12 |
18 |
18 |
12 |
30 |
|
|
|
|
|
|
10 |
|
632 |
12 |
159 |
159 |
120 |
279 |
|
|
|
|
|
|
30 |
|
1884 |
12 |
471 |
471 |
360 |
831 |
|
Дерево с ключевыми |
слова |
4 |
— |
1 |
150 |
56 |
8 |
21 |
21 |
Ü |
21 |
||
ми переменной |
длины |
|
|
|
10 |
|
536 |
8 |
201 |
201 |
0 |
201 |
|
|
|
|
|
|
30 |
|
1600 |
16 |
600 |
60S |
0 |
600 |
|
|
|
|
8 |
|
I |
122 |
108 |
12 |
27 |
27 |
0 |
27 |
|
|
|
|
|
|
10 |
|
984 |
12 |
246 |
246 |
0 |
2Й6 |
|
|
|
|
|
|
30 |
|
2952 |
36 |
738 |
744 |
0 |
738 |
|
Рандомизатор |
(рис. 6-4) |
2 |
12 |
1 |
— |
— |
— |
4.4* |
|
11,4**** |
15,8 |
||
|
|
|
|
|
10 |
|
|
|
44,0 |
|
114,0 |
158,0 |
|
|
|
|
|
|
30 |
|
|
|
1320 |
|
342,0 |
474,0 |
|
Рандомпзатор (рис. 6-5) |
2 |
— |
1 |
— |
— |
— |
3,4** |
|
1,6***** |
5,0 |
|||
|
|
|
|
|
10 |
|
|
|
34 |
|
16,0 |
50,0 |
|
|
|
|
|
|
30 |
|
|
|
102 |
|
43,0 |
150,0 |
|
Ct =3000; С г = 3 0 0 ; |
С,=2 ; С а = 4 ; |
С Л = 2 ; |
Wd =4; а = І , І . |
|
|
|
|
|
|
|
*Формула (6-96).
**Формула (6-106)
***Любое, исключая поиски или просмотр полного ключа .
****формула (6-9в).
**••* Формула (6-10в).
чей Nk- |
Д л я |
средней длины |
ключа Cf t выбрано значение |
|||
12 (этот |
п а р а м е т р |
имеет смысл только д л я первого ран |
||||
домизатора) . В четвертом |
столбце |
(для т) |
приведено |
|||
количество |
ключей |
дерева, |
которое |
можно |
разместить |
на одной д о р о ж к е . Значения параметров получены из
формул (6-1) и (6-2). В |
нижней части таблицы приво |
||||||
дятся типичные значения |
постоянных |
параметров . Объем |
|||||
дорожки |
берется |
равным 3000, |
что |
является |
близким |
||
к объему |
д о р о ж к и |
диска |
I B M , |
1301, |
равному |
2800 сим |
|
волов. Н а |
к а ж д о й д о р о ж к е резервируется |
10% |
простран |
||||
ства, соответствующего |
300 символам . |
Д л я |
указания |
длины списка Ci достаточно двух символов*, или 16 бит. Предполагается, что адресная ссылка Са занимает четыре
символа |
(32 |
бит) . Д л я |
заголовка |
Сл. в дереве |
ключевых |
||||||||||
слов |
переменной |
длины |
достаточно |
двух |
символов, |
||||||||||
а среднее количество однозначно закодированных |
фраг |
||||||||||||||
ментов различной |
длины |
в дереве ключевых слов пе |
|||||||||||||
ременной |
длины |
полагается |
равным |
4. |
Д л и н а |
цепи |
а, |
||||||||
используемой в |
методе |
рандомизации, |
равна 1,1, что |
|
сов |
||||||||||
местимо со значениями Cf |
и Nk. |
Требования |
к |
объему |
|||||||||||
оперативной |
памяти д л я двух- и трехуровневого |
дерева |
|||||||||||||
даются (в символах) соответственно в столбцах |
5 |
|
и 6 |
||||||||||||
табл. 6-4. Требования к объему памяти |
д л я двух- и |
трех |
|||||||||||||
уровневого |
дерева |
даются |
(в тысячах |
символов) |
|
соот |
|||||||||
ветственно |
в |
столбцах |
7 и 8. П р е д п о л а г а е т с я т а к ж е , |
что |
|||||||||||
как |
уровень |
косвенной |
адресации, |
т а к |
и выходной |
уро |
вень рандомизаторов хранятся на диске. Следовательно, требований к оперативной памяти нет, и имеет смысл
приводить |
сведения |
д л я |
рандомизаторов по |
|
объему |
|||||||||||||
З У П Д |
только в |
случае |
двухуровневого дерева . |
Т а к |
как |
|||||||||||||
в формулу |
(6-7), |
по |
которой |
рассчитываются |
|
деревья, |
||||||||||||
не включено предположение о неоднозначности |
д л я |
по |
||||||||||||||||
стоянного дерева [в отличие от формул |
(8-9) |
|
и |
(6-10) |
||||||||||||||
для |
рандомизаторов], |
то |
данные |
д л я |
дисков |
были |
раз |
|||||||||||
биты |
на |
две |
части. Одна — д л я |
декодера |
без |
предполо |
||||||||||||
ж е н и я |
о |
|
неоднозначности декодирования |
(табл . |
6-4 и |
|||||||||||||
6-5), другая указывает добавку, связанную с |
неодно |
|||||||||||||||||
значностью |
(столбец |
9). Д л я |
постоянного |
дерева |
можно |
|||||||||||||
либо ввести избыточность, проверяя записи файла |
по |
|||||||||||||||||
полному |
ключу |
(что |
увеличивает количество |
поисков |
||||||||||||||
в ф а й л е ) , |
либо |
хранить |
|
полный |
ключ |
из |
12 |
|
символов |
|||||||||
в дополнение к фрагменту. В |
случае.переменного |
дерева |
||||||||||||||||
* |
Здесь |
|
считается, |
что |
символ |
соответствует |
одному |
байту. |
||||||||||
{Прим. |
пер.) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
125
этой добавки нет, так как оно является однозначным декодером. Д л я раидомнзаторов в формулах (6-9) н (6-10) добавки, соответствующие неоднозначности, мож но выделить. В этом случае для них применяются фор мулы (6-96) и (6-9в), (6-106) и (6-10в). Последние две формулы используются для расчета раидомнзаторов (см. сноску к Табл. 6-4).
Перед анализом этой таблицы следует учесть, что обобщение приведенных в ней данных об относительных достоинствах рассмотренных методов может привести к неверным выводам, так как эти цифры основаны на данном наборе параметров . Другой набор параметров может привести к другим величинам. Следовательно, при проведении подобного анализа разработчик должен со ставить аналогичную таблицу, используя параметры, от
вечающие области применения . его разработки, а |
затем |
||
у ж е сравнить полученные |
результаты. |
|
|
Из проведенного анализа можно сделать несколько |
|||
выводов. Во-первых |
(как |
и предполагалось), поскольку |
|
m значительно больше 10, то требуемые объемы |
памяти |
||
на дисках для двух- |
и трехуровневых деревьев |
почти |
совпадают. Незначительное отличие имеет место только при больших объемах словарей .
Во-вторых, объем оперативной памяти, требуемый для двух- и трехуровневых деревьев, существенно раз личен. Степень этого различия проявляется в соотноше нии объема памяти и времени доступа. При декодиро вании с помощью двухуровневого дерева требуется одно
обращение |
к З У П Д , |
но |
больший |
объем |
оперативной |
памяти, в то время как при использовании |
трехуровнево |
||||
го дерева |
требуется |
два |
обращения |
к З У П Д , но мень |
ший объем оперативной памяти. Конечно, по-видимому, более в а ж н ы абсолютные, чем относительные, значения. Д л я случая іУѴ;4= 1000, очевидно, предпочтительнее двух уровневое дерево, так как отличие между 32 и 8 симво лами несущественно. С другой стороны, объем оператив ной памяти (896, 1884, 1600 или 2952 символов), тре буемый словарем в 30 000 ключей, может оказаться зна чительным, особенно если эти ключи д о л ж н ы постоянно храниться в оперативной памяти.
В-третьих, достижение однозначности декодирования в постоянном дереве обходится весьма дорого, так как требуется лишнее обращение к З У П Д . Однако общий объем памяти (с учетом достижения однозначности), не-
126
обходимый для постоянного дерева, не намного |
больше, |
||||
чем для |
переменного дерева . В то ж е время |
однозначное |
|||
дерево проще программировать . Поэтому, если |
разработ |
||||
чик предпочитает |
декодировать |
однозначно |
(жертвуя |
||
объемом |
п а м я т и ) , |
то ему следует выбрать |
постоянное |
||
дерево. |
|
|
|
|
|
В-четвертых, рандомизатор, |
изображенный |
на рис. |
6-5, предпочтительнее рандомизатора, изображенного на рис. 6-4, по фактору 3, которым оценивается гибкость декодера. Так, рандомизатор, изображенный на рис. 6-5, специально приспособлен для организации файла в виде связного списка или мультисписка, в то время как ран домизатор, изображенный на рис. 6-4, полностью уни версален.
В-пятых, можно провести еще одно сравнение между деревьями и рапдомизаторами . Если учесть дополнитель ные требования к объему З У П Д , необходимые (при организации постоянного дерева) для однозначного де кодирования, то общий объем памяти на дисках опреде
ляется значением |
параметра |
Мй (табл. |
6-4). |
Д л я рандо- |
мнзаторов общий |
требуемый |
объем памяти |
на дисках |
|
указывается в последнем столбце табл . |
6-4. |
М о ж н о от |
метить близкие значения этого параметра для дерева и рандомизатора, изображенного на рис. 6-4, но сущест венно разные значения для дерева и рандомизатора, изо браженного на рис. 33. С другой стороны, если выходной уровень постоянного дерева содержит изображение пол ного ключа, то отличие в требуемом объеме З У П Д меж ду деревом и рандомизатором, изображенном на рис. 6-4, также незначительное, в то время как между деревом и рандомизатором, изображенном на рис. 6-5, весьма су щественное.
Резюмируя, следует отметить, что при выборе вида
декодера справочников следует |
учитывать |
следующие |
||
количественные |
характеристики: |
скорость |
декодирова |
|
ния, |
требования |
к объемам оперативной и внешней па |
||
мяти, |
сложность |
программирования, а т а к ж е |
качествен |
ные факторы: возможность поиска по диапазону и слу чайность, присутствующая при организации файла ме тодом связного списка.
В табл . 6-5 представлены основные результаты по сравнению методов декодирования, полученные при ана лизе приведенных в табл . 6-4 количественных и качест венных факторов . В таблицу включены как двухуров-
127
|
|
|
|
|
|
|
|
Т а б л и ц а 6-5 |
|
Сравнение |
декодеров справочников, рассмотренных в табл. 6-4 |
||||||||
|
|
|
Требуемые объемы |
|
|
|
|||
|
|
|
оперативной памтпі |
|
|
|
|||
|
|
|
|
(ЗУПД) |
|
|
"^Возмож |
|
|
Методы декодирова |
|
|
|
|
Скорость |
Легкость |
|||
|
|
|
|
ность |
|||||
ния справочников |
|
без |
учета |
с учетом |
декодчоо- |
поиска по |
программи |
||
|
|
|
неодно-Т |
г неодно-'' |
Гвэішя |
диапазону |
рован'»! |
||
|
|
|
значности |
значности |
|
|
|
||
|
|
|
декодера |
декодера |
|
|
|
||
Двухуровневое |
|
4 |
(2*) |
НП |
(4) |
1 |
Да |
1 |
|
постоянное дере |
|
|
|
|
|
|
|
||
во (СѴ=4) |
|
|
|
|
|
|
|
|
|
Трехуровневое |
по |
2 |
(2) |
НП |
(4) |
3 |
Да |
2 |
|
стоянное |
дерево |
|
|
|
|
|
|
|
|
(С,=4) |
|
|
|
|
|
|
|
|
|
Двухуровневое |
пе |
5 |
(4) |
НП |
(3) |
1 |
Нет |
3 |
|
ременное |
дерево |
|
|
|
|
|
|
|
|
( Q = 4 ) |
|
|
|
|
|
|
|
|
|
Трехуровневое |
пе |
3 |
(4) |
НП |
(3) |
3 |
я |
1 |
|
ременное 'дерево |
|
|
|
|
|
|
|
||
(С,=4) |
|
|
|
|
|
|
|
|
|
Рандомизатор |
|
1 |
(3) |
НП |
(2) |
4 |
|
1 |
|
(рис. 6-4) |
|
|
|
|
|
|
|
|
|
Рандомизатор |
|
1 |
(1) |
НП |
(I) |
2 |
|
2 |
|
(рис. 6-5) |
|
|
|
|
|
|
|
|
|
* Упорядочивание: меньшие |
номера соответствуют более оптимальным значениям |
|||||
параметров. НП означает неприменимо. |
|
|
|
|
||
невые, так и трехуровневые деревья |
(но только |
д л я |
С/= |
|||
= 4, т а к к а к |
это наиболее |
удобное значение дл я сравне |
||||
ния с Ct=2 |
дл я р а н д о м и з а т о р а ) . |
|
|
|
||
К а ж д ы й |
параметр |
или |
фактор |
(исключая |
возмож |
|
ность поиска по диапазону) |
с н а б ж е н |
номером. Чем |
опти |
мальнее параметр, тем меньше номер. Так, например, по скорости декодирования лучшими оказываются двух
уровневые |
деревья, нежели |
рандомизатор, |
изображен |
||
ный на рис. 6-4. |
|
|
|
||
Е щ е раз |
заметим, |
что читатель долже н |
осторожно |
||
подходить |
к |
категорическим |
обобщениям |
результатов |
|
проведенного |
анализа, |
так как оценки полностью осно- |
|||
128 |
|
|
|
|
|
ваны на |
данных, приведенных в табл . 6-4. Эти |
данные |
||
в свою |
очередь |
основаны |
на выбранных рабочих |
пара |
метрах. |
|
|
|
|
|
6-6. |
СКОРОСТЬ |
ДЕКОДИРОВАНИЯ |
|
Скорость декодирования определяется сравнительно про
сто. Д л я |
этого надо вычислить время перемещения го |
|
ловок (в случае З У П Д с подвижными |
головками), время |
|
задержки |
при повороте дорожки, |
время считывания |
с дорожки, время обращения к оперативной памяти и учесть количество оборотов диска, потерянных при об
работке в оперативной |
памяти. |
Последовательность |
|||
рассмотренных событий |
для |
трехуровневого |
дерева |
||
с первым уровнем, |
хранимым |
в |
оперативной |
памяти, |
|
представлена в табл . |
6-6. В этом |
примере предполагает |
ся, что декодер выполнен с использованием пакета дис ков I B M 2311. Кроме того, предполагается, что к а ж д ы й набор вершин третьего уровня, связанный с данной вер шиной второго уровня, хранится на том ж е цилиндре, что и вершина второго уровня. Поэтому нет необходимо сти перемещать головки между вторым и третьим уров
нями. Это |
справедливо |
при |
хранении |
дерева |
на |
диске |
|||||
|
|
|
|
|
|
|
|
Т а б л и ц а |
6-6 |
||
Время декодирования |
для |
трехуровневого дерева |
|
|
|||||||
|
|
|
|
|
|
|
|
Номинальное значе |
|||
Компоненты |
Уровень дерева |
Время |
(симво |
ние |
(среднее) |
для |
|||||
лическое) |
пакета |
дисков |
|||||||||
|
|
|
|
|
|
|
|
I BM 2311, млсек |
|||
Обработка записей в опе |
|
1 |
|
0 |
|
|
|
0 |
|
||
ративной |
памяти |
|
|
|
|
|
|
|
|
|
|
Подвод головок |
|
|
|
Р |
|
85 |
|
||||
Задержка при |
повороте |
|
|
|
|
|
|
12,5 |
|
||
Считывание с |
дорожки |
|
|
|
R |
|
|
25 |
|
||
Обработка |
записи |
|
2 |
|
|
0 |
|
|
0 |
|
|
Потерянный |
оборот |
|
|
|
R |
|
|
25 |
|
||
Считывание |
с |
дорожки |
|
|
|
R |
|
|
25 |
|
|
Обработка |
записи |
|
3 |
|
|
0 |
|
|
0 |
|
|
Сумма |
|
|
|
|
|
P + |
3.5Я |
|
172.5 |
|
|
9-88 |
|
|
|
|
|
|
|
|
|
|
129 |