маційних розрядів і 8 контрольних. Можна розрахувати ефект від застосування коригуючого кодування:
Нехай ймовірність відмови одиночного модуля пам'яті розрядністю 1 біт за деякий час P 1 = 10 -5 , тоді ймовірність відмови одного з необхідних 64 модулів пам'яті за той же час P заг = 64 * P 1 = 6.4 * 10 -4 . У разі застосування коду Хеммінга для втрати інформації необхідні дві помилки у 72-х розрядах: P заг = (72 * P 1 ) * (71 * P 1 ) = 5.112 * 10 - 7 . Таким чином надійність зростає більш ніж на три порядки при збільшенні вартості на 12.5%. Зрозуміло ці міркування вірні лише у разі пренебрежимо малу ймовірність відмов і вартості кодера і декодера в порівнянні з модулями пам'яті, однак у випадку реальних обсягів пам'яті це дійсно так.
2.4 Організація резервування та відновлення при відмові будь-якого компонента МПВК
Однією з цілей створення МПВК є досягнення підвищеної надійності обчислювальної системи. Підвищення надійності функціонування в МПВК досягається простіше, ніж у однопроцесорних ЕОМ, однак вимагає ускладнення організації як апаратури МПВК, так і системного програмного забезпечення, а для досягнення найкращого ефекту такої модифікації нерідко вимагає і прикладне програмне забезпечення. При правильній організації МПВК відмови не призводять до втрати даних або припинення обчислювального процесу, а або взагалі не позначаються на роботі МПВК, або викликають поступову деградацію обчислювальної потужності. Заходи щодо забезпеченню відмовостійкості свої для кожного компонента МПВК.
Відмови оперативної пам'яті були розглянуті вище. Відмови в комутаційної матриці також як і відмови оперативної пам'яті доцільно маскувати застосуванням кодів, коригувальних помилки. Найбільш складні для виявлення та відновлення інформації відмови процесорів, однак у разі наявності вбудованих засобів самоконтролю або при періодичному прогоні на кожному процесорі контрольних тестів, завдання виявлення вирішується досить легко. Відновлення обчислювального процесу полягає у виключенні операційною системою відмовив процесора зі списку доступних і запуску на іншому процесорі потерпілого процесу з останньої контрольної точки. Відмови процесорів вводу-виводу виявляються досить легко, відновлення зважаючи на наявність 4-х ідентичних за функціям ПВВ також нескладно - необхідно лише підключення критичних для роботи МПВК периферійних пристроїв до всіх ПВВ з відповідною комутацією. Відмови самих периферійних пристроїв - найбільш проста і добре опрацьована частина організації відмовостійкості. Найбільш часто застосовується той чи інший вид резервування на рівні пристроїв - навантажене, ненавантаженого або ковзне.
Необхідно відзначити, що підтримки операційної системи не вимагає в даному випадку лише організація відмовостійкості оперативної пам'яті, комутаційної матриці і деяких периферійних пристроїв. Всі інші рішення вимагають тій чи іншій підтримки на рівні ядра операційної системи МПВК.
Також варто підкреслити, що, незважаючи на можливості організації відмовостійкості МПВК, всі найбільш серйозні реалізації відмов обчислювальних систем являють собою ММВК. Це пояснюється більшою ізольованістю, а отже і до меншого впливу відмовили модулів на інші модулі в ММВК.
В
3. Організація функціонування ОС на МПВК
ОС МПВК повинна виконувати всі функції ОС однопроцесорній ЕОМ, однак додатково вона повинна забезпечувати ефективне використання ресурсів багатопроцесорного комплексу (див. розділи "Симетрична багатопроцесорна обробка "," Нитки "). Так як проблеми реалізації ОС більш серйозні, ніж у однопроцесорному варіанті, необхідно приділити особливу увагу забезпеченню коректного конкурентного доступу (пропонується використання семафорів - див "Семафори"). Для уникнення простоїв системи необхідно уникати тупикових ситуацій (див. розділи "Статті без ситуації", "Запобігання тупикових ситуацій "). Так як ефективних алгоритмів дозволу тупиків без втрати інформації, в загальному випадку, не існує, дані методи не розглядаються (Це в основному знищення процесів, починаючи з найменш пріоритетних процесів по якомусь визначеному заздалегідь критерієм).
Загалом можна сказати, що ОС багатопроцесорних ЕОМ схожі за функціями та реалізації на ОС однопроцесорних ЕОМ, однак вони виконують деякі додаткові функції, а реалізація основних функцій часто більш складна.
3.1 Симетрична многопроцессорная обробка
(Symmetric Multiprocessor Processing - SMP)
Для багатопроцесорної обробки завжди потрібні і відповідні апаратні платформи, і операційні системи. Однак ОС можуть використовувати багатопроцесорні платформи кількома різними способами. При асиметричної багатопроцесорної обробці процеси прикладних програм призначаються конкретному процесору...