На головну

багаторівневий підхід

  1. Quot; Акмеологический підхід "в дослідженні розвитку професіонала
  2. А. Об'єднання системного і еволюційного підходів.
  3. Акмеологический підхід у вирішенні практичних завдань
  4. Аксіологічний підхід до вивчення педагогічних явищ
  5. Аксіологічний підхід до вивчення педагогічних явищ
  6. Алфавітний підхід до визначення кількості інформації
  7. Альтернативні підходи до монетарної політики

Ще більш ефективною концепцією, розвиваючої ідею декомпозиції, є багаторівневий підхід. Після подання вихідної задачі у вигляді безлічі модулів ці модулі групують і впорядковують за рівнями, що створює ієрархію. Відповідно до принципу ієрархії для кожного проміжного рівня можна вказати безпосередньо примикають до нього сусідні вищерозміщений і ніжній рівні (рис. 4.2).

Мал. 4.2. Багаторівневий підхід - створення ієрархії задач

З одного боку, група модулів, що складають кожний рівень, для вирішення своїх завдань повинна звертатися із запитами тільки до модулів сусіднього нижчого рівня. З іншого боку, результати роботи кожного з модулів, віднесених до деякому рівні, можуть бути передані тільки модулям сусіднього вищого рівня. Така ієрархічна декомпозиція задачі передбачає чітке визначення функцій і інтерфейсів не тільки окремих модулів, але і кожного рівня.

Міжрівневий інтерфейс, званий також інтерфейсом послуг, визначає набір функцій, які нищележащий рівень надає вищерозміщений (рис. 4.3).

Мал. 4.3. Концепція багаторівневої взаємодії

Такий підхід дає можливість проводити розробку, тестування і модифікацію окремого рівня незалежно від інших рівнів. Ієрархічна декомпозиція дозволяє, рухаючись від нижчого рівня до вищого, переходити до все більш і більш абстрактному, а значить, більш простому поданням вихідної задачі.

ПРИКЛАД

Розглянемо задачу зчитування логічного запису з файлу, розташованого на локальному диску. Її (дуже спрощено) можна представити у вигляді такої ієрархії приватних завдань.

1. Пошук по символьному імені файлу його характеристик, необхідних для доступу до даних: інформації про фізичне розташування файлу на диску, розмір і ін.

Оскільки функції цього рівня пов'язані тільки з переглядом каталогів, уявлення про файлову систему на цьому рівні надзвичайно абстрактні: файлова система має вигляд графа, в вузлах якого знаходяться каталоги, а листям є файли. Ніякі деталі фізичної і логічної організації даних на диску даний рівень не цікавлять.

2. Визначення зчитується частини файлу.

Для вирішення цього завдання необхідно знизити ступінь абстракції файлової системи. Функції даного рівня оперують файлом як сукупністю певним чином пов'язаних фізичних блоків диска.

3. Зчитування даних з диска.

Після визначення номера фізичної блоку файлова система звертається до системи введення-виведення для виконання операції читання. На цьому рівні вже фігурують такі деталі пристрою файлової системи, як номери циліндрів, доріжок, секторів.

Серед функцій, які може запросити прикладна програма, звертаючись до верхнього рівня файлової системи, може бути, наприклад, така:

ПРОЧИТАТИ 22 логічних ЗАПИС ФАЙЛА DIR1 / MY / FILE.TXT

Верхній рівень не може виконати цей запит «тільки своїми силами», визначивши по символьному імені DIR1 / MY / FILE.TXT фізичну адресу файлу, він звертається із запитом до нижчого рівня:

ПРОЧИТАТИ 22 логічних ЗАПИС ІЗ ФАЙЛА,

ЯКИЙ МАЄ ФИЗИЧЕСКИЙ АДРЕСА 174 І РОЗМІР 235

У відповідь на запит другий рівень визначає, що файл з адресою 174 займає на диску п'ять несуміжних областей, а шукана запис знаходиться в четвертій області в фізичному блоці 345. Після цього він звертається до драйверу із запитом про читанні необхідної логічного запису.

Відповідно до цієї спрощеною схемою взаємодія рівнів файлової системи було односпрямованим - зверху вниз. Однак реальна картина істотно складніше. Дійсно, щоб визначити характеристики файлу, верхній рівень повинен «розкрутити» його символьне ім'я, тобто послідовно прочитати весь ланцюжок каталогів, зазначену в імені файлу. А це означає, що для вирішення свій завдання він кілька разів звернеться до нижчого рівня, який, в свою чергу, кілька разів «попросить» драйвер для визнання названих каталогів з диска. І кожен раз результати будуть передаватися від низу до верху.

Завдання організації взаємодії комп'ютерів в мережі теж може бути представлена ??у вигляді ієрархічно організованої безлічі модулів. Наприклад, модулів нижнього рівня можна доручити питання, пов'язані з надійною передачею інформації між двома сусідніми вузлами, а модулів наступного, більш високого рівня - транспортування повідомлень в межах всієї мережі. Очевидно, що останнє завдання - організація зв'язку двох будь-яких, не обов'язково сусідніх, вузлів - є більш загальною і тому її рішення може бути отримано шляхом багаторазових звернень до нижчого рівня. Так, організація взаємодії вузлів А і В може бути зведена до почергового взаємодії пар проміжних суміжних вузлів (рис. 4.4).

Мал. 4.4. Взаємодія довільної пари вузлів



Попередня   40   41   42   43   44   45   46   47   48   49   50   51   52   53   54   55   Наступна

Неефективність при передачі пульсуючого трафіку | комутація пакетів | буферизація пакетів | дейтаграмному передача | Передача зі встановленням логічного з'єднання | Передача зі встановленням віртуального каналу | Транспортна аналогія для мереж з комутацією пакетів і каналів | Кількісне порівняння затримок | Ethernet - приклад стандартної технології з комутацією пакетів | ГЛАВА 4. Архітектура і стандартизація мереж |

© um.co.ua - учбові матеріали та реферати