• مشکی
  • سفید
  • سبز
  • آبی
  • قرمز
  • نارنجی
  • بنفش
  • طلایی
  • تعداد بازديد :
  • 2498
  • چهارشنبه 1383/6/11
  • تاريخ :

كامپیوترها چرا درهم مى ریزند

شاید این سئوال هم براى شما پیش آمده باشد كه چرا كامپیوترها در هم مى ریزند؟ پاسخ این سئوال بسیار آسان است. كامپیوتر ها معمولاً به دلیل خطا ها در نرم افزار سیستم عامل یا سخت افزار درهم مى ریزند. خطا هاى نرم افزارى احتمالاً بیشترند، ولى خطا هاى سخت افزارى مى تواند مخرب تر بوده و تشخیص شان دشوارتر است.

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

از آنجا كه حافظه موقت ممكن است به صورتى غیرمنتظره خراب بشود همین امر موجب درهم ریختگى كامپیوتر خواهد شد. واحد فرآورى مركزى اطلاعات (CPU) نیز ممكن است به دلیل گرماى بیش از اندازه منشاء درهم ریزى كامپیوتر شود. پروانه هاى تبادل هوا (كه اغلب سروصدایشان ما را آزار مى دهد) براى پیشگیرى از چنین حادثه اى است هر چند كه آنها از این رویداد مصون نیستند. پروانه ها كه هواى خنك كننده را به داخل كامپیوتر مى كشند از سوى دیگر گرد و غبار را نیز از آن دور مى كنند.

انباشته و سپس پراكنده شدن گرد و غبارگاه موجب تشكیل مدار هاى كوتاه مى شود. خوشبختانه مى توان با فشار زیاد هوا یا جاروبرقى به آسانى از دست گرد و غبار خلاص شد. مشكلات سخت افزارى دیگرى نیز وجود دارند كه بسیار ظریف و گمراه كننده اند. و براى پى بردن به محل اشكال لازم است از نرم افزار هایى براى تست استفاده كنیم یا به صورت تجربى اجزاى سخت افزار را به صورت پى در پى تعویض نماییم.

بیشتر اشكالات دائمى و پایدار ناشى از خطا هاى مربوط به دیسك كامپیوترند. اطلاعات موجود در دیسك در واحد هایى به نام بخش (سكتور) ذخیره مى شوند. بیشتر دیسك هایى كه جدیداً ساخته شده اند، داراى بخش هاى معیوب اند كه خود كارخانه تولید كننده آنها را شناسایى مى كند، تولید كنندگان كاملاً انتظار آن را دارند و بخش هاى زیادى در دیسك به وجود مى آورند تا جایگزین بخش هاى ناقص ومعیوب گردند با این حال ممكن است به مرور برخى بخش ها دچار عیب شده و اطلاعات ذخیره شده در این بخش ها از بین بروند.

اگر این ها اطلاعات سیستم باشند، روشن است كه همین اتفاق موجب درهم ریختن كامپیوتر خواهد شد. بدتر از این آنكه ممكن است در اثر ضربه شدید به كامپیوتر یك یا چند دیسك كاملاً دچار اشكال شده و هد (كه در واقع فاصله بسیار اندكى با دیسك هنگام گردش دارد) عملاً با دیسك تماس مى گیرد. نتیجه آن كه كل اطلاعات موجود بر روى دیسك از دست مى روند.

گرچه امكان درهم ریختن كامپیوتر در نتیجه اشكالات سخت افزارى وجود دارد، ولى بیشتر موارد درهم ریختگى كامپیوتر از خطا هاى نرم افزارى سیستم عامل ناشى مى شوند. وظیفه سیستم عامل تنها ایجاد واسطه اى براى كاربر براى كار كردن با كامپیوتر نیست. علاوه بر این وظیفه ایجاد واسطه اى بین برنامه هاى كاربردى و سخت افزار بر عهده آن است و امكانات سیستم را براى برنامه هاى گوناگون به مشاركت مى گذارد. نتیجه آن كه امكان برخى از خطا ها پیش مى آید. شاید متداول تر و معمول تر از همه وضعیتى است كه در پى تلاش دستیابى سیستم عامل به یك آدرس نادرست (مثلاً در نتیجه خطا در برنامه نویسى) پیش مى آید.

