Портал освітньо-інформаційних послуг «Студентська консультація»

  
Телефон +3 8(066) 185-39-18
Телефон +3 8(093) 202-63-01
 (093) 202-63-01
 studscon@gmail.com
 facebook.com/studcons

<script>

  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){

  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),

  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)

  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

 

  ga('create', 'UA-53007750-1', 'auto');

  ga('send', 'pageview');

 

</script>

Оперативна пам'ять

Предмет: 
Тип роботи: 
Реферат
К-сть сторінок: 
41
Мова: 
Українська
Оцінка: 

(p, s), де p – номер віртуальної сторінки процесу (номерація сторінок починається з 0), а s – зсув у межах віртуальної сторінки. З огляду на те, що розмір сторінки дорівнює 2 у ступені до, зсув s може бути отримано простим відділенням k молодших розрядів у двійеовому записі ВА. Старші розряди, що залишилися, являють собою двійковий запис номера сторінки p.

При кожному звертанні до ОП апаратними засобами виконуються наступні дії:
1. на підставі початкової адреси таблиці сторінок (вміст регістра адреси таблиці сторінок), номера віртуальної сторінки (старші розряди ВА) і довжини запису в таблиці сторінок (системна константа) визначається адресу потрібного запису в таблиці;
2. з цього запису витягається номер фізичної сторінки;
3. до номера фізичної сторінки приєднується зсув (молодші розряди віртуальної адреси).
Використання в пункті (3) того факту, що розмір сторінки дорівнює ступеню 2, дозволяє застосувати операцію конкатенації (приєднання) замість більш тривалої операції додавання, що зменшує час одержання фізичної адреси, а значить підвищує продуктивність комп'ютера.
На продуктивність системи зі сторінковою організацією пам'яті впливають тимчасові витрати, зв'язані з обробкою сторінкових переривань і перетворенням ВА у фізичну. При часто виникаючих сторінкових перериваннях система може витрачати велику частину часу, на свопінг сторінок. Щоб зменшити частоту сторінкових переривань, варто було б збільшувати розмір сторінки. Крім того, збільшення розміру сторінки зменшує розмір таблиці сторінок, а значить зменшує витрати пам'яті. З іншого боку, якщо сторінка велика, значить велика і фіктивна область в останній віртуальній сторінці кожної програми. У середньому на кожній програмі губиться половина обсягу сторінки, що в сумі при великій сторінці може скласти істотну величину. Час перетворення ВА у фізичну у значній мірі визначається часом доступу до таблиці сторінок. У зв'язку з цим таблицю сторінок прагнуть розміщати в «швидких» ЗП. Це може бути, наприклад, набір спеціальних регістрів чи регістрів пам'ять, що використовує для зменшення часу доступу асоціативний пошук і кешування даних.
Сторінковий розподіл пам'яті може бути реалізований в спрощеному варіанті, без вивантаження сторінок на диск. У цьому випадку усі віртуальні сторінки всіх процесів постійно знаходяться в ОП. Такий варіант сторінкової організації хоча і не надає користувачу ВП, але майже виключає фрагментацію за рахунок того, що програма може завантажуватися в несуміжні області, а також того, що при завантаженні віртуальних сторінок ніколи не утвориться залишків.
 
4.3 Сегментний розподіл
 
При сторінковій організації ВАП процесу поділяється механічно на рівні частини. Це не дозволяє диференціювати способи доступу до різних частин програми (сегментам), а ця властивість часта буває дуже корисною. Наприклад, можна заборонити звертатися з операціями запису і читання в кодовий сегмент програми, а для сегмента даних дозволити тільки читання. Крім того, розбивка програми на «осмислені» частини робить принципово можливим поділ одного сегмента декількома процесами. Наприклад, якщо два процеси використовують ту саму математичну підпрограму, то в ОП може бути завантажена тільки одна копія цієї підпрограми.
Розглянемо, яким чином сегментний розподіл пам'яті реалізує ці можливості (рис. 24). ВАП процесу поділяється на сегменти, розмір яких визначається програмістом з урахуванням значення інформації, що міститься в них. Окремий сегмент може являти собою підпрограму, масив даних і т. п. Іноді сегментація програми виконується по замовчуванню компілятором.
При завантаженні процесу частина сегментів міститься в ОП (при цьому для кожного з цих сегментів ОС підшукує придатний ділянку вільної пам'яті), а частина сегментів розміщається в дисковій пам'яті. Сегменти однієї програми можуть займати в ОП несуміжні ділянки. Під час завантаження система створює таблицю сегментів процесу (аналогічну таблиці сторінок), у якій для кожного сегмента вказується початкова фізична адреса сегмента в ОП, розмір сегмента, правила доступу, ознака модифікації, ознака звертання до даного сегмента за останній інтервал часу і деяка інша інформація. Якщо ВАП декількох процесів включають той самий сегмент, то в таблицях сегментів цих процесів робляться посилання на ту саму ділянку ОП, у який даний сегмент завантажується в єдиному екземплярі.
       
Рис. 24. Розподіл пам'яті сегментами
 
Система із сегментною організацією функціонує аналогічно системі зі сторінковою організацією: час від часу відбуваються переривання, зв'язані з відсутністю потрібних сегментів у пам'яті, при необхідності звільнення пам'яті деякі сегменти вивантажуються, при кожному звертанні до ОП виконується перетворення ВА у фізичну. Крім того, при звертанні до пам'яті перевіряється, чи дозволений доступ необхідного типу до даного сегмента.
ВА при сегментній організації пам'яті може бути представлений парою (g, s), де g – номер сегмента, а s – зсув у сегменті. Фізична адреса виходить шляхом додавання початкової фізичної адреси сегмента, знайденого в таблиці сегментів по номері g, і зсуву s.
Недоліком даного методу розподілу пам'яті є фрагментація на рівні сегментів і більш повільне в порівнянні зі сторінковою організацією перетворення адреси.
 
4.4 Сторінково-сегментний розподіл
 
Як видно з назви, даний метод являє собою комбінацію сторінкового і сегментного розподілу пам'яті і, внаслідок цього, сполучить у собі достоїнства обох підходів. Віртуальний простір процесу поділяється на сегменти, а кожен сегмент у свою чергу поділяється на віртуальні сторінки, що нумеруються в межах сегмента. ОП поділяється на фізичні сторінки.
Фото Капча