47
ستم های آموزش سی عاملfaradars.org/fvsft103 مدرس: فرشید شیرافکن تهراننشگاه دانشجوی دکتری دا( سی ارشد کارشنا کارشناسی و: م افزار کامپیوتر نر( ) دکتری: نفورماتیک بیو ا) های عاملیستم س1 ﻓﺮادرسFaraDars.org

آموزش سیستم های عامل - بخش هفتم

Embed Size (px)

Citation preview

Page 1: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

:مدرسفرشید شیرافکن

دانشجوی دکتری دانشگاه تهران (بیو انفورماتیک: دکتری( )کامپیوتر نرم افزار: کارشناسی و کارشناسی ارشد )

سیستم های عامل

1

فرادرس

FaraDars.org

Page 2: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

2

فصل ششم

مدیریت حافظه فرادرس

FaraDars.org

Page 3: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

. یکی از وظایف سیستم عامل، مدیریت حافظه است

.استسیستم عامل مدیریت حافظه اصلی و مدیریت حافظه دیسک بر عهده

3

:حافظهمدیریتتک برنامگی-1

چند برنامگی-2

فرادرس

FaraDars.org

Page 4: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

چند برنامگی با پارتیشن ثابت

4

فرادرس

FaraDars.org

Page 5: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

معایب مدیریت حافظه به روش پارتیشن بندی ایستا

.مشکل بودن تعیین تعداد و اندازه پارتیشن ها-1

.محدود بودن درجه چند برنامگی به تعداد پارتیشن ها -2

تکه تکه شدن داخلی-3

5

فرادرس

FaraDars.org

Page 6: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

صف . رفتمی توان یک صف مشترك برای همه پارتیشن ها در نظر گ. هر پارتیشن می تواند، صف مربوط به خود را داشته باشد

6

فرادرس

FaraDars.org

Page 7: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103ثبات پایه و حد

LimitدرپارتیشنطولوBaseدرپارتیشنشروعآدرسشود،میدادهفرایندیبهپردازندهکههنگامی

.گیردمیقرار

7

خودتا100ازآدرسهاییبهتواندمیبرنامهگاهآنباشد،20شاملحدثباتو100حاویپایهثباتاگر

.باشدداشتهدستیابی،120

فرادرس

FaraDars.org

Page 8: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

پارتیشنازخارجفضایبهتاشوندمیمقایسهLimitمحتوایباهاآدرس،حفاظتازجلوگیریبرای

.نشوددسترسی

8

، حافظهبهارسالازقبلشود، میتولیدکهایحافظهآدرسهر، جاییبهجامشکلازجلوگیریبرای

.شودمیجمعBaseمحتوایباخودکارصورتبهمقدارش

فرادرس

FaraDars.org

Page 9: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103 مبادله(swapping)

اددجایاصلیحافظهدررافعالفرایندهایهمهتواننمیاوقاتگاهیدرزمانیاشتراكهایسیستمدر

.شوندآوردهحافظهداخلبهپویاصورتبهبعداوشدهمنتقلدیسکبهاضافیفرایندهایبایدو

دیسکبهاجرا، مدتیازبعدوشودمیآوردهاصلیحافظهبهکاملطوربهفرایندهر،مبادلهروشدر

Swap)شودمیبرگردانده in ,Swap out).

میتماماشزمانیکوانتومفرایندیوقتیکند،میاستفادهRRازکهایبرنامهچندمحیطیکدرمثال

.شودمیمبادلهدیگریفرایندباشود،

باعثپذیریانعطافاین.استمتفاوتهاپارتیشن«اندازهو موقعیتتعداد،»، پویابندیپارتیشندر

.شودمیحافظهوریبهرهبهبود

9

فرادرس

FaraDars.org

Page 10: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

. کار می کندمبادلهشکل زیر نحوه عملکرد سیستمی را نشان می دهد که بر اساس

.رددگمیبرقبلیفضایهماندرحافظه،بهبرگشتهنگامرفت،بیرونحافظهازفرایندیوقتیباشد،کردنباریااسمبلزماندرانقیاداگر

