Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
mos-full-lecs.doc
Скачиваний:
41
Добавлен:
09.11.2018
Размер:
1.71 Mб
Скачать
  1. Потоки управління

Потоки управління це основна одиниця розпаралелення в Windows.

Потік – це одиниця монопольного використання ресурсів

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

Розглядають дві концепції:

  • Віртуальна пам'ять (звільнити програму від виділення пам’яті і їх накладання з іншими процесами)

  • Потоків управління;

  1. Різниця між сегментною та сторінковою організацією пам’яті

• рaging реалізує розподіл пам’яті та підкачку більш легко;

• ніякої зовнішньої фрагментації;

• кожен процес поділяється на множину маленьких, фіксованого розміру частин, так званих сторінок (pages);

• фізична пам’ять поділяється на велику кількість маленьких, розміру частин, так званих фреймів (frames).

Сторінкова організація пам’яті(Paging). Однакового розміру сторінки по 16К переважно.

Сегментна організація пам’яті (стеку, даних, програми). Ця ділянка має початок і зміщення в сегменті.

  1. Управління пам’яттю: принцип локальності звертань

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

  1. Основні види локальності звертань

Локальність в часі(temporal locality), просторі (spatial locality ), рівновіддалена локальність(equidistant locality), локальність розгалуження(branch locality) .

  1. Управління пам’яттю: локальність у часі(temporal locality)

Якщо відбулося звертання по деякій адресі, то наступне звертання по цій же адресі з великою імовірністю відбудеться найближчим часом(tempral proximity);

  1. Управління пам’яттю: локальність у просторі(spatial locality )

Якщо відбулося звертання по деякій адресі, то з високим ступенем імовірності найближчим часом відбудеться звертання до сусідніх адрес.

  1. Управління пам’яттю: еквідистантна локальність

Рівновіддалена локальність(Equidistant locality). Ділянки пам’яті до яких відбуваються звертання утворюють регулярну (передбачувану) структуру у просторово-часовому координатному просторі. За простою лінійною функцією можна прогнозувати до якої ділянки пам’яті буде звертання в наступний момент часу. Такі структури утворюються в циклах. Основна мета знаходження регулярності звертаннях, не обов’язково по лінійному закону але функції з повтором.

  1. Автоматичне управління виділенням та звільненням пам’яті

Стратегія GC складається з 2 кроків:

  • Знаходження об’єктів даних які не будуть використовуватись в подальшому(сміття);

  • Вивільнення ресурсів які споживають ці об’єкти;

При кожному оголошені змінної під неї виділяється область пам’яті. GC працює в нескінченному циклі збору даних про сміття, використовують різного роду програмування…

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]