Upload
faradars
View
87
Download
14
Embed Size (px)
Citation preview
عاملآموزش سیستم های
faradars.org/fvsft103
:مدرسفرشید شیرافکن
دانشجوی دکتری دانشگاه تهران (بیو انفورماتیک: دکتری( )کامپیوتر نرم افزار: کارشناسی و کارشناسی ارشد )
سیستم های عامل
1
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
2
فصل ششم
مدیریت حافظه فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
. یکی از وظایف سیستم عامل، مدیریت حافظه است
.استسیستم عامل مدیریت حافظه اصلی و مدیریت حافظه دیسک بر عهده
3
:حافظهمدیریتتک برنامگی-1
چند برنامگی-2
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
چند برنامگی با پارتیشن ثابت
4
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
معایب مدیریت حافظه به روش پارتیشن بندی ایستا
.مشکل بودن تعیین تعداد و اندازه پارتیشن ها-1
.محدود بودن درجه چند برنامگی به تعداد پارتیشن ها -2
تکه تکه شدن داخلی-3
5
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
صف . رفتمی توان یک صف مشترك برای همه پارتیشن ها در نظر گ. هر پارتیشن می تواند، صف مربوط به خود را داشته باشد
6
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103ثبات پایه و حد
LimitدرپارتیشنطولوBaseدرپارتیشنشروعآدرسشود،میدادهفرایندیبهپردازندهکههنگامی
.گیردمیقرار
7
خودتا100ازآدرسهاییبهتواندمیبرنامهگاهآنباشد،20شاملحدثباتو100حاویپایهثباتاگر
.باشدداشتهدستیابی،120
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
پارتیشنازخارجفضایبهتاشوندمیمقایسهLimitمحتوایباهاآدرس،حفاظتازجلوگیریبرای
.نشوددسترسی
8
، حافظهبهارسالازقبلشود، میتولیدکهایحافظهآدرسهر، جاییبهجامشکلازجلوگیریبرای
.شودمیجمعBaseمحتوایباخودکارصورتبهمقدارش
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103 مبادله(swapping)
اددجایاصلیحافظهدررافعالفرایندهایهمهتواننمیاوقاتگاهیدرزمانیاشتراكهایسیستمدر
.شوندآوردهحافظهداخلبهپویاصورتبهبعداوشدهمنتقلدیسکبهاضافیفرایندهایبایدو
دیسکبهاجرا، مدتیازبعدوشودمیآوردهاصلیحافظهبهکاملطوربهفرایندهر،مبادلهروشدر
Swap)شودمیبرگردانده in ,Swap out).
میتماماشزمانیکوانتومفرایندیوقتیکند،میاستفادهRRازکهایبرنامهچندمحیطیکدرمثال
.شودمیمبادلهدیگریفرایندباشود،
باعثپذیریانعطافاین.استمتفاوتهاپارتیشن«اندازهو موقعیتتعداد،»، پویابندیپارتیشندر
.شودمیحافظهوریبهرهبهبود
9
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
. کار می کندمبادلهشکل زیر نحوه عملکرد سیستمی را نشان می دهد که بر اساس
.رددگمیبرقبلیفضایهماندرحافظه،بهبرگشتهنگامرفت،بیرونحافظهازفرایندیوقتیباشد،کردنباریااسمبلزماندرانقیاداگر
.شوندمیمحاسبهاجرازماندرفیزیکیآدرسهایزیرگیرد،میقراراولمحلازغیرمحلیدرفرایندگیرد،صورتاجرازماندرانقیاداگر
10
مثال
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
تکه تکه شدن خارجیفاتالباعثکهآیدمیوجودبهحافظهدرمتعددیهایحفره،مبادلهخاطربهپویا،بندیپارتیشندر
.گویندمیخارجیشدنتکهتکهمشکل، اینبه.شودمیحافظه
.کرداستفادهمی توانسازیفشردهازخارجیشدنتکهتکهبامقابلهبرای
افظهحازبزرگیحفرهوبردهطرفیکبهراهاحفرهتمامکهاستاینسازیفشردهالگوریتمترینساده
.داردزیادیهزینهروشاینولی.شودمیتشکیلآزاد
11
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
تشخیص بخش های آزاد حافظهحافظهشبخکدامکهبداندبایدعاملسیستمشود،میدادهتخصیصپویاصورتبهحافظهکهوقتی
.استآزادبخشکداموشدهدادهتخصیصلحظه،هردر
:داردوجودروش دومنظور،اینبرای
بیتیهاینگاشتباحافظهمدیریت-1
پیوندیهایلیستباحافظهمدیریت-2
12
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
حافظه با نگاشت های بیتیمدیریت .شودمیتقسیمتخصیصواحدچندینبهحافظه
.داردوجودبیتتخصیص، یکواحدهربامتناظر
.است1بودن،پرصورتدرواست0بیت اینباشد،آزادمتناظرواحداگر
13
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103مثال
. حفره را نشان می دهد3فرایند و 5شکل زیر قسمتی از حافظه شامل
.است0و سه تا 1بیت اول ، شامل پنج تا 8به طور مثال، . مناطق هاشور خورده، فضاهای خالی هستند
.بودخواهدبزرگتربیتینگاشتباشد، کوچکترتخصیصواحدچههر
.رودمیهدرحافظهازمقداریواحدآخرین درنباشد،تخصیصواحداندازهاز ضریبیفرایند،اندازهاگر
که.کندپیدارا0متوالیبیتkوکردهجستجوبیتینگاشتدربایدحافظهمدیردارد،نیازفضاواحدkبهکهحافظهبهفرایندیکانتقالبرای
.استزمانبرعملی
14
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103مدیریت حافظه با لیست های پیوندی. یک لیست پیوندی از قطعه های آزاد یا تخصیص یافته حافظه تشکیل می شود
.مشخص شده اندPو فضاهای پر با Hفضاهای خالی با
:فیلدهای گره لیست پیوندی
آدرس گره بعدی-4طول -3آدرس شروع -2حفره یا فرایند بودن -1
. می شود updateمزیت این روش این است که زمانی که فرایندی خاتمه می یابد، یا مبادله می شود، این لیست به سادگی
15
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103الگوریتم های مکان یابی و تخصیص حافظهیصتخصجهتمختلفیهایالگوریتمگیرند، میقرارآدرساساسبرشدهمرتبلیستیکدرهاحفرهوفرایندهاوقتی
.داردوجودفرایندیکبهحافظه
First)برازشاولین-1 fit)
.شودمیجاآندرکهشودمیدادهقرارایحفرهاولیندرفرایندوشدهشروعحافظهابتدایازجستجو
Next)بعدیبرازش-2 fit)
Firstمانند fit ،شودمیشروعتخصیصمحلآخرینازجستجوکهتفاوتاینبااست.
Best)برازشبهترین-3 fit)
.شودمیجاآندرکهشودمیدادهقرارایحفرهکوچکتریندرفرایندوشودمیجستجولیستتمام
Worst)برازشبدترین-4 fit)
.شودمیجاآندرکهشودمیدادهقرارایحفرهبزرگتریندرفرایندوشودمیجستجولیستتمام16
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103 مثال
مگابایتی 16تخصیص فضا به فرایند
17
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثالترتیببهاندازه هایباخالیفضاهایشاملاصلیحافظهمی شود،انجاممبادلهازاستفادهباحافظهمدیریتکهسیستمیکدر
10 , 4 , 20 , 18 , 7 , 9 , و10و12مقدارهایبهومتوالیطوربهحافظهازهاییتکهدرخواستبرای.است(راستبهچپ)12
می شوند؟اشغالالذکرفوقخالیفضاهایازیککدامشدهگفتههایروشازاستفادهبابایتکیلو6
12971820410
129718841012
12971884010
1297182406
First fit
18
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
12971820410
129718841012
12978841010
1297284106
Next fit
19
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
12971820410
097182041012
09718204010
0911820406
Best fit
20
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
12971820410
129718841012
12978841010
697884106
Worst fit
21
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
22
رعتسباشد،مرتبفضاهااندازهاساسبرخالیفضاهایلیستاگر
Best fit،یابدمیافزایش.
هایالگوریتمسرعتBest fitوWorst fitبایدلیستکلچوناست،پایین
.شودجستجو
درNext fit،دورودروشودمیشکستهترسریعحافظهانتهایبزرگهایحفره
.شودمیایجاد مشکلبعدی،بزرگفرایندهای
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
(Quick fit)برازش سریع
.شودمیتهیهجداگانهلیستیکمتداول،هایاندازهبافرایندهاازدستههربرای
:کهکنیدفرضراخانهnباجدولی
بایتی،کیلو4هایحفرهلیستابتدایبهگری اشاره:اولخانه
بایتیکیلو8هایحفرهابتدایبه:دومخانه
...و
.استسریعبسیارمناسب، اندازهباایحفرهیافتن
23
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
(Buddy System)مدیریت حافظه با سیستم رفاقتی
ارجیخشدنتکهتکهامکان،پویابندیبخشدروداخلیشدنتکهتکهامکانایستابندیبخشدر
.داردوجود
.استپویاوایستابندیبخشطرحهایمعایببرآمدنفائقبرایقبولقابلتعادلیکرفاقتی،سیستم
.می باشند2ازتوانیحافظهبالکهایاندازه
24
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103کارنحوه:
نصفازSاگرشود،مبادلهآنداخلبهبایدSاندازهبهفرایندیوباشدبرابرحفرهیکاندازهاگر
رفیقلوكبدووشدهنصفبلوكاینصورت، کلغیردرشود،میدادهآنبهفضاکلبود،بزرگترحفرهاندازه
امکانحفره، یکشدنآزادصورتدر.شدخواهدتکراربازگشتیصورتبهرونداین.شودمیایجاد
.باشدمیمجاوررفقایترکیب
k2
. از معایب سیستم رفاقتی، اتالف حافظه در این روش است
25
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103 مثال:شکل زیر نحوه عملکرد سیستم رفاقتی را نشان می دهد
26
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103ساختار درختی سیستم رفاقتیپر و برای بلوك هایساختار درختی مزیت سیستم رفاقتی این است که چیدمان حفره ها ساخت یافته است و می توان یک
.خالی ایجاد کرد و با یک الگوریتم بازگشتی، حفره مناسب را خیلی سریع پیدا کرد
Release Bدرخت دودویی بعد از درخواست : مثال
27
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
صفحه بندی
28
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
(Paging)صفحه بندی
.شودمیتقسیم(frame)قابنامبهثابتهایاندازهبابلوکهاییبهاصلیحافظه
.می شودتقسیم(page)صفحهنامبهیکسانهایاندازهباهاییبلوكبهمنطقیحافظه
.شودمیتعریفافزارسختتوسطقاباندازهوصفحهاندازه
وندمی شبارموجودقابهایداخلبهآنصفحاتتماممی شود،آوردهحافظهداخلبهفرایندیکوقتی
.می شودایجادصفحهجدولیکو
.می کندمشخصرافرایندازصفحههرقابمحل،صفحهجدول
.باشند2ازتوانیبایدقاباندازهوصفحهاندازه
.استداخلیشدنتکهتکهبندیصفحهاصلیضعفنقطه
29
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثال:صفحهجدولنمایشوAفرایندصفحه هایبهآزادهایقابتخصیص
30
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103مثال
31
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
ترجمه آدرس در سیستم صفحه بندی
:استشدهتشکیلقسمتدوازمنطقیآدرس
(d)آفست-2(P)صفحهشماره-1
.می کندتولیدفیزیکیآدرسیکصفحه،جدولکمکبهپردازنده
:استشدهتشکیلقسمتدوازفیزیکیآدرس
آفست-2قابشماره-1
.دبه آفست، انحراف یا تفاوت مکان نیز می گوین
32
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103نحوه ترجمه آدرس در سیستم صفحه بندی
33
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103مثالاست؟نیازصفحهشمارهبرایبیتچند،0000010111011110نسبیآدرسبهتوجهبا(.باشدمیبایتکیلویکبرابرصفحه اندازه)
.استنیازموردآفستبرایبیت10پساست،بایتکیلویکصفحهاندازه:پاسخ
.می ماندباقیصفحهشمارهبرایبیت6است،بیتی16آدرسچون
.است(000001)صفحهدر(0111011110)آفستدارایشدهدادهنسبیآدرس
. یک برنامه می تواند حداکثر صفحه یک کیلوبایتی داشته باشد 62 = 64
34
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثالرویبرصفحاتایناگر.استکلمه2حاویصفحههرواستصفحه4شاملمنطقیدهیآدرسفضاییک
دخواهبیتیچندفیزیکیومنطقیآدرسشود،نگاشتصفحهقاب8حاویفیزیکیدهیآدرسفضاییک
بود؟
:منطقیدهیآدرسفضای
:فیزیکیدهیآدرسفضای
.استبیتی4فیزیکیآدرسوبیتی3منطقیآدرسبنابراین
34×2 = 8 = 2
48×2 = 16 = 2
35
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثالبایتی،512هایصفحهوبیتی10مدخل64حاویصفحهجدولیکبابندیصفحهحافظهسیستمیکدر
است؟بیتیچندفیزیکیومنطقیآدرس
:صفحههراندازهدر(هامدخلتعداد)صفحاتتعدادضربحاصل=منطقیحافظهاندازه
:صفحههراندازهدرآدرسهاتعدادضربحاصل=فیزیکیحافظهاندازه
.استبیتی19فیزیکیآدرسوبیتی15منطقیآدرسبنابراین
6 9 1564×512 = 2 ×2 = 2
10 192 ×512 = 2
36
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثال
یکرویبراصلیحافظهصفحات.استکلمه512حاویصفحههرمنطقیدهیآدرسفضاییکدر
؟استبیتچندحاویفیزیکیآدرس.شودمینگاشتهصفحهقاب8حاویفیزیکیدهیآدرسفضای
3 9 128×512 = 2 ×2 = 2
37
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
قطعه بندی
38
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
قطعه بندی
می شوندتقسیم(Segment)قطعهتعدادیبههادادهوبرنامهحافظه،مدیریتبرایبندیقطعهروشدر
.باشنداندازههمقطعه هاایناندازهنداردلزومیو
جدولومی شوندبارحافظهداخلبهآنقطعه هایکلیهمی شود،آوردهداخلبهفرایندیککههنگامی
.شودمیایجادقطعه
.باشدمیقطعهطولواصلیحافظهدرنظرموردقطعهشروعآدرسشاملجدولاینسطرهر
39
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103بندیدید منطقی از قطعه
40
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
.آفستوقطعهشماره:استیافتهتشکیلقسمتدوازمنطقیآدرس-1
.باشدمیکدوهادادهاشتراكوقطعاتازحفاظتبندی،قطعهامتیاز-2
بهبتنسکاربردیدگاهازرافیزیکیحافظهتواندنمیبندیصفحهالگوی-3
.کندتفکیکحافظه
41
نکاتی در رابطه با قطعه بندی
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft1034-استپویابندیبخشمشابهاندازه،غیرهمقطعه هایبکارگیریدلیلبهبندیقطعه.
نداردمیلزووکنداشغالرابخشیکازبیشمی تواندبرنامهیکبندیقطعهدرالبته
.باشندپیوستهبخشهااین
خارجیشدنتکهتکهدارایامامی کند،حذفراداخلیشدنتکهتکهبندیقطعه-5
.است
املعورویتقابلبندیقطعهاست،مخفیبرنامه سازدیدازبندیصفحهکهحالیدر-6
.می باشدداده هاوبرنامه هاسازماندهیتسهیل
42
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103سخت افزار قطعه بندی
43
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثالرابندیقطعهروشدرفیزیکیآدرستولیدنحوه.استمفروض0001001011110000بیتی16منطقیآدرس
(بیتی4قطعهشمارهوبیتی12آفست).دهیدنشان
.آیدمیبدستپایهمقداربابیتی12آفستجمعازفیزیکیآدرس
12:قطعهاندازهحداکثر2 4096
44
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثال
هستند؟فیزیکیآدرسفاقدمنطقیآدرسکدام
0,150
2,700
45
شده،تشکیل(آفستوقطعهشماره)قسمتدوازبندیقطعهسیستمدرمنطقیآدرس
:چونندارد،فیزیکیمنطقی،آدرسآدرساولین
:چوناست،فیزیکیآدرس دارای،دوممنطقیآدرس
:بااستبرابرآدرساین
700 600
150 200
500 150 650
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
پایان
46
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
عاملآموزش سیستم های
faradars.org/fvsft103
47
این اسالید ها بر مبنای نکات مطرح شده در فرادرس« آموزش سیستم های عامل»
.تهیه شده است
.برای کسب اطالعات بیشتر در مورد این آموزش به لینک زیر مراجعه نمایید
فرادرس
FaraDars.org