.شوندمیمحاسبهاجرازماندرفیزیکیآدرسهایزیرگیرد،میقراراولمحلازغیرمحلیدرفرایندگیرد،صورتاجرازماندرانقیاداگر

10

مثال

فرادرس

FaraDars.org

Page 11: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

تکه تکه شدن خارجیفاتالباعثکهآیدمیوجودبهحافظهدرمتعددیهایحفره،مبادلهخاطربهپویا،بندیپارتیشندر

.گویندمیخارجیشدنتکهتکهمشکل، اینبه.شودمیحافظه

.کرداستفادهمی توانسازیفشردهازخارجیشدنتکهتکهبامقابلهبرای

افظهحازبزرگیحفرهوبردهطرفیکبهراهاحفرهتمامکهاستاینسازیفشردهالگوریتمترینساده

.داردزیادیهزینهروشاینولی.شودمیتشکیلآزاد

11

فرادرس

FaraDars.org

Page 12: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

تشخیص بخش های آزاد حافظهحافظهشبخکدامکهبداندبایدعاملسیستمشود،میدادهتخصیصپویاصورتبهحافظهکهوقتی

.استآزادبخشکداموشدهدادهتخصیصلحظه،هردر

:داردوجودروش دومنظور،اینبرای

بیتیهاینگاشتباحافظهمدیریت-1

پیوندیهایلیستباحافظهمدیریت-2

12

فرادرس

FaraDars.org

Page 13: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

حافظه با نگاشت های بیتیمدیریت .شودمیتقسیمتخصیصواحدچندینبهحافظه

.داردوجودبیتتخصیص، یکواحدهربامتناظر

.است1بودن،پرصورتدرواست0بیت اینباشد،آزادمتناظرواحداگر

13

فرادرس

FaraDars.org

Page 14: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103مثال

. حفره را نشان می دهد3فرایند و 5شکل زیر قسمتی از حافظه شامل

.است0و سه تا 1بیت اول ، شامل پنج تا 8به طور مثال، . مناطق هاشور خورده، فضاهای خالی هستند

.بودخواهدبزرگتربیتینگاشتباشد، کوچکترتخصیصواحدچههر

.رودمیهدرحافظهازمقداریواحدآخرین درنباشد،تخصیصواحداندازهاز ضریبیفرایند،اندازهاگر

که.کندپیدارا0متوالیبیتkوکردهجستجوبیتینگاشتدربایدحافظهمدیردارد،نیازفضاواحدkبهکهحافظهبهفرایندیکانتقالبرای

.استزمانبرعملی

14

فرادرس

FaraDars.org

Page 15: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103مدیریت حافظه با لیست های پیوندی. یک لیست پیوندی از قطعه های آزاد یا تخصیص یافته حافظه تشکیل می شود

.مشخص شده اندPو فضاهای پر با Hفضاهای خالی با

:فیلدهای گره لیست پیوندی

آدرس گره بعدی-4طول -3آدرس شروع -2حفره یا فرایند بودن -1

. می شود updateمزیت این روش این است که زمانی که فرایندی خاتمه می یابد، یا مبادله می شود، این لیست به سادگی

15

فرادرس

FaraDars.org

Page 16: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103الگوریتم های مکان یابی و تخصیص حافظهیصتخصجهتمختلفیهایالگوریتمگیرند، میقرارآدرساساسبرشدهمرتبلیستیکدرهاحفرهوفرایندهاوقتی

.داردوجودفرایندیکبهحافظه

First)برازشاولین-1 fit)

.شودمیجاآندرکهشودمیدادهقرارایحفرهاولیندرفرایندوشدهشروعحافظهابتدایازجستجو

Next)بعدیبرازش-2 fit)

Firstمانند fit ،شودمیشروعتخصیصمحلآخرینازجستجوکهتفاوتاینبااست.

Best)برازشبهترین-3 fit)

