سیستم عامل - درس 4 - نخ (Thread)
23 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

نخ ها چه قابلیت خاصی دارند که آنها را از برنامه های ترتیبی متمایز می کند؟

  • انجام همزمان چند کار (correct)
  • وجود کنترل ساده در هر نخ
  • امکان اجرای در زمان های مختلف
  • استفاده از منابع اختصاصی بدون محدودیت
  • کدام یک از موارد زیر دربارهٔ نخ ها نادرست است؟

  • نخ ها به عنوان فرایند سبک وزن شناخته می شوند.
  • نخ ها نمی توانند به خودی خود اجرا شوند.
  • هر نخ باید منابع مخصوص به خود را داشته باشد.
  • نخ ها می توانند در برنامه های مختلف اجرا شوند. (correct)
  • چند نخی به چه قابلیتی از سیستم عامل اشاره دارد؟

  • حمایت از چندین نخ اجرا در یک فرایند واحد (correct)
  • اجازه دادن به کاربران برای مدیریت چند کار به طور همزمان
  • اجرا کردن برنامه‌ها در یک محیط مجازی
  • حمایت از اجرای چند فرایند به صورت همزمان
  • لازم است هر نخ در حین اجرای برنامه چه منابعی را داشته باشد؟

    <p>منابع مخصوص به خود</p> Signup and view all the answers

    کدام یک از سیستم عامل‌های زیر از چند نخی پشتیبانی نمی کند؟

    <p>MS-DOS</p> Signup and view all the answers

    چرا به نخ ها، فرایندهای سبک وزن گفته می شود؟

    <p>زیرا در بستر یک برنامه کامل اجرا می شوند</p> Signup and view all the answers

    کدام یک از این موارد بیانگر وضعیت اجرای نخ ها در هر لحظه است؟

    <p>وجود یک نقطه اجرای یکتا</p> Signup and view all the answers

    نخ گاهی به چه چیزی نیز گفته می شود؟

    <p>رد دستورالعمل</p> Signup and view all the answers

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

    <p>یونیکس</p> Signup and view all the answers

    نخ ها همانند کدام یک از ویژگی های برنامه نویسی ترتیبی هستند؟

    <p>نقطه شروع، ترتیب اجرا و نقطه پایانی دارند</p> Signup and view all the answers

    کدام یک از موارد زیر جزو مزایای استفاده از نخ‌ها محسوب می‌شود؟

    <p>پایان دادن به یک نخ بسیار سریعتر از پایان یک فرایند است.</p> Signup and view all the answers

    در محیط چند نخی، مشخصه زیر برای هر فرایند صحیح است:

    <p>تمام نخ‌های فرایند از فضای آدرس‌های مشابه استفاده می‌کنند.</p> Signup and view all the answers

    کدام یک از موارد زیر در یک سیستم عامل چند پردازنده‌ای، ملاحظات طراحی اصلی نیست؟

    <p>سازگاری با نرم‌افزارهای خارجی</p> Signup and view all the answers

    کدام یک از ویژگی‌های نخ‌های سطح کاربر به عنوان یک عیب شناخته می‌شود؟

    <p>اجرای فراخوانی سیستم توسط یک نخ، تمام نخ‌های آن فرایند را مسدود می‌کند.</p> Signup and view all the answers

    کدام یک از روش‌های ترکیبی در سیستم‌های عامل درست است؟

    <p>تولید نخ به طور کامل در فضای کاربر صورت می‌گیرد.</p> Signup and view all the answers

    کدام یک از موارد زیر در معانی و عملکرد نخ‌ها کاربرد ندارد؟

    <p>حرکت از یک فرایند به فرایند دیگر</p> Signup and view all the answers

    کدام یک از گزینه‌های زیر درست است دربارهٔ مزایای نخ‌های سطح هسته؟

    <p>هسته می‌تواند نخ‌های چندگانه یک فرایند را همزمان زمانبندی کند.</p> Signup and view all the answers

    کدام یک از موارد زیر در مورد صفات نخ‌ها صحیح است؟

    <p>حالت معلق فقط برای فرایندها تعریف می‌شود.</p> Signup and view all the answers

    در یک سیستم عامل مختلط از چه نوع نخی استفاده می‌شود؟

    <p>هر دو نوع نخ به صورت ترکیبی</p> Signup and view all the answers

    کدام یک از موارد زیر در ارتباط با نحوه کارکرد چند پردازش متقارن نادرست است؟

    <p>روند زمان‌بندی تحت کنترل یک پردازنده منفرد است.</p> Signup and view all the answers

    کدام مورد زیر به عنوان یک رویکرد نادرست در مورد pthreads (کتابخانه‌های نخ) شناخته می‌شود؟

    <p>تنها یک نخ می‌تواند در هر زمان اجرا شود.</p> Signup and view all the answers

    چه نوع داده‌ای در جریان دستورالعمل چندگانه داده‌های چندگانه وجود دارد؟

    <p>چندین دستورالعمل روی چندین داده</p> Signup and view all the answers

    کدام یک از پیاده‌سازی‌های زیر برای برنامه‌های چندنخی کارایی بهتری دارد؟

    <p>تخصیص زمانبندی متفاوت برای هر نخ به واسطه کد هسته.</p> Signup and view all the answers

    Study Notes

    سیستم عامل - درس 4 - نخ (Thread)

    • نخ‌ها می‌توانند دو یا چند کار را به طور همزمان انجام دهند.
    • نخ‌ها ساختارهای مشابه برنامه نویسی ترتیبی دارند شامل: نقطه شروع، ترتیب اجرا، نقطه پایانی.
    • در حین اجرای نخ‌ها، در هر لحظه فقط یک نقطه اجرای منحصر به فرد وجود دارد.
    • یک نخ به تنهایی یک برنامه نیست و مستقیماً اجرا نمی شود، بلکه در داخل یک برنامه اجرا می‌شود.
    • برخی از متون به جای "نخ" از عبارت "فرایند سبک وزن" استفاده می‌کنند.
    • نخ شبیه یک فرایند واقعی است و هر دو از نوعی کنترل ترتیبی ساده بهره می‌برند. با این حال، نخ یک فرایند سبک‌وزن است زیرا در داخل یک برنامه كامل اجرا می‌شود و از منابع اختصاص داده شده به آن برنامه و محیط برنامه استفاده می‌كند.
    • نخ گاهی به عنوان رد دستورالعمل شناخته می‌شود.
    • به دلیل کنترل جریان ترتیبی، هر نخ باید در حین اجرای برنامه، منابع اختصاصی مربوط به خود را داشته باشد.
    • شکل‌ها روابط بین نخ‌ها و فرایندها را نشان می‌دهند.
    • در یک زمان می‌توان چندین نخ در یک برنامه در حال اجرا با انجام وظایف متفاوت بودند.
    • در سیستم چند نخی، هر فرایند چندین نخ دارد.
    • MS-DOS فقط از فرایندهای تک کاربره و نخ واحد حمایت می‌کند.
    • محیط زمان اجرا جاوا، نمونه‌ای از سیستم فرایند و چند نخ است.
    • یونیکس از فرایندهای کاربران متعدد اما فقط یک نخ در هر فرایند پشتیبانی می‌کند.
    • ویندوز 2000، لینوکس و ... از فرایندهای چند نخی پشتیبانی می‌کنند.

    مفاهیم چند نخی

    • چندنخی به قابلیتی از سیستم عامل گفته می‌شود كه از وجود چند نخ اجرا در یك فرایند واحد پشتیبانی می‌کند.
    • در محیط‌های چند نخی، برای هر فرایند یک یا چندین نخ وجود خواهد داشت.
    • هر نخ، فضای آدرس مجازی مختص به خود را دارد که تصویر فرایند را در بر می‌گیرد.
    • نخ‌ها می‌توانند به پردازنده، فرایندهای دیگر، پرونده‌ها و منابع ورودی و خروجی دسترسی محافظت شده داشته باشند.
    • هر نخ دارای حالت اجرای خود (مانند اجرا، آماده، غیرفعال...) است.
    • متن نخ در حافظه ذخیره می‌شود وقتی در حال اجرا نیست.
    • هر نخ دارای پشته اجرایی مختص به خود است.
    • نخ‌ها به متغیرهای محلی خود و به منابعی که فرایند به آن دسترسی دارد (به اشتراک گذاشته) دسترسی دارند.

    مزایای نخ‌ها

    • ایجاد یک نخ جدید در یک فرایند موجود از ایجاد یک وظیفه جدید سریع‌تر است.
    • پایان دادن به یك نخ سریع‌تر از پایان دادن به یك فرایند است.
    • تعویض دو نخ داخل یك فرایند سریع‌تر از تعویض دو فرایند است.
    • نخ‌ها ارتباط بین برنامه‌های در حال اجرا را بهبود می‌دهند.
    • نخ‌ها می‌توانند به اشتراک منابع بدون نیاز به دخالت هسته بپردازند.
    • نخ‌ها بهبود دهنده عملکرد هستند.

    عیب نخ‌ها

    • تعلیق در نخ‌ها باعث مبادله فضای آدرس مربوط به فضای اصلی می‌شود که این عمل زمان‌بر است.
    • پایان یافتن فرایند باعث پایان یافتن همه نخ‌های آن فرایند می‌شود.
    • نخ‌های سطح کاربر نمی‌توانند از فواید چند پردازشی استفاده کنند.
    • در هر لحظه، هسته فقط یک فرایند را به یک پردازنده اختصاص می‌دهد، بنابراین فقط یک نخ از یک فرایند می‌تواند در هر لحظه در حال اجرا باشد.

    انواع نخ‌ها

    • نخ‌های سطح کاربر
    • نخ‌های سطح هسته
    • نخ‌های ترکیبی (مخلوط)

    معماری پردازنده‌های موازی

    • پردازنده‌های موازی می‌توانند از معماری‌های مختلفی بهره ببرند (مانند SIMD و MIMD).
    • معماری‌های SIMD دستورالعمل‌های واحد را روی داده‌های چندگانه اجرا می‌کنند.
    • معماری‌های MIMD می‌توانند دستورالعمل‌های چندگانه را روی داده‌های چندگانه اجرا کنند که در پردازش‌های موازی مفید است.

    مزایای نخ‌های سطح کاربر

    • تعویض نخ‌ها سریع‌تر از عوض شدن فرایند است زیرا نیازی به تغییر حالت به هسته نیست.
    • نخ‌ها می‌توانند بر روی هر سیستم عاملی اجرا شوند.
    • تغییری در هسته برای پشتیبانی از نخ‌های سطح كاربر لازم نیست، زیرا کتابخانه‌های نخ در سطح كاربرد قرار دارند.

    چند پردازشی متقارن (SMP)

    • هسته می‌تواند بر روی هر پردازنده‌ای اجرا شود.
    • هر پردازنده می‌توانند نُخ‌ها و فرایندهای موجود را زمان‌بندی كند.
    • هسته می‌تواند به صورت فرایندهای چندگانه با نخ‌های چندگانه طراحی شود.
    • طراحی SMP دشوار است.

    انواع ساختارهای کامپیوتری (SISD، SIMD، MISD، MIMD)

    • SISD: دستورالعمل واحد، داده واحد
    • SIMD: دستورالعمل واحد، داده‌های چندگانه
    • MISD: دستورالعمل‌های چندگانه، داده واحد (وجود ندارد)
    • MIMD: دستورالعمل‌های چندگانه، داده‌های چندگانه

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    Description

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

    More Like This

    Threads in Operating Systems
    34 questions

    Threads in Operating Systems

    LawAbidingEuphonium avatar
    LawAbidingEuphonium
    Threads in Operating Systems
    41 questions

    Threads in Operating Systems

    ImpressiveKineticArt avatar
    ImpressiveKineticArt
    Use Quizgecko on...
    Browser
    Browser