در ویندوز این خطا را خطاى «ایراد حفاظتى عمومى» General Protection Fault)[GPF]) مى خوانند در موارد دیگر خطا هاى سیستم عامل وارد حلقه بى انتهایى مى شوند كه كامپیوتر بار ها و بارها دستورات یكسانى را به اجرا درمى آورد، بدون آنكه امیدى به خارج شدن از این حلقه معیوب وجود داشته باشد. در این موارد، چنین به نظر مى رسد كه كامپیوتر «قفل مى كند»؛ بدین معنى كه سیستم درهم نمى ریزد، بلكه دیگر هیچ دروندادى را نمى پذیرد و باید مجدداً از نو راه انداخته شود. مورد دیگر زمانى است كه به دلیل وجود ایرادى (bug) نرم افزارى اطلاعات در محلى از حافظه كنار گذاشته شده (buffer) نوشته شود كه به هیچ وجه جاى كافى براى پذیرفتن آن را ندارد.

بدین ترتیب اطلاعات اضافى سرریز كرده بر روى اطلاعات پیشین نگاشته مى شود، نتیجه آن كه سیستم عامل دچار سردرگمى خواهد شد. همین خطا ها مى توانند در برنامه هاى كاربردى نیز پیش آیند. سیستم هاى عامل جدید در برابر درهم ریختگى برنامه هاى كاربردى كمتر آسیب پذیرند. حال آنكه در سیستم هاى پیشین ایراد ها مى توانستند بر سیستم عامل اثر گذارند و موجب درهم ریختگى كل سیستم شوند.

سیستم هاى عامل جدید به دقت مورد آزمون قرار مى گیرند و نسبتاً پایدارند، ولى راه انداز هایى كه براى راه انداختن ابزار هاى اضافى مانند چاپگر به سیستم عامل افزوده مى شوند ممكن است این طور نباشند و منشاء تمام درهم ریختگى ها خواهند بود. به همین دلیل بیشتر سیستم هاى عامل مدرن داراى گزینه اى براى نصب هستند كه مانع افزودن هرگونه راه اندازى مى شوند كه یك راه حل این مشكل این است كه راه اندازه ها را یكى یكى به سیستم اضافه كنیم، تا معلوم شود كدام یك منشا و مسبب خطاست.

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

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

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

و بالاخره هرگاه كه اطلاعات مورد نیاز سیستم عامل بر روى دیسك از بین رفته باشد، ممكن است كامپیوتر دچار درهم ریختگى شود. این اتفاق زمانى پیش مى آید كه كامپیوتر پیش از این دچار درهم ریختگى شده باشد، سیستم برق رسانى اش قطع شده باشد و یا بدون داشتن هرگونه فرصتى براى انتقال محتواى حافظه موقت به فایل هاى مناسب به یك باره خاموش شده باشد. بدین ترتیب با هر بار راه اندازى سیستم، این درهم ریختگى شرایط را براى درهم ریختگى هاى بیشتر فراهم مى سازد. آلودگى سیستم به ویروس نیز مى تواند سیستم كامپیوتر را درهم بریزد.

حالا كه این همه دلایل براى درهم ریختگى كامپیوتر برشمردیم، چگونه مى توان علت آن را تشخیص داد؟ این كار همیشه آسان نیست ولى منابعى وجود دارند كه داراى رهنمود هایى با جزئیات كامل براى نزدیك شدن به حل این مسئله هستند. یكى از بهترین شان در این آدرس وجود دارد.

http://www.pcguide.com/ts/sys/crush.htm Scientific American, May.31.2004*استاد كامپیوتر دانشگاه جورج تاون

كلى شیلدز*-ترجمه ع. فخر یاسرى

برگرفته از روزنامه شرق


UserName