.شودمیجاآندرکهشودمیدادهقرارایحفرهکوچکتریندرفرایندوشودمیجستجولیستتمام

Worst)برازشبدترین-4 fit)

.شودمیجاآندرکهشودمیدادهقرارایحفرهبزرگتریندرفرایندوشودمیجستجولیستتمام16

فرادرس

FaraDars.org

Page 17: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103 مثال

مگابایتی 16تخصیص فضا به فرایند

17

فرادرس

FaraDars.org

Page 18: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

مثالترتیببهاندازه هایباخالیفضاهایشاملاصلیحافظهمی شود،انجاممبادلهازاستفادهباحافظهمدیریتکهسیستمیکدر

10 , 4 , 20 , 18 , 7 , 9 , و10و12مقدارهایبهومتوالیطوربهحافظهازهاییتکهدرخواستبرای.است(راستبهچپ)12

می شوند؟اشغالالذکرفوقخالیفضاهایازیککدامشدهگفتههایروشازاستفادهبابایتکیلو6

12971820410

129718841012

12971884010

1297182406

First fit

18

فرادرس

FaraDars.org

Page 19: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

12971820410

129718841012

12978841010

1297284106

Next fit

19

فرادرس

FaraDars.org

Page 20: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

12971820410

097182041012

09718204010

0911820406

Best fit

20

فرادرس

FaraDars.org

Page 21: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

12971820410

129718841012

12978841010

697884106

Worst fit

21

فرادرس

FaraDars.org

Page 22: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

22

رعتسباشد،مرتبفضاهااندازهاساسبرخالیفضاهایلیستاگر

Best fit،یابدمیافزایش.

هایالگوریتمسرعتBest fitوWorst fitبایدلیستکلچوناست،پایین

.شودجستجو

درNext fit،دورودروشودمیشکستهترسریعحافظهانتهایبزرگهایحفره

.شودمیایجاد مشکلبعدی،بزرگفرایندهای

فرادرس

FaraDars.org

Page 23: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

(Quick fit)برازش سریع

.شودمیتهیهجداگانهلیستیکمتداول،هایاندازهبافرایندهاازدستههربرای

:کهکنیدفرضراخانهnباجدولی

بایتی،کیلو4هایحفرهلیستابتدایبهگری اشاره:اولخانه

بایتیکیلو8هایحفرهابتدایبه:دومخانه

...و

.استسریعبسیارمناسب، اندازهباایحفرهیافتن

23

فرادرس

FaraDars.org

Page 24: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

(Buddy System)مدیریت حافظه با سیستم رفاقتی

ارجیخشدنتکهتکهامکان،پویابندیبخشدروداخلیشدنتکهتکهامکانایستابندیبخشدر

.داردوجود

.استپویاوایستابندیبخشطرحهایمعایببرآمدنفائقبرایقبولقابلتعادلیکرفاقتی،سیستم

.می باشند2ازتوانیحافظهبالکهایاندازه

24

فرادرس

FaraDars.org

Page 25: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103کارنحوه:

نصفازSاگرشود،مبادلهآنداخلبهبایدSاندازهبهفرایندیوباشدبرابرحفرهیکاندازهاگر

رفیقلوكبدووشدهنصفبلوكاینصورت، کلغیردرشود،میدادهآنبهفضاکلبود،بزرگترحفرهاندازه

امکانحفره، یکشدنآزادصورتدر.شدخواهدتکراربازگشتیصورتبهرونداین.شودمیایجاد

.باشدمیمجاوررفقایترکیب

k2

. از معایب سیستم رفاقتی، اتالف حافظه در این روش است

25

فرادرس

FaraDars.org

Page 26: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103 مثال:شکل زیر نحوه عملکرد سیستم رفاقتی را نشان می دهد

26

فرادرس

FaraDars.org

Page 27: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103ساختار درختی سیستم رفاقتیپر و برای بلوك هایساختار درختی مزیت سیستم رفاقتی این است که چیدمان حفره ها ساخت یافته است و می توان یک

