سیستم های عامل پیشرفته

حل تشریحی سوالات سیستم های عامل پیشرفته - کنکور دکتری مهندسی کامپیوتر 1400

سوالات سیستم های عامل پیشرفته

15 سوال
یک سیستم چند پردازنده ای CC-NUMA مبتنی بر دایرکتوری از ۲۵۶ گره تشکیل شده که هر گره (Node) دارای یک پردازنده (CPU) با ۱۶ مگابایت حافظه اصلی (RAM) است که از طریق یک گذرگاه (BUS) داخلی به هم متصل میشوند. در این سیستم چند پردازنده ای حافظه اصلی که برابر 2^{32} بایت است به 2^{26} خط حافظه پنهان (CACHE) که هر خط این حافظه برابر ۶۴ بایت می‌باشد تقسیم می‌شود این حافظه اصلی به صورت استاتیک بین پردازنده ها تقسیم شده است به نحوی که هر پردازنده ۱۶ مگابایت از حافظه را در اختیار دارد. پردازنده اول آدرس های 0-\left(16M-1\right) و پردازنده بعدی آدرسهای 16M-\left(32M-1\right) را شامل می‌شود و بقیه هم به همین شکل تا گره ۲۵۶ام توزیع می‌شوند پردازنده ها از طریق یک گذرگاه مشترک به همدیگر متصل شده اند. در این سیستم هر گره می‌بایست اطلاعات مربوط به تمام خطوط حافظه پنهان خود را در یک دایرکتوری نگهداری کند. به این صورت که هر درایه (Entry) در این دایرکتوری شامل یک بیت جهت نشان دادن وجود و عدم وجود آن ۶۴ بایت حافظه در حافظه پنهان است و قسمت بعدی در آن درایه در صورت واکشی آن داده به درون حافظه پنهان آدرس شماره گره آن ۶۴ بایت می‌باشد تعداد درایه ها میبایست تمام 16M حافظه را پوشش دهند.
41.

تعداد درایه های دایرکتوری در هر گره کدام است؟

1)

2)

3)

4)

42.

میزان سربار (Overhead) برای نگهداری دایرکتوریها در تمام گره ها نسبت به کل حافظه کدام است؟

1)

1/64%

2)

1/70%

3)

1/76%

4)

1/82%

43.

در سیستمهای کامپیوتری توزیع شده برای کاربردهای مختلفی نیاز به هماهنگی ساعتها وجود دارد. دو گزینه اصلی یکی هماهنگ سازی فیزیکی ساعتها است و دیگری هماهنگ سازی منطقی آنها روش Leslie Lamport مبتنی بر هماهنگی منطقی است. در این روش استناد به رابطه happened before می شود و یک مسئله مهم تضمین mutual exclusion برای استفاده از یک منبع انحصاری به صورت توزیع شده و اجرای درخواستهای استفاده از این منبع به ترتیب زمان درخواست حل میشود. در این ارتباط کدام گزینه درست است؟

1)

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

2)

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

3)

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

4)

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

44.

یک سیستم چند پردازنده ای (Multiprocessor) با تعداد ۳ پردازنده (Processor) برای زمان بندی پردازنده ها از روش بسته بندی اقلام در ظروف (Bin-Packing) استفاده میکند در صورتی که زمانهای مورد نیاز اجرای وظایف برابر مجموعه {۱۸,۱۴,۱۳,۱۱,۸,۴,۲,۱,۱} باشد مقدار FTopt که برابر حداکثر زمان بهینه اختصاصی در هر پردازنده برای اجرای این مجموعه وظایف باشد کدام است؟

1)

11

2)

18

3)

24

4)

30

45.

راه حل نرم افزاری زیر برای حل مسئله ناحیه بحرانی برای دو نخ (Thread) پیشنهاد شده است. کدام گزینه درست است؟ (بهترین گزینه را انتخاب کنید.)

Thread 0:

while (true) {

٫٫ non-critical work

flag[0] = true;

while(turn != 0) {

while (flag[1]);

turn = 0;

}

critical_work();

flag[0] = false;

٫٫ non-critical work

}

Thread 1:

while (true) {

٫٫ non-critical work

flag[1] = true;

while (turn!= 1) {

while (flag[0]);

turn = 1:

critical_work();

flag[1] = false;

٫٫ non-critical work

}

1)

این الگوریتم انحصار متقابل (Multual-Exclusion) ندارد.

2)

این الگوریتم انتظار محدود (Bounded Waiting) ندارد.

3)

این الگوریتم امکان پیشرفت (Progress) ندارد.

4)

این الگوریتم انحصار متقابل و انتظار محدود ندارد.

46.

در سیستمی P پردازنده (Processor) و r منبع (resource) یکسان وجود دارند، هر پردازنده در بیشترین حالت به m منبع احتیاج دارد بین m,r,p چه شرطی برقرار باشد تا بتوان تضمین داد که بن بست (Deadlock) رخ نمی دهد؟

1)

r>p(m-1)+1

2)

<(p-1)+۱

3)

r=p(m-1)+۱

4)

r = pm

47.

در سیستمهای توزیع شده و در ارتباط با مهاجرت پردازه ها از یک سیستم به سیستم دیگر flushing به کدام معنی است؟

1)

انتقال همه صفحات پردازه در حافظه اصلی و حافظه جانبی کامپیوتر مبدا به حافظه اصلی کامپیوتر مقصد.

2)

انتقال همه صفحات پردازه در حافظه اصلی کامپیوتر مبدأ به حافظه اصلی کامپیوتر مقصد.

