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

Урок №7

(згідно навчальної робочої програми)

Тема: «Підтримка багатопроцесорного оброблення»

Питання:

1. Підтримка багатопроцесорного оброблення

2. Режими багатопроцесорного оброблення

3. Підтримка 64-бітових процесорів

Підтримка багатопроцесорного оброблення

Сучасні сервери, як правило, є багатопроцесорними система­ми. Такі системи звичайно складаються з набору запам'ятовуваль­них пристроїв і кількох центральних процесорів, що працюють під керуванням однієї ОС. Усі процесори звичайно мають доступ до будь-якої ділянки пам'яті будь-якого запам'ятовувального при­строю. Для забезпечення максимальної продуктивності таких сис­тем ОС повинна ефективно виконувати розпаралелювання потоків самої операційної системи і користувачів. При розпаралелюванні в багатопроцесорній системі значно ускладнюються проблеми синхронізації. Покажемо це на простому прикладі. Нехай проце­сор записує дані, оновлені дані знаходяться в кеші цього процесо­ра і переписуються в оперативну пам'ять не відразу. Як забезпечи­ти використання цих даних іншим процесором? Чергова функція операційних систем — підтримка багатопроцесорного оброблення. Сучасні операційні системи підтримують багатопроцесорну ро­боту. Оскільки ОС UNIXвикористовується досить тривалий час для великих обчислювальних систем (mainframe), що, як прави­ло, є багатопроцесорними, вона допускає одночасну роботу з 256 і більше процесорами.

Операційні системи фірми Microsoftвико­ристовувалися донедавна тільки на персональних ЕОМ, для яких підтримка багатопроцесорного режиму була неактуальною.На­ближення за обчислювальною потужністю комп'ютерів, на яких використовуються обидва типи ОС, привело до того, що сучасні ОС фірми Microsoft(після WINDOWS'98) також підтримують багато­процесорний режим роботи.Операційна система WINDOWS' 2003 може працювати із системами з числом процесорів не більше 32.

Багатопроцесорне оброблення може бути забезпечене у двох режимах:

• Симетрична система (symmetric multi processing— SMP) усі потоки можуть виконуватися на будь-якому процесорі, тобто процесори розглядаються як однакові. Усі процесори розділяють один адресний простір з погляду його доступності. Зауважемо, що в таких системах достовірність даних забезпечується на іратному рівні. Саме такий режим реалізований у WINDOWS.

Слід зазначити, що хоча можливість доступу до будь-якої ділянки пам'яті дійсно забезпечується такими системами, але час :тупу залежить від місця розташування цієї ділянки. Так, час доступу до «своєї» пам'яті значно менший, ніж до «чужої». Така істивість пам'яті називається NUMA(Non-Uniform Memory Access)— неоднаковий доступ до пам'яті. Отже, ОС для забезпечення ксимальної продуктивності повинна враховувати і цей фактор.

• Несиметрична система (asymmetric multiprocessing— MP)— операційна система вибирає один процесор для виконан- потоків ядра (master processor),а інші процесори використовуються для потоків користувальницьких додатків.

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

Підтримка 64-бітових процесорів

У наш час широко впроваджуються 64-бітові процесори. Це означає не тільки розширення адресного простору і збільшення швидкості виконання команд, але й використання нових принципів сонання програм. На зміну уявному паралельному виконанню жим розподілу часу) приходить справжнє розпаралелювання. Модулі ОС, що залежать від процесора, повинні бути написані мовою 64-бітового процесора, інші модулі якнайповніше мають ураховувати всі його можливості, і паралельне виконання — у першу чергу. Існують ОС, що використовуються винятково для 64-бітових щесорів (АІХ), сучасні ОС підтримують роботу з процесорами цього класу.

Контрольні питання:

  1. Для чого використовується багатопроцесорне оброблення?

  2. Як працює багатопроцесорне оброблення?

  3. В яких режимах працює багатопроцесорне оброблення?

  4. Для чого необхідна підтримка 64-бітових процесорів?

Література: Бондаренко М.Ф. Операційні системи : навч. посібник / М.Ф. Бондаренко, О.Г. Качко. – Х.: Компанія СМІТ, 2008. – 432 с., стор.18-19