.خالی ایجاد کرد و با یک الگوریتم بازگشتی، حفره مناسب را خیلی سریع پیدا کرد

Release Bدرخت دودویی بعد از درخواست : مثال

27

فرادرس

FaraDars.org

Page 28: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

صفحه بندی

28

فرادرس

FaraDars.org

Page 29: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

(Paging)صفحه بندی

.شودمیتقسیم(frame)قابنامبهثابتهایاندازهبابلوکهاییبهاصلیحافظه

.می شودتقسیم(page)صفحهنامبهیکسانهایاندازهباهاییبلوكبهمنطقیحافظه

.شودمیتعریفافزارسختتوسطقاباندازهوصفحهاندازه

وندمی شبارموجودقابهایداخلبهآنصفحاتتماممی شود،آوردهحافظهداخلبهفرایندیکوقتی

.می شودایجادصفحهجدولیکو

.می کندمشخصرافرایندازصفحههرقابمحل،صفحهجدول

.باشند2ازتوانیبایدقاباندازهوصفحهاندازه

.استداخلیشدنتکهتکهبندیصفحهاصلیضعفنقطه

29

فرادرس

FaraDars.org

Page 30: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

مثال:صفحهجدولنمایشوAفرایندصفحه هایبهآزادهایقابتخصیص

30

فرادرس

FaraDars.org

Page 31: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103مثال

31

فرادرس

FaraDars.org

Page 32: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

ترجمه آدرس در سیستم صفحه بندی

:استشدهتشکیلقسمتدوازمنطقیآدرس

(d)آفست-2(P)صفحهشماره-1

.می کندتولیدفیزیکیآدرسیکصفحه،جدولکمکبهپردازنده

:استشدهتشکیلقسمتدوازفیزیکیآدرس

آفست-2قابشماره-1

.دبه آفست، انحراف یا تفاوت مکان نیز می گوین

32

فرادرس

FaraDars.org

Page 33: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103نحوه ترجمه آدرس در سیستم صفحه بندی

33

فرادرس

FaraDars.org

Page 34: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103مثالاست؟نیازصفحهشمارهبرایبیتچند،0000010111011110نسبیآدرسبهتوجهبا(.باشدمیبایتکیلویکبرابرصفحه اندازه)

.استنیازموردآفستبرایبیت10پساست،بایتکیلویکصفحهاندازه:پاسخ

.می ماندباقیصفحهشمارهبرایبیت6است،بیتی16آدرسچون

.است(000001)صفحهدر(0111011110)آفستدارایشدهدادهنسبیآدرس

. یک برنامه می تواند حداکثر صفحه یک کیلوبایتی داشته باشد 62 = 64

34

فرادرس

FaraDars.org

Page 35: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

مثالرویبرصفحاتایناگر.استکلمه2حاویصفحههرواستصفحه4شاملمنطقیدهیآدرسفضاییک

دخواهبیتیچندفیزیکیومنطقیآدرسشود،نگاشتصفحهقاب8حاویفیزیکیدهیآدرسفضاییک

بود؟

:منطقیدهیآدرسفضای

:فیزیکیدهیآدرسفضای

.استبیتی4فیزیکیآدرسوبیتی3منطقیآدرسبنابراین

34×2 = 8 = 2

48×2 = 16 = 2

35

فرادرس

FaraDars.org

Page 36: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

مثالبایتی،512هایصفحهوبیتی10مدخل64حاویصفحهجدولیکبابندیصفحهحافظهسیستمیکدر

است؟بیتیچندفیزیکیومنطقیآدرس

:صفحههراندازهدر(هامدخلتعداد)صفحاتتعدادضربحاصل=منطقیحافظهاندازه

:صفحههراندازهدرآدرسهاتعدادضربحاصل=فیزیکیحافظهاندازه

.استبیتی19فیزیکیآدرسوبیتی15منطقیآدرسبنابراین

6 9 1564×512 = 2 ×2 = 2

10 192 ×512 = 2

