Page 22 - 4868
P. 22

Ошибка! Стиль не определен.                                                                20

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

               (Distributed  Shared  Memory,  DSM),  в  якій  кожна  сторінка  розташована  в
               одному  із  модулів  пам’яті,  а  кожна  машина  володіє  своєю  власною
               віртуальною  пам’яттю  і  власною  таблицею  сторінок.  Якщо  процесор
               викликає  командуLOAD  або  STORE,  звертаючись  до  сторінки,  якої  у  нього
               немає,  то  генерується  системна  помилка.  Після  цього  операційна  система
               знаходить  потрібну  сторінку  і  звертається  до  відповідного  процесора,  щоб
               той  вивантажив  її  із  пам’яті  тапередав  через  внутрішню  комунікаційну
               мережу  іншому  процесору.  Коли  сторінка  потрапляє  до  процесора-
               одержувача,  то  вона  відображається  на  пам’ять,  і  виконання  перерваної
               команди  поновлюється.  У  даному  випадку,  операційна  система  одержує
               відсутні  сторінки  не  з  диска,  а  з  пам’яті.  При  цьому  у  користувача
               складається враження, що машина має єдину спільну пам’ять.
                     Ще  один  підхід  полягає  упрограмній  реалізаціїспільної  пам’ятічерез
               систему користувача реального часу. При такому підході абстракцію спільної
               пам’яті  створює  мова  програмування,  і  ця  абстракція  реалізується
               компілятором  (тобто  модель  спільної  пам’яті  може  залежати  від  мови
               програмування). Наприклад, модель Linda заснована на абстракції спільного
               простору кортежів (записів даних, що містять набори полів). Процеси будь-
               якої машини можуть взяти кортеж із спільного простору або відправити його
               успільний  простір.  Оскільки  доступ  до  цього  простору  повністю
               контролюється  програмно  (системою  реального  часу  Linda),  то  ніякої
               спеціальної  апаратної  підтримки  або  особливої  операційної  системи  не
               потрібно.
                     Іншим      прикладомспільної          пам’яті,     що     реалізується      системою
               користувача реального часу є модель спільних об’єктів даних у системі Оrcа.
               У  моделі  Оrcа  процеси  спільно  використовують  не  кортежі,  як  в  Linda,  а
               базові об’єкти, почергово викликаючи для них необхідні. Якщо метод змінює
               внутрішній  стан  об’єкта,  то  система  реального  часу  стежить  за  тим,  щоб
               одночасно  були  змінені  всі  копії  цього  ж  самого  об’єкта  на  всіх  інших
               машинах. А оскільки об’єкти – це чисто програмна концепція, то їх можна
               реалізовувати  за  допомогою  системи  реального  часу  без  втручання
   17   18   19   20   21   22   23   24   25   26   27