دانلود پاورپوینت برنامه نويسي چند نخي با POSIX با فرمت ppt و در48 صفحه قابل ویرایش
قسمتی از متن پاورپوینت برنامه نويسي چند نخي با POSIX
فهرست مطالب
مفاهيم اوليه نخها
برنامه نويسي چند نخي
مدلهاي پياده سازي نخها
انواع مدلهاي نخ کشي
ايجاد و خاتمه نخ در POSIX
قابليت الحاق
ارتباط بين نخها و همگام سازي
نخ (thread)
نخ يک جريان اجرايي در فرآيند(process) مي باشد که مي- تواند بصورت مستقل، توسط هسته زمانبندي گردد و از فضاي آدرسي يکسان باساير نخها به اشتراک استفاده نمايد.
مستقل بودن
چون نخها بصورت مستقل زمانبندي مي شوند، نخها بصورت همروند با ساير نخها اجرا مي شوند و امکان اجراي موازي در سيستمهاي چند پردازنده اي وجود دارد. اين بدين معناست که هر نخ بايد منابع مربوط به خودش داشته باشد:
شمارنده برنامه
فضاي پشته
مجموعه ثبات ( فضايي براي ذخيره کردن مقدار ثباتها زماني که پردازنده در اختيار ندارد)
اولويت(بهره گيري از زمانبندي پردازنده )
همروندي(concurrency)
عمليات همروند هستند اگر امکان اجراي نوبتي آنها فراهم گردد بنحويکه اجراي هر عمليات بصورت مستقل پيشرفت داشته باشد.
نخها مي توانند براي استفاده از پردازنده با هر ترتيبي و با هر نخ ديگر زمانبندي شوند. ممکن است پردازنده از يک نخ در هر نقطه از اجرايش گرفته شده و با نخ ديگري جايگزين شود.
عمليات که سبب توقف اجراي يک نخ شده، سبب توقف اجراي ساير نخ ها نمي شود.
اگر ترتيب اجراي يک نخ مهم باشد يا يک نخ بايد قبل از اجراي نخ ديگري کارش به پايان برسد، بنابراين اجراي نخ بايد براي هماهنگي عمليات همگام گردد
مزاياي برنامه نويسي چند نخي
بهره گيري از اجراي موازي بر روي معماري چند پردازنده- اي براي اجراي سريعتر.
افزايش کارايي روي معماري تک پردازنده اي بوسيله فراهم آوردن امکان اجراي يک فرآيند بهنگام عمليات کُند ورودي-خروجي يا بلاک شدن عملياتهاي ديگر.
پاسخدهي سريعتر در سيستمهاي بي درنگ و محاوره اي که بايد به رخدادهاي ناهمگام پاسخ دهند.
مشکلات برنامه نويسي چند نخي
سربار محاسباتي حاصل از همگام سازي و زمانبندي
در برنامه ها با امکان توازي سازي کم ممکن است قابل تحمل نباشد.
نياز به دقت و نظم برنامه نويسي بيشتر براي طراحي و هماهنگي ترتيبهاي اجراي مختلف.
اشکال زدايي مشکلتر.
لايه هاي انتزاعي
Pthread توصيف POSIX براي رفتار نخها است که برنامه نويس سيستم مستقيما از آن استفاده مي کند.
نخ سطح کرنل عنصري است که توسط کرنل، بعنوان متن اجراي يک نخ در فرآيند، بطور واقعي ايجاد، زمانبندي و مديريت مي شود. چگونگي مديريت نخ وابسته به سيستم عامل است.
کتابخانه يک روال پوششي است که فراخوان کرنل سيستم را پياده سازي مي کند. بعضاً امکاناتي براي ايجاد، زمانبندي و مديريت نخها مستقل از هسته فراهم مي شود که عنصر ايجاد شده توسط کتابخانه، نخ سطح کاربر ناميده مي شود.
دیدگاه خود را ثبت کنید