36

فرادرس

FaraDars.org

Page 37: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

مثال

یکرویبراصلیحافظهصفحات.استکلمه512حاویصفحههرمنطقیدهیآدرسفضاییکدر

؟استبیتچندحاویفیزیکیآدرس.شودمینگاشتهصفحهقاب8حاویفیزیکیدهیآدرسفضای

3 9 128×512 = 2 ×2 = 2

37

فرادرس

FaraDars.org

Page 38: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

قطعه بندی

38

فرادرس

FaraDars.org

Page 39: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

قطعه بندی

می شوندتقسیم(Segment)قطعهتعدادیبههادادهوبرنامهحافظه،مدیریتبرایبندیقطعهروشدر

.باشنداندازههمقطعه هاایناندازهنداردلزومیو

جدولومی شوندبارحافظهداخلبهآنقطعه هایکلیهمی شود،آوردهداخلبهفرایندیککههنگامی

.شودمیایجادقطعه

.باشدمیقطعهطولواصلیحافظهدرنظرموردقطعهشروعآدرسشاملجدولاینسطرهر

39

فرادرس

FaraDars.org

Page 40: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103بندیدید منطقی از قطعه

40

فرادرس

FaraDars.org

Page 41: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

.آفستوقطعهشماره:استیافتهتشکیلقسمتدوازمنطقیآدرس-1

.باشدمیکدوهادادهاشتراكوقطعاتازحفاظتبندی،قطعهامتیاز-2

بهبتنسکاربردیدگاهازرافیزیکیحافظهتواندنمیبندیصفحهالگوی-3

.کندتفکیکحافظه

41

نکاتی در رابطه با قطعه بندی

فرادرس

FaraDars.org

Page 42: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft1034-استپویابندیبخشمشابهاندازه،غیرهمقطعه هایبکارگیریدلیلبهبندیقطعه.

نداردمیلزووکنداشغالرابخشیکازبیشمی تواندبرنامهیکبندیقطعهدرالبته

.باشندپیوستهبخشهااین

خارجیشدنتکهتکهدارایامامی کند،حذفراداخلیشدنتکهتکهبندیقطعه-5

.است

املعورویتقابلبندیقطعهاست،مخفیبرنامه سازدیدازبندیصفحهکهحالیدر-6

.می باشدداده هاوبرنامه هاسازماندهیتسهیل

42

فرادرس

FaraDars.org

Page 43: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103سخت افزار قطعه بندی

43

فرادرس

FaraDars.org

Page 44: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

مثالرابندیقطعهروشدرفیزیکیآدرستولیدنحوه.استمفروض0001001011110000بیتی16منطقیآدرس

(بیتی4قطعهشمارهوبیتی12آفست).دهیدنشان

.آیدمیبدستپایهمقداربابیتی12آفستجمعازفیزیکیآدرس

12:قطعهاندازهحداکثر2 4096

44

فرادرس

FaraDars.org

Page 45: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

مثال

هستند؟فیزیکیآدرسفاقدمنطقیآدرسکدام

0,150

2,700

45

شده،تشکیل(آفستوقطعهشماره)قسمتدوازبندیقطعهسیستمدرمنطقیآدرس

:چونندارد،فیزیکیمنطقی،آدرسآدرساولین

:چوناست،فیزیکیآدرس دارای،دوممنطقیآدرس

:بااستبرابرآدرساین

700 600

150 200

500 150 650

فرادرس

FaraDars.org

Page 46: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

پایان

46

فرادرس

FaraDars.org

Page 47: آموزش سیستم های عامل - بخش هفتم

عاملآموزش سیستم های

faradars.org/fvsft103

عاملآموزش سیستم های

faradars.org/fvsft103

47

این اسالید ها بر مبنای نکات مطرح شده در فرادرس« آموزش سیستم های عامل»

.تهیه شده است

.برای کسب اطالعات بیشتر در مورد این آموزش به لینک زیر مراجعه نمایید

فرادرس

FaraDars.org