Presentation is loading. Please wait.

Presentation is loading. Please wait.

Process Description and Control

Similar presentations


Presentation on theme: "Process Description and Control"— Presentation transcript:

1 Process Description and Control
فصل سوم

2 Major Requirements of an Operating System
OS در بین فرآیندها بصورت متداخل اجرا می شود تا هم استفاده از پردازنده را ماکسیمم کند و هم زمان پاسخ معقولی بدست آید. به فرآیندها منابع را تخصیص می دهد. به کاربران اجازه ایجاد فرآیند می دهد. امکان ارتباط بین فرآیندها را برقرار می کند.

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

4

5

6

7 Two-State Process Model

8 Not-Running Process in a Queue

9 Process Creation اجرای یک کاربرد توسط کاربر ارسال یک کار بصورت batch
ورود کاربر به سیستم اجرای یک خدمت (مثل چاپ) ایجاد یک فرآیند فرزند.

10 Process Termination ارسال دستور halt به کاری که بصورت batch شروع شده است. خروج کاربر بستن یک کاربرد وقوع خطا و خرابی

11 Reasons for Process Termination
خاتمه طبیعی خاتمه مهلت زمانی در دسترس نبودن حافظه تمرد از حدود دسترسی به نواحی غیر مجاز حافظه خطای محافظت نوشتن در یک فایل فقط خواندنی خطای محاسباتی انتظار بیش از حد برای وقوع یک رخداد

12 Reasons for Process Termination
دستورالعمل غیر معتبر وقتی اتفاق می افتد که برنامه اشتباها به قسمت داده پرش کند. دستورالعمل دارای مجوز استفاده غلط از داده دخالت سیستم عامل مثلا هنگام وقوع بن بست خاتمه پدر که منجر به خاتمه فرزندان می شود. درخواست پدر برای خاتمه فرزند

13 Processes Not-running Blocked
آماده اجرا Blocked انتظار برای I/O Dispatcher نمی تواند همیشه فرآیندی را انتخاب کند که مدت بیشتری در صف بوده است. زیرا ممکن است آن فرآیند مسدود باشد.

14 A Five-State Model Running Ready Blocked New Exit

15

16

17 Using Two Queues

18

19 Suspended Processes پردازنده از I/O خیلی سریعتر است پس احتمال دارد که شرایطی پیش آید که همه فرآیندها منتظر I/O باشند. بعضی از این فرآیندها باید به حافظه جانبی برگردند تا فضای حافظه اصلی برای پذیرش فرآیندهای جدید باز شود. یعنی حالت مسدود به حالت معلق تبدیل می گردد. دو حالت جدید داریم: مسدود و معلق آماده و معلق

20 One Suspend State

21 Two Suspend States

22 Reasons for Process Suspension

23

24 Operating System Control Structures
اطلاعاتی در مورد وضعیت فعلی هر فرآیند و منبع برای هر واحدی که تحت مدیریت OS است، جدولهایی ساخته می شود.

25 Memory Tables تخصیص حافظه اصلی به فرآیندها
تخصیص حافظه جانبی به فرآیندها مشخصه های حفاظت برای دسترسی به نواحی مشترک حافظه اطلاعاتی که برای مدیریت حافظه مجازی به آنها نیاز است.

26 I/O Tables وضعیت دستگاه I/O وضعیت عملیات I/O تحت انجام موجود
تخصیص یافته وضعیت عملیات I/O تحت انجام محلی از حافظه به عنوان مبدا یا مقصد انتقال I/O استفاده می شود.

27 File Tables وجود فایل در حافظه اصلی محل فایل در حافظه جانبی وضعیت فعلی
مشخصه های فایل این اطلاعات توسط واحد مدیریت فایل نیز استفاده می شوند.

28 Process Table محل فرآیند (کد و داده) مشخصه های فرآیند: شناسه فرآیند
حالت فرآیند آدرس محل فرآیند در حافظه اصلی

29 Process Location فرآیند شامل برنامه ای است که باید اجرا شود:
محل متغییرهای محلی و عمومی ثوابت پشته بلوک کنترلی فرآیند: Process control block مجموعه ای از مشخصه ها تصویر فرآیند شامل برنامه، داده، پشته و PCB

30

31 Process Control Block شناسایی فرآیند: شناسه ها
شناسه های عددی که در PCB ذخیره می شوند: ID خود فرآیند ID پدر ID کاربر

32 Process Control Block اطلاعات حالت پردازنده
رجیسترهای قابل مشاهده توسط کاربر هر پردازنده دارای تعدادی رجیستر است (بین 8 تا 32) که توسط کاربر قابل دسترسی و تغییر هستند. رجیسترهای کنترلی و وضعیت: این رجیسترها برای کنترل پردازنده استفاده می گردند. شمارنده برنامه (PC) : حاوی آدرس دستورالعمل بعدی است که باید اجرا شود. رجیسترهای کنترلی نتیجه آخرین دستور حسابی یا منطقی که اجرا شده است ( علامت، صفر نقلی، برابری و سرریز) اطلاعات وضعیت: مد اجرای پردازنده--- فعال بودن وقفه اشاره گر پشته هر فرآیند دارای یک پشته است که برای اجرای توابع و فراخوانیهای سیستمی استفاده می شود. اشاره گر پشته به بالای پشته اشاره می کند.

