خلاصه:
زمانيكه سيستم هاي حافظه اشتراكي گسترده نرم افزار (SDSM) چند رشته اي را با بهره برداري از چند پردازشگرهاي متقارن فراهم مي آورد، اعتراض كردن چگونگي حفظ سازگاري حافظه سازگاري حافظه در راه ايمن است، كه به عنوان “ مسئله روز آمد صفحه اتمي” شناخته شده است. در اين مقاله، نشان مي دهيم كه در اين مسئله مي تواند از طريق خلق دو راه قابل دستيابي مستقل به صفحه فيزيكي و از طريق نسبت دادن مجوزهاي متفاوت دستيابي به آنها تجزيه شود. به ويژه، ماسه روشن جديد را با كاربرد سيستم ارتباطي درون پردازشي حافظه اشتراكي V، فراخواني سيستم جديد molupo و فراخواني سيستم دو شاخه D علاوه بر كاربرد روش شناخته شده نقشه پردازي فايل پيشنهاد مي دهيم. سهم اصلي از اين مقاله معرفي راه حلهاي متنوع به مسئله روز آمد صفحه اتمي و مقايسه مشخصه هايشان است. تجربيات و آزمايشات براي دسته اي بر پاياه لينوكس SMPS و سيستم ثابت IBM sP Hawk انجام مي شود و نشان مي دهد كه روشهاي پيشنهاد شده بر عقب كشي هاي از روش طراحي قايل غالب ميگردد مثل هزينه بالاي ارزشدهي آغازين و پاكسازي قطرنها نگاهي ميانگير اضافي به ويژه، روش كاربردي فراخواني سيستم دو شاخه O فضاي كلي نشان را به كاربرد عملي حفظ مي كند.
۱-    مقدمه
سيستم هاي حافظه اشتراكي گسترده نرم افزار سكوي قدرتي شده است تا فضاي نشاني اشتراكي را روي معماريهاي حافظه اشتراكي فراهم گردد. سيستم هاي اوليه SDSM مثل IVY [1] ، طريقه واسطه اي [۲]، [۳]  Munin، و Treadmark[4] گروه هاي غير پردازش را مي پذيرند، بنابراين تنها يك رشته را در جريان روي گره مجاز ميگرداند به طور رايج، جنس رير پردازنده هاي خارج از قفسه و تركيبات شبكه به طور گسترده به عنوان بلوكهاي ساختماي براي كامپيوترهاي موازي به كار برده مي شود. اين روند سيستم هاي دسته اي را شكامل چند پردازشگر متناسب سكوهاي جذاب براي محاسبه عملكرد بالا ساخته است. به هر حال، سيستم هاي اوليه تك رشته اي شده خيلي محدود به بهره داراست چند پردازشگر در رشته هاي SMP مي شوند. نسل بعدي سيستم هاي SDSM مصل Quark[5]، [۶] Brazos ، رشته هاي DSM[7]، Murk[8] آگاه از چند پردازشگرهايي هستند كه آنها بوسيله چند پردازشگر يا چند رشته بهره برداري مي گردد. به طور كلي، سيستم هاي بر پايه پردازش ساده و طبيعي ظرفيت بالاي كليد زني و تأخيرر رابطه اي اضافي درون پردازش را در يك گروه تجربه و آزمايش مي كنند، بنابراين تمركز، در اين مقاله سيستم هاي چند رشته اي SDSM است.
خيلي از سيستم هاي تك رشته اي SDSM در سطح كاربر از طريق كاربرد مكانيزم گرداندن خرابي صفحه تكميل و اجرا مي شوند اين نوع از SDSM دسترسي كاربرد غير ممتاز را به صفحه اشتراكي از طريق گرفتن علامت SIGSEGV و كاربرد تعيين شده گرداننده علامتي روز آمد را در صفحه غير معتبر آشكار مي گرداند. از نقطه نظر كاربرد، اين صفحه روز آمد اتمي است زمانيكه كنترل صفحه به كاربردي تنها بعد از گرداندن علامت برگردانده مي شود و كاري روي خرابي تكميل مي كند. به هر حال، جريان گرداندن خطاي قرار دادي در محيط هاي چند رشته اي موفق نخواهد شد زيرا ديگر رشته ها احتمالاً سعي در دستيابي صفحه معين در طي دوره روزآمد دارند. سيستم SDSM با برهاني روبرو مي گردد زمانيكه چندين رشته با دستيابي به صفحه غير معتبر در فاصله كوتاه كامل مي گردد. در دستيابي اول به صفحه غير معتبر، سيستم بايد صفحه قابل نوشتن را با جايگزيني مورد معتبر برقرار گرداند. متأسفانه اين تغيير همچنين رشته هاي كاربردي ديگر را به دستيابي صفحه معين مجاز مي گرداند. اين پديده به عنوان صفحه اي روز آمد شناخته شده است و مسئله صحيح(۷) يا حوزه شرايط mmapo تغيير مي گردد. به طور خلاصه، با اين مسئله روز آمد صفحه اتمي را فرا مي خوانيم راه حل معروفي به اين مسئله از طريق سيستم هاي چند رشته اي SDSM عمده مثل Treadmark[9] ، [۶]Brazos وstnings[10] منطبق مي شود كه طراحي فايل به دو نشاني متفاوت واقعي است. حتي از طريق روش نقشه برداري محيط كاري احتمالاً تحت تأثير عملكرد اين سيستم ها است. روش نقشه برداري فايل به طور ضعيف در برخي موردها اجرا مي گردد و براي مثال، سيستم IBMSP Night  Hawk  با ويرايش Aix 4.3.3PssP اين مشاهده تحقيق ديگر راه حل ها را به مسئله روز آمد صفحه اتمي موجب مي گردد. به هر حال، نقشه برداري فايل هزينه ارزش دهي بالاي آغازين را دارد و فضاي قابل دسترسي را كاهش مي دهد زيرا SDSM و بخش عمل فضاي نشاني است.
ما علت مسئله روزآمد صفحه اتمي را ذكر مي كنيم كه SDSM و بخش عملي همان صفحه نشاني است. زمانيكه تغييرات SDSM صفحه قابل نوشتن است، صفحه همچنين به كاربرد قابل دسترسي است. راه حل كلي به اين مسئله جداسازي فضاي نشاني كاربردي از فضاي نشاني سيستم براي حافظه فيزيكي است و مجوز دستيابي متفاوتي تكميل مي شود، نشانيهاي مهارتي متفاوت احتمالاً مجوز دستيابي متفاوتي دارند حتي اگر آنها به صفح فيزيكي يكسان رجوع كنند. سپس، سيستم مي تواند روزآمد بودن صفحه اتمي را از طريق تغيير مجوز دستيابي از صفحه مهارتي در فضاي نشاني كاربرد ضمانت كند بعد از اينكه آن روز آمد بودن صفحه را از طريق فضاي نشاني سيستم تكميل مي كند. در اين مقاله، ما سه راه حل جديد را با كاربرد سيستم ارتباطي درون حافظه اشتراكي، فراخواني سيسستم mdupo جديد براي نسخه برداري فهرست صفحه، و فراخواني دو شاخه سيستم O علاوه بر راه حل شناخته شده با كاربرد نقشه برداري قايل پيشنهاد مي دهيم. سهم عمده از اين مقاله ارائه راه حلهاي متنوع به مسئله روز آمد صفحه اتمي است كه با مشخصه هايشان مقايسه ميگردد. به هر حال، آن مشاهده شده است كه آن هميشه ممكن است تا همه آنها را در سيستم دسته SMP در نتيجه محدوديت هاي متنوع سيستم اجرايي تكميل گردد.  آزمايشاتي روي دسته اي براساس سينوكس ورودي دستگاه IBM SP2 نشان مي دهد كه روشهاي پيشنهاد شده بر عقب كشي هايي از روش نقشه برداري فايل غالب مي گردد مثل ارزش دهي آغازين بالاي اضافي و پاك زني و حافظه نگاهي ميانگير اضافي. بويژه، كاربرد روش فراخواني سيستم شاخه اي o فضاي كلي نشاني را به كاربرد نگه مي دارد.
اين مقاله به شرح ذيل سازماندهي مي شود. در بخش دوم، ما از مسئله روز آ,د صفحه اتمي بحث مي كنيم. ما به طور خلاصه سيستم SDSM خودمان را در بخش سوم معرفي مي كنيم و چهار روش را ارائه مي دهيم كه مسئله را در بخش چهارم حل مي كند چهار روش را از طريق كاربرد نشانه معيار ريز بررسي مي كنيم و نتايج آزمايش را با چندين كاربرد در بخش s ارائه مي دهيم. بخش ۶ خلاصه اي از مقاله است.
۲-    مسئله روز آمد صفحه اتمي
جريان گرداندن خطاي صفحه واقعي از SDSM بر پايه صفحه قراردادي در شكل ۱ روشن مي شود. به طور كلي اين نوع از كاربردهاي SDSM و SIGIO و علامتهاي SIGSESV براي تكميل پروتكولهاي سازگاري حافظه است. زمانيكه عملكرد صفحه غير معتبر اشاره شده از طريق A قابل دستيابي است، سيستم عملي علامت SIGSEGV و دسته هايي روي كنترل برنامه به SDSM از طريق راه انداختن برنامه در حافظه با كارانداز كاربر تعيين شده SIGSEGV توليد مي گردد. درون كارانداز، سيستم صفحه قابل نوشتني از طريق خلق متحرك صفحه بي نام يا از طريق بازيابي كردن صفحه از مخزن حافظه اشتراكي اختصاص مي دهد كه در مرحله ارزش آغازين آماده مي شود. سپس سيستم بيشترين صفحه روز آمد را از گروه جزئي درخواست مي كند و منتظر صفحه مي گردد. زمانيكه درخواست صفحه به گروه جزئي ميرسد، سيستم اجرايي جزئي علامت SIGIO  و راه انداز كاربر تعريف شده SIGIO كه به درخواست كمك مي كند توليد مي گردد. بعد از آن، SDSM محلي صفحه غير معتبري به مورد جديد جايگزين مي كند و صفحه خوانا را با كاربرد فراخواني سيستم mprotecto بر قرار مي كند.
در سيستم تك رشته اي، اين صفحه روز آمد با توجه به كاربرد عملي اتمي است زمانيكه مجموعه هايي از عمليات را اجرا مي كند. از لحاظ اتمي. به هر حال، تضمين نشده است زمانيكه چندين رشته دسترسي را كامل مي گرداند. به منظور ضمانت صفحه روز آمد اتمي، رشته هاي ديگر بايد از دستيابي به صفحه جلوگيري شود در حاليكه رشته در انتظار صفحه معتبر است. چندين راه حل ممكن مي تواند به طريق زير طبقه بندي شود:
•     معلق نگه داشتن همه رشته هاي كاربردي زمانيكه سيستم به صورت روزآمد صفحه غير معتبر پايان مي يابد.
•     اصلاح فهرست گر os كه رشته هايي را فهرسست بندي نمي كند كه احتمالاً قابل دستيابي به صفحه غير معتبر است
•    تكميل بسته رشته جديد (۷و۵)
•    نقشه كشي يك فايل به دو نشاني مهارتي و تعيين حواز متفاوت دستيابي به آنها.
روش اوليه قدرت مدارانه همه رشته هاي كاربردي را به طور موقتي از طريق پخش علامت SIGSTOP در طي دوره روزآمد كردن صفحه به طور معلق حفظ مي گردد و رشته هايي مجدداً بعد از روز آمد كردن صفحه بر ميانگيزد تا كامل شود. اين روش خيلي ساده است اما آن حتي اجراي رشته هاي غير مربوطه را به صفحه مسدود مي گرداند در نتيجه، اين روش بهره برداري cpu را به طور متنوع كاهش ميدهد و برتري مورد انتظار ضعيف است. نگرش ثانوي اصلاح شالوده os است تا تنها رشته هايي را فهرست بندي كند كه قابل دسترسي صفحه يكسان نيست. Murks[8] اين نوع از سيستم است حتي اين نگرش مؤثر است، و آن به محل پذيري سيستم صدمه مي زند. مورد سوم تكميل بسته رشته جديد براي كنترل فهرست بندي رشته در سطح كاربر است. رشته هاي DSm[7] و كوآكس(۵) دو سيستم شناخته شده هستند اما آنها محل پذيري ندارند.
روش آخري نقشه كشي يك فايل به دو نشاني مهارتي است و دو راه دستيابي مستقلي به فايل بوجود مي آورد. يكي براي كاربرد و ديگري براي SDSM سيستم مي تواند با فايل از طريق نشاني مجازي طراحي شده به آن روزآمد گردد در حاليكه دستيابي از رشته كاربردي از طريق پروتكول سازگاري حافظه كنترل مي شود. ازنقطه نظر سيستم اجراي، نقشه كشي قايل به صفحه هاي فيزيكي ضميمه مي گردد،‌ و به عنوان حافظه نها نگاهي براي قيل، به فضاي نشاني مجازي پردازش به كار برده
مي شود. زمانيكه يك فايل به دو نشاني مجازي نقشه برداري مي شود، هر صفحه فيزيكي از طريق دو صفحه ورودي فهرست اشاره مي شود و مجوز دستيابي متفاوتي مي تواند به نشانيهاي مجازي متفاوت نسبت داده شود. در نتيجه، سيستم SDSM روزآمد صفحه اتمي با توجه به همه رشته هاي كاربردي از طريق تغيير مجوز دستيابي از صفحه هاي مجازي طراحي شده براي كاربرد ضمانت ميگردد تنها بعد از اينكه آن صفحه هاي فيزيكي از طريق نشاني محازي نقشه برداري شده براي سيستم روزآمد ميگردند. به ويژه، ما به روش آخري توجه مي كنيم. نقطه كليدي نقشه برداري فايل بوجود آوردن هر راه دستيابي مستقل به صفحه فيزيكي است. زمانيكه رشته عملي سعي در دستيابي صفحه غير معتبر اشاره شده از طريق A دارد، SDSM صفحه غير معتبري يا صفحه روزآمد از طريق نشاني سيستم اشاره شده از طريق S روزآمد ميگردد بعد از اينكه روزآمدي صفلحه كامل شد، سيستم در صفحه A و در فضاي خواناي نشاني عمل تغيير مي گردد و به كنترل برنامه به رشته عملي مجدداً كمك مي كند. اگر رشته ديگري سعي در دستيابي صفحه همانند در طي دوره روزآمد دارد، آن به نظر مي رسد كه صفحه هنوز غير معتبر است و داخل راه انداز SIGSEGV مسدود مي شود. زمانيكه روزآمدي صفحه كامل شود، راه انداز علامت در همه رشته ها در انتظار صفحه برانگيخته ميگردد.
نقشه برداري، به هر حال، تنها راه خلق چندين راههاي دستيابي به صفحه فيزيكي نيست. ما براي متعوي رشته هاي ديگر هدف يكساني را بدون تنزل عملكرد بدست مي آوريم. در اين مقاله، ما سه روش بيشتري پيشنهاد داده و مشخصه هايشان را مقايسه مي كنيم.
۳-    سيستم ParADE
SDSM تركيبي از محيط برنامه ريزي موازي بر پايه ‌MP باز براي دسته هاي SMP به نام Par ADE است. AP باز استاندارد با اصل براي طرح برنامه ريزي فضاي نشاني اشتراكي شده است. علاوه بر سهولت برنامه ريزي ذاتي در طرح فضاي نشاني اشتراكي، پيش بيني هاي MP باز از عملكرد بالا در كاربردهاي علمي است. حتي معماري با هدف كلي از MP باز گره چند پردازشگر تنها است، اين طرح قابل اجرا با دسته اي از چند پردازشگر است. راه غير استدلاي توسعه MP باز به دسته اي از چند زير پردازشگري است كه سيستم چند رشته اي SDSM را به كار مي برد.
در تركيب كليد Par ADE سيستم گردش زمان Par ADE و انتقال دهنده MP باز هستند. SDSM چند رشته اي و كتابخانه اي با قبول شدن پيام متشكل از سيستم گردش زمان است. براي فراهم آوري ارتباط سالم رشته، ما زير مجموع MPI را براي معماري واسطه مجازي تكميل مي كنيم. سيستم SDSM، سازگارهاي سازي بر پايه مكان تنبلي با مكان مهاجرتي به كشف مكان جغرافيايي داده فراهم مي كند. در اين ضمن، ناقل MP باز برنامه MP باز را به برنامه چند رشته اي تبديل مي كند. براي اطلاعات بيشتر درباره Par ADE به (۱۱) رجوع كنيد.
۴-    چهار روش روزآمد صفحه اتمي
در اين بخش، چهار روش ارائه مي دهم كه چندين راههاي دستيابي را به صفحه فيزيكي فراهم مي آورد. نقشه برداري فايل، سيستم حافظه اشتراكي      IP,V فراخواني سيستم جديد mdupo و فراخواني سيستم چند شاخه ايO هممه روشها به جز روش mdupo در سطح كاربر تكميل مي شوند.
۱-۴ نقشه برداري فايل
فراخواني سيستم mmapo جرياني براي دستيابي فايل از طريق عملكرد هاي حافظه از طريق نقشه برداري فايل به فضاي نشاني جريان قادر مي گرداند. اين مكانيزم به عنوان حافظه نقشه برداري I/o شناخته مي شود. چنين نقشه برداري تناظر يك به يكي بين داده در فايل و داده در حوزه ها نظر نقشه برداري شده بوجود مي آورد. به هر حال فراخواني سيستن با نشانه هاي MAP-SHARED يك فايلي را قادر مي گرداند تا به پردازش چندين باره نقشه برداري شود.
نقشه برداري فايل خيلي حمل پذير (پرتابل) است و عملكرد كاربردي SDSM با كاربرد اين روش خوب است. با وجود اين، اين روش چندين برگشت دارد. اولاً اندازه فضاي نشاني اشتراكي بايد كوچكتر از اندازه فايل باشد. زمانيكه ناحيه در آنسوي اندازه فايل قابل دستيابي مي باشد، و همچنين علامتهاي سيستم اجراي يك خط براي اجتناب از اين خطاي غير منتظره، سيستمSDSM بايد فايل منظم بزرگي را به قدر كافي به وجود آورد كه شامل صفحات اشتراكي است يا به آن بايد به طور متحرك اندازه فايل را از طريق كاربرد واضح با نوشتن o يا عملكردهاي Ftrun cateo توسعه يابد. غير از اين، اين هزينه ارزش دهي آغازين جزئي نيست.
برگشت ديگر ديسك غير لازم است كه در زمان جريان مي نويسد. اگر چه Free BSD از نشانه هاي MAP- NoyNC حمايت مي كند و از صفحات كثيف اجتناب مي كند كه بايد در ديسك ريخته شود و خيلي از سيستم هاي اجراي حافظه ها نگاهي ميانگير را به ديسك به طور منظم جاري مي سازد،  يا زمانيكه فراخواني سيستم munmapo برانگيخته مي شود تا نقشه برداري را كاهش دهد. نوشتن ديسك عملكرد هزينه اي است كه ان احتمالاً ضرر مي رساند. در نتيجه، عملكرد سيستم بر پايه روشن نقشه كشي فايل وابسته به اندازه حافظه نگاهي ميانگر و طرح حافظه نها نگاهي ميانگر است. آزمايشاتي روي سيستم Ibmsp Night Hawk با ويرايش AIX4.3.3PssP 3.2 كنترل عملكرد قابل ملاحظه اي را آشكار كرد زمانيكه دستگاه به طور كلي به SDSM مختص نمي شود.