3)

انتقال همه صفحات پردازه در حافظه اصلی کامپیوتر مبدأ به حافظه جانبی کامپیوتر مقصد.

4)

انتقال همه صفحات تغییر یافته پردازه در حافظه اصلی به حافظه جانبی کامپیوتر مقصد.

48.

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

  1. یک پیغام به می فرستد
  2. یک پیغام به می فرستد
  3. پیغام به را دریافت می‌کند
  4. پیغام به را دریافت می‌کند
  5. یک رویداد داخلی در رخ می دهد
  6. یک پیغام به می فرستد
  7. پیغام به را دریافت می‌کند

کدام یک از عبارات زیر براساس رابطة happens-before تعریف شده توسط Lamport درست است؟

a) رویدادهای ۳ و ۴ همروند هستند.

b) رویداد ۱ به صورت علی قبل از رویداد ۵ رخ می دهد.

c) رویدادهای ۲ و ۶ همروند هستند.

d) رویداد ۳ به صورت علی قبل از رویداد ۶ رخ می دهد.

1)

a, b

2)

c, d

3)

a, b, d

4)

a, b, c, d

49.

محدودیت Lamport clock نسبت به vector clock در کدام گزینه درست است؟

1)

اندازه کلاک


2)

پیچیدگی پیاده سازی

3)

اگر لزوماً a به صورت على قبل از b رخ نداده است.

4)

اگر رویداد a به صورت علی قبل از رویداد b رخ دهد، لزوماً برقرار نیست.

50.

کدام گزینه در مورد الگوریتم Ricart-Agrawala برای مسئله mutual exclusion درست است؟

1)

یک الگوریتم متمرکز است.

2)

بر اساس ساعت فیزیکی کار میکند.

3)

هر پردازه به محض دریافت درخواست پردازه دیگر به آن پاسخ میدهد.

4)

هر پردازه پیش از ورود به critical section باید به همه پردازه ها پیغام بفرستد.

51.

کدام مورد در خصوص الگوریتمهای Election نادرست است؟

1)

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

2)

در الگوریتم Bully هر گره شروع کننده الگوریتم در ابتدا به همه گره های دیگر پیغام می‌دهد.

3)

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

4)

در الگوریتم حلقه هر گره سالم پیغام مربوط به انتخاب را دوبار دریافت می‌کند.

52.

در یک سیستم توزیع شده مطابق شکل زیر هفت کامپیوتر که پتانسیل coordinator شدن را دارند تشکیل حلقه داده اند هر کامپیوتری تنها دو همسایه بعد از خودش را (در جهت فلش‌ها) می‌شناسد و آدرس آنها را دارد. مدل مورد استفاده برای جایگزینی coordinator خراب شده انتخابات حلقوی (Ring Election) است که کامپیوتری که باید جایگزین کامپیوتر خراب شود کامپیوتر درستی است که بالاترین شماره را دارد. توجه کنید: اولاً هر پیام که ارسال می‌شود کامپیوتر گیرنده به کامپیوتر فرستنده یک acknowledge خواهد فرستاد. ثانیاً اگر فرستنده ای به گیرنده ای پیامی ارسال کند و بعد از یک میلی ثانیه جوابی دریافت نکند به کامپیوتر بعدی پیامی خواهد فرستاد ثالثاً احتمال خرابی هم زمان دو کامپیوتر صفر است.

کامپیوتر ۷ که تابحال coordinator بوده از کار افتاده و کامپیوتر ۳ تشخیص داده است که شماره ۷ از کار افتاده است. همه وظایف انتخابات به عهده کامپیوتر ۳ است. جمعاً چند پیام برای همه کار انتخابات مبادله خواهد شد؟

1)

6

2)

13

3)

19

4)

26

53.

یک سرور نام RPC name Server ) RPC) برای چه کاری استفاده میشود؟

1)

ذخیره سازی اشیاء توزیع شده

2)

پیدا کردن شماره پورت برای مجموعه ای از توابع

3)

پیدا کردن یک نام یکتا برای مجموعه ای از توابع

4)

تبدیل نام یک تابع به یک آدرس دور (Remote address)

54.

در یک سیستم توزیع شده یک فایل در سرورهای مختلف که در مکانهای مختلف دنیا قرار دارند ذخیره شده است. به الگوریتمی که اطمینان میدهد یک تغییر در فایل به کپیهای مختلف آن انتشار می یابد. الگوریتم (اجماع) Consensus میگویند Paxos خانواده ای از الگوریتمهای Consensus است که سازگاری در سیستمهای توزیع شده با پردازه های غیر مطمئن سرورها ممکن است خراب شوند را فراهم می آورد. Paxos با حداقل چند گره میتواند توانایی تحمل p خرابی را داشته باشد؟

1)

2P+1

2)

2P

3)

P+1

4)

2P-1

55.

در یک سیستم توزیع شده دو گره A و B میخواهند که زمانهای خود را هماهنگ نمایند لینک (ارتباط) A به B دارای تأخیر ۴۰ms و لینک B به A دارای تأخیر ۲۰ms است. این تأخیرها برای این دو گره ناشناخته است. این گره ها توسط الگوریتم Cristian در یک دور زمانها را هماهنگ میکنند زمان A برابر با 500ms و زمان B برابر ۶۳۲ms است و گره A فرایند هماهنگ سازی را آغاز میکند پس از کامل شدن فرایند هماهنگ سازی A چه زمانی خواهد داشت؟

1)

632

2)

692

3)

702

4)

712