بخشی از پاورپوینت
--- پاورپوینت شامل تصاویر میباشد ----
اسلاید 1 :
نخ (thread)
نخ يک جريان اجرايي در فرآيند(process) مي باشد که مي- تواند بصورت مستقل، توسط هسته زمانبندي گردد و از فضاي آدرسي يکسان باساير نخها به اشتراک استفاده نمايد.
اسلاید 2 :
مستقل بودن
چون نخها بصورت مستقل زمانبندي مي شوند، نخها بصورت همروند با ساير نخها اجرا مي شوند و امکان اجراي موازي در سيستمهاي چند پردازنده اي وجود دارد. اين بدين معناست که هر نخ بايد منابع مربوط به خودش داشته باشد:
شمارنده برنامه
فضاي پشته
مجموعه ثبات ( فضايي براي ذخيره کردن مقدار ثباتها زماني که پردازنده در اختيار ندارد)
اولويت(بهره گيري از زمانبندي پردازنده )
اسلاید 3 :
همروندي(co curre cy)
عمليات همروند هستند اگر امکان اجراي نوبتي آنها فراهم گردد بنحويکه اجراي هر عمليات بصورت مستقل پيشرفت داشته باشد.
نخها مي توانند براي استفاده از پردازنده با هر ترتيبي و با هر نخ ديگر زمانبندي شوند. ممکن است پردازنده از يک نخ در هر نقطه از اجرايش گرفته شده و با نخ ديگري جايگزين شود.
عمليات که سبب توقف اجراي يک نخ شده، سبب توقف اجراي ساير نخ ها نمي شود.
اگر ترتيب اجراي يک نخ مهم باشد يا يک نخ بايد قبل از اجراي نخ ديگري کارش به پايان برسد، بنابراين اجراي نخ بايد براي هماهنگي عمليات همگام گردد.
اسلاید 4 :
مزاياي برنامه نويسي چند نخي
بهره گيري از اجراي موازي بر روي معماري چند پردازنده- اي براي اجراي سريعتر.
افزايش کارايي روي معماري تک پردازنده اي بوسيله فراهم آوردن امکان اجراي يک فرآيند بهنگام عمليات کُند ورودي-خروجي يا بلاک شدن عملياتهاي ديگر.
پاسخدهي سريعتر در سيستمهاي بي درنگ و محاوره اي که بايد به رخدادهاي ناهمگام پاسخ دهند.
اسلاید 5 :
مشکلات برنامه نويسي چند نخي
سربار محاسباتي حاصل از همگام سازي و زمانبندي
در برنامه ها با امکان توازي سازي کم ممکن است قابل تحمل نباشد.
نياز به دقت و نظم برنامه نويسي بيشتر براي طراحي و هماهنگي ترتيبهاي اجراي مختلف.
اشکال زدايي مشکلتر.
اسلاید 6 :
POSIX
"Portable Operati g System I terface [for U ix]"
POSIX sta dard for thread programmi g i terface(1995)
Impleme tatio s of POSIX sta dard are referred to as POSIX threads or Pthreads.
Latest Editio IEEE std 1003.1,2004
Available for Li ux a d U ix OS family
Availabe for Wi dows
As Ope Source http://sourceware.org/pthread-wi 32
اسلاید 7 :
پياده سازي نخ
پياده سازي نخ در POSIX در سه لايه انتزاعي
اسلاید 8 :
لايه هاي انتزاعي
Pthread توصيف POSIX براي رفتار نخها است که برنامه نويس سيستم مستقيما از آن استفاده مي کند.
نخ سطح کرنل عنصري است که توسط کرنل، بعنوان متن اجراي يک نخ در فرآيند، بطور واقعي ايجاد، زمانبندي و مديريت مي شود. چگونگي مديريت نخ وابسته به سيستم عامل است.
کتابخانه يک روال پوششي است که فراخوان کرنل سيستم را پياده سازي مي کند. بعضاً امکاناتي براي ايجاد، زمانبندي و مديريت نخها مستقل از هسته فراهم مي شود که عنصر ايجاد شده توسط کتابخانه، نخ سطح کاربر ناميده مي شود.
اسلاید 9 :
سه مدل پياده سازي نخها
چند به يک
يک به يک
چند به چند
اسلاید 10 :
چند به يک
Pthread بعنوان نخ سطح کاربر پياده سازي مي شود.
کتابخانه زمان اجرا نيز در حالت کاربر قرار دارد و نخ را زمانبندي مي کند
براي سيستم عامل قابل مشاهده نيستند.
هر فرايند به يک نخ سطح کرنل نگاشت مي شود.
مشخصات
قابليت حمل بيشتر بدليل عدم نياز به پشتيباني کرنل
تعويض متن سريعتر بين نخها
عدم استفاده از مزيت معماري چند پردازنده اي
Mach C-threads, BSD, Solaris UI-threads,DCE-threads