33 Process Control Block اطلاعات کنترلی فرآیند: زمانبندی و اطلاعات حالت:
حالت فرآیند: ( اجرا، آماده و ...) اولویت (پیش فرض، بالاترین .....) اطلاعات زمانبندی: وابسته به الگوریتم زمانبندی است. مدت زمانی که فرآیند انتظار کشیده است. مدت زمانی که فرآیند تا کنون اجرا شده است. رخداد: شناسه رخدادی که فرآیند منتظر آن است.

34 Process Control Block اطلاعات کنترلی فرآیند (ادامه): ساختارهای داده
هر فرآیند با دیگر فرآیندها دارای ارتباط است ( در یک صف یا حلقه یا ...) مثلا تمام فرآیندهایی که منتظر یک رخداد هستند در یک صف قرار دارند. اطلاعات پدر و فرزندی ممکن است که PCB به فرآیندهای دیگر نیز اشاره گر داشته باشد تا بتواند اطلاعات فوق را نگهداری کند.

35 Process Control Block اطلاعات کنترلی فرآیند (ادامه): مجوزهای فرآیند
IPC ممکن است که پرچمهای مختلف، سیگنالها و پیغامهای مختلف به ارتباط بین دو فرآیند منتسب شود. قسمتی از این اطلاعات در PCB نگهداری می شوند. مجوزهای فرآیند مجوز دسترسی به حافظه نوع دستوراتی که می تواند اجرا کند. بعلاوه ممکن است خدمات سیستم و ابزارهای آن نیز نیاز به مجوز داشته باشند.

36 Process Control Block اطلاعات کنترلی فرآیند (ادامه): مدیریت حافظه
این قسمت شامل اشاره گرهایی است به صفحات و قطعاتی از حافظه مجازی که به فرآیند تخصیص داده شده اند. مالکیت منابع و مقدار استفاده از آنها منابعی که توسط فرآیند کنترل می شوند (مثل فایلهای باز شده). تاریخچه استفاد ه فرآیند از منابع نیز ضمیمه می گردد( برای استفاده زمانبند)

37

38 Processor State Information
محتوی رجیسترهای پردازنده رجیسترهای قابل مشاهده توسط کاربر رجیسترهای کنترلی و وضعیت اشاره گر پشته Program status word (PSW) اطلاعات وضعیت را نگهداری می کند. مثال: پرچم EFLAGS در پردازنده های پنتیوم

39 Pentium II EFLAGS Register

40 Modes of Execution مد کاربر مد سیستم یا مد کنترلی یا مد هسته
این مد دارای کمترین سطح دسترسی است. برنامه های کاربر معمولا در این مد اجرا می شوند. مد سیستم یا مد کنترلی یا مد هسته این مد دارای بیشترین سطح دسترسی است. هسته سیستم عامل در این مد اجرا می شود.

41 Process Creation تخصیص یک شناسه یکتا به فرآیند. تخصیص فضا به فرآیند.
مقدار دهی اولیه PCB تنظیم لینکهای مناسب بین فرایند و دیگران ( فرآیندهای دیگر، دستگاهها ، صفها و ...) مثال: اضافه کردن فرآیند به لیست فرآیندهای آماده ایجاد یا گسترش ساختارهای داده مثال: نگهداری یک فایل جهت حسابرسی

42 When to Switch a Process
Clock interrupt زمانی که به فرآیند اختصاص داده شده است تمام شده است. I/O interrupt Memory fault ممکن است که آدرس درخواستی در حافظه مجازی باشد و باید به حافظه اصلی آورده شود. Trap وقوع خطا ممکن است باعث خروج فرآیند شود. Supervisor call مثل باز کردن فایل

43 Change of Process State
ذخیره کردن متن پردازنده تازه کردن PCB فرآیند اضافه کردن PCB به صف مناسب (آماده، مسدود و ...) انتخاب یک فرآیند دیگر برای اجرا تازه کردن PCB فرآیند انتخاب شده تازه کردن ساختارهای مدیریت حافظه باز گرداندن متن پردازنده فرآیند انتخاب شده به پردازنده

44 Execution of the Operating System
هسته ای که فرآیند نیست هسته خارج از فضای فرآیندها اجرا می شود. کد سیستم عامل مثل یک واحد که در سطح دسترسی بالاتری عمل می کند اجرا می شود.

45 Execution of the Operating System
اجرا در بین فرآیندهای کاربر هسته در فضای فرآیندها اجرا می شود. فرآیند سیستم عامل دارای سطح دسترسی بالاتری است.

46

47 Execution of the Operating System
سیستمهای عامل بر مبنای فرآیند توابع اصلی هسته بصورت فرآیندهای مجزا طراحی شده اند در محیطهای چندپردازنده و توزیع شده مفید است.


Download ppt "Process Description and Control"

Similar presentations


Ads by Google