Podcast
Questions and Answers
نخ ها چه قابلیت خاصی دارند که آنها را از برنامه های ترتیبی متمایز می کند؟
نخ ها چه قابلیت خاصی دارند که آنها را از برنامه های ترتیبی متمایز می کند؟
کدام یک از موارد زیر دربارهٔ نخ ها نادرست است؟
کدام یک از موارد زیر دربارهٔ نخ ها نادرست است؟
چند نخی به چه قابلیتی از سیستم عامل اشاره دارد؟
چند نخی به چه قابلیتی از سیستم عامل اشاره دارد؟
لازم است هر نخ در حین اجرای برنامه چه منابعی را داشته باشد؟
لازم است هر نخ در حین اجرای برنامه چه منابعی را داشته باشد؟
Signup and view all the answers
کدام یک از سیستم عاملهای زیر از چند نخی پشتیبانی نمی کند؟
کدام یک از سیستم عاملهای زیر از چند نخی پشتیبانی نمی کند؟
Signup and view all the answers
چرا به نخ ها، فرایندهای سبک وزن گفته می شود؟
چرا به نخ ها، فرایندهای سبک وزن گفته می شود؟
Signup and view all the answers
کدام یک از این موارد بیانگر وضعیت اجرای نخ ها در هر لحظه است؟
کدام یک از این موارد بیانگر وضعیت اجرای نخ ها در هر لحظه است؟
Signup and view all the answers
نخ گاهی به چه چیزی نیز گفته می شود؟
نخ گاهی به چه چیزی نیز گفته می شود؟
Signup and view all the answers
کدام یک از سیستم عامل ها از فرایند های کاربران متعدد ولی فقط با یک نخ در هر فرایند حمایت می کند؟
کدام یک از سیستم عامل ها از فرایند های کاربران متعدد ولی فقط با یک نخ در هر فرایند حمایت می کند؟
Signup and view all the answers
نخ ها همانند کدام یک از ویژگی های برنامه نویسی ترتیبی هستند؟
نخ ها همانند کدام یک از ویژگی های برنامه نویسی ترتیبی هستند؟
Signup and view all the answers
کدام یک از موارد زیر جزو مزایای استفاده از نخها محسوب میشود؟
کدام یک از موارد زیر جزو مزایای استفاده از نخها محسوب میشود؟
Signup and view all the answers
در محیط چند نخی، مشخصه زیر برای هر فرایند صحیح است:
در محیط چند نخی، مشخصه زیر برای هر فرایند صحیح است:
Signup and view all the answers
کدام یک از موارد زیر در یک سیستم عامل چند پردازندهای، ملاحظات طراحی اصلی نیست؟
کدام یک از موارد زیر در یک سیستم عامل چند پردازندهای، ملاحظات طراحی اصلی نیست؟
Signup and view all the answers
کدام یک از ویژگیهای نخهای سطح کاربر به عنوان یک عیب شناخته میشود؟
کدام یک از ویژگیهای نخهای سطح کاربر به عنوان یک عیب شناخته میشود؟
Signup and view all the answers
کدام یک از روشهای ترکیبی در سیستمهای عامل درست است؟
کدام یک از روشهای ترکیبی در سیستمهای عامل درست است؟
Signup and view all the answers
کدام یک از موارد زیر در معانی و عملکرد نخها کاربرد ندارد؟
کدام یک از موارد زیر در معانی و عملکرد نخها کاربرد ندارد؟
Signup and view all the answers
کدام یک از گزینههای زیر درست است دربارهٔ مزایای نخهای سطح هسته؟
کدام یک از گزینههای زیر درست است دربارهٔ مزایای نخهای سطح هسته؟
Signup and view all the answers
کدام یک از موارد زیر در مورد صفات نخها صحیح است؟
کدام یک از موارد زیر در مورد صفات نخها صحیح است؟
Signup and view all the answers
در یک سیستم عامل مختلط از چه نوع نخی استفاده میشود؟
در یک سیستم عامل مختلط از چه نوع نخی استفاده میشود؟
Signup and view all the answers
کدام یک از موارد زیر در ارتباط با نحوه کارکرد چند پردازش متقارن نادرست است؟
کدام یک از موارد زیر در ارتباط با نحوه کارکرد چند پردازش متقارن نادرست است؟
Signup and view all the answers
کدام مورد زیر به عنوان یک رویکرد نادرست در مورد pthreads (کتابخانههای نخ) شناخته میشود؟
کدام مورد زیر به عنوان یک رویکرد نادرست در مورد pthreads (کتابخانههای نخ) شناخته میشود؟
Signup and view all the answers
چه نوع دادهای در جریان دستورالعمل چندگانه دادههای چندگانه وجود دارد؟
چه نوع دادهای در جریان دستورالعمل چندگانه دادههای چندگانه وجود دارد؟
Signup and view all the answers
کدام یک از پیادهسازیهای زیر برای برنامههای چندنخی کارایی بهتری دارد؟
کدام یک از پیادهسازیهای زیر برای برنامههای چندنخی کارایی بهتری دارد؟
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.
Related Documents
Description
این آزمون به بررسی مفاهیم نخ و عملکرد آنها در سیستم عامل میپردازد. شما با ویژگیهای نخ و تفاوتهای آن با فرایندها آشنا خواهید شد. همچنین این درس به کنترل جریان و ارتباط بین نخها اشاره دارد.