1. خطای ناپایدار

 

 

 

پس از مدتی خطا ناپدید می­ شود

 

زیاد گرم شدن سنسور

 

 

 

جدول ۲-۱:یک طبقه ­بندی رایج از خطاها
به منظور غلبه بر خطا می­توان از روش­هایی بهره برد. به طور کلی برای غلبه کردن بر خطا و حفظ کارایی نرمال سیستم، سه روش الف) اجتناب از خطا[۳۳]ب) پوشاندن خطا[۳۴] ج) تحمل­پذیری خطا، وجود دارد. هر تکنیکی که برای جلوگیری از بروز خطا در سیستم، استفاده می­ شود، جزء تکنیک­های اجتناب از خطا می­باشد. پوشاندن خطا یعنی اینکه پس از بروز نقص در سیستم، از تکنیک­هایی استفاده کنیم تا از وقوع خطا جلوگیری شود. تحمل­پذیری خطا یعنی پس از بروز خطا، سیستم قادر به ادامه­ وظایف خود باشد.
پایان نامه - مقاله - پروژه
شایان ذکر است که هدف نهایی تحمل­پذیری خطا، جلوگیری از رخ دادن خرابی در سیستم است. به منظور دستیابی به تحمل­پذیری خطا می­توان از تکنیک­های مختلفی از جمله پیکربندی مجدد استفاده کرد. معمولاً در پیکربندی مجدد می­توان عناصر خراب را از سیستم حذف کرد و سپس سیستم را به وضعیت کارآمد خود باز گرداند.
فرایندهای تشخیص خطا، تعیین موقعیت خطا، محدودسازی حوزه خطا و برطرف نمودن خطا، چهار تکنیک پیکربندی مجدد می­باشند که طراح باید به آنها دقت کند. تشخیص خطا همان فرایند شناسایی خطاست که قبل از سه فرایند دیگر انجام می­ شود. بعداز شناسایی خطا باید مشخص کرد که خطا در کجا رخ داده است. پس از شناسایی و مکان­ یابی خطا باید آنرا ایزوله کرد یعنی باید از انتشارات اثرات خطا در کل سیستم جلوگیری شود. فرایند برطرف نمودن خطا یعنی پس از پی بردن به علت خطا، عملکرد سیستم به حالت مناسب بازگردانده شود.
به طور مثال فرض کنید که یک خطا در سیستمی که از تحمل­پذیری خطا پشتیبانی می­ کند، رخ داده است. در این صورت می­توان از تکنیک­های پیکربندی مجدد بدین صورت استفاده کرد که تکنیک­های تشخیص خطا، وجود خطا را در سیستم مشخص می­ کنند. در ادامه با بهره گرفتن از روش­های تعیین موقعیت خطا، منبع خطا مشخص می­ شود. سپس یا می­توان خطا را محدود کرد و یا می­توان آنرا رفع کرد. بدین صورت که رفع خطا و پیکربندی مجدد، واحد خراب را حذف می­ کنند و یا آنرا با مؤلفه­ی سالم دیگری تعویض می­ کنند. اگر امکان تعویض مؤلفه­ی خراب نباشد، می­توان با کمک تکنیک­هایی و با کاهش قابل قبول کارایی، سیستم را در حالت فعال نگه داشت.
۲-۳-۳ ابزارهای اتکاپذیری
روش­های دستیابی به یک سیستم اتکاپذیر(ابزارها) به چهار دسته پیش­گیری از اشکال، رفع اشکال، تحمل اشکال و پیش ­بینی اشکال، تقسیم می­شوند.

 

 

  • پیش­گیری از اشکال: ابزاری است که برای جلوگیری از وقوع اشکال استفاده می­ شود. که این کار به وسیله­ طراحی کاملاً دقیق و اصولی قابل انجام است. به طور کلی روش­های پیش­گیری از اشکال در مراحل طراحی و توسعه سیستم­ها مورد استفاده قرار می­گیرند.

 

 

 

  • رفع اشکال: روش­های رفع اشکال هدفشان کاهش تعداد و اثرات اشکال­هاست.

 

 

 

  • تحمل اشکال: روش­های تحمل اشکال، روش­هایی می­باشند که هنگام بروز اشکال­ها، از شکست سیستم جلوگیری می­ کنند، بدین صورت که خطا را تشخیص و بازیابی سیستم را انجام می­ دهند. در فرایند بازیابی، کارهای رسیدگی و اداره کردن خطا و اشکال صورت می­گیرد. که فرایند اداره کردن اشکال از چهار مرحله­ تشخیص اشکال، جداسازی اشکال، پیکربندی مجدد سیستم و آغاز مجدد سیستم، تشکیل شده است.

 

 

در مرحله­ تشخیص اشکال، مکان و علت اشکال مشخص می­ شود، در مرحله­ جداسازی اشکال، از شرکت مؤلفه­ های معیوب در انجام وظایف سیستم، جلوگیری می­ شود. سپس در مرحله­ پیکربندی مجدد سیستم، از مؤلفه­ های افزونه استفاده می­ شود و یا کل وظایف سیستم تنها به مؤلفه­ های سالم، تخصیص می­یابند. در مرحله­ آخر یعنی آغاز مجدد سیستم، پیکربندی جدید سیستم مورد استفاده قرار می­گیرد.

 

 

  • پیش ­بینی اشکال: با بهره گرفتن از ارزیابی سیستم می­توان اشکال را پیش ­بینی کرد. به روش­هایی که تعداد فعلی اشکال­ها، نرخ وقوع اشکال­ها در آینده و پیامدهای احتمالی اشکال­ها را تخمین زده و پیش ­بینی می­ کنند، روش­های پیش ­بینی اشکال گفته می­ شود. فرایند پیش ­بینی اشکال، بوسیله­ی ارزیابی سیستم صورت می­گیرد که این ارزیابی به دو طریق کمی و کیفی قابل انجام است.

 

 

در بحث ابزار­های اتکاپذیری ممکن است این سؤال مطرح شود که بهترین ابزار چیست؟ هرچند که می­توان در طراحی و توسعه سیستم از روش­هایی به منظور پیش­گیری از اشکال استفاده کرد، اما همواره این امکان وجود دارد که در سیستم اشکال­هایی رخ دهد. از اینرو ابزار پیش­گیری اشکال، به تنهایی کافی نمی ­باشد و نیاز به ابزار رفع اشکال نیز می­باشد. اما واقعیت امر این است که ابزار رفع اشکال نیز خود شامل کاستی­هایی می­باشد. زیرا این ابزار قادر به یافتن همه اشکال­ها نیست، همچنین ممکن است که در هنگام برطرف کردن یک اشکال، اشکال­های جدیدی تولید شود. به علاوه این امکان وجود دارد که حتی مؤلفه­ های استاندارد سیستم، خود نیز حاوی اشکال­هایی باشند. موارد ذکر شده، نیاز به استفاده از ابزارهای پیش ­بینی اشکال و تحمل اشکال را بیان می­ کنند. پس به عنوان یک نتیجه کلی باید گفت که یک سیستم به هر چهار ابزار اتکاپذیری نیاز دارد.
اما بررسی میزان اتکاپذیری مبحث دیگری است که باید بررسی شود. میزان اتکاپذیری یک سیستم به دو روش کمی و کیفی قابل مشخص شدن است. که در این میان تزریق اشکال[۳۵]، یکی از متداول­ترین روش­های کمی می­باشد. به فرایند افزودن آگاهانه­ی اشکال به سیستم برای ارزیابی تحمل­پذیری آن، تزریق اشکال گفته می­ شود. به طور کلی روش­های تزریق اشکال به سه روش فیزیکی، نرم­افزاری و شبیه­سازی شده تقسیم می­شوند.

 

 

  • تزریق اشکال شبیه­سازی: در این روش اشکال­ها بر روی یک مدل شبیه­سازی شده از سیستم، تزریق می­شوند. از آنجا که این روش معمولاً در فازهای ابتدایی طراحی مورد استفاده قرار می­گیرد، می­توان به میزان زیادی هزینه­ های ساخت سیستم را کاهش داد. زیرا قبل از ساخت نمونه­ اصلی، تحمل­پذیری آن در برابر خطا بررسی می­ شود.

 

 

 

  • تزریق اشکال فیزیکی: در این روش، اشکال­ها بر روی یک پیاده­سازی واقعی از سیستم یا یک نمونه­ واقعی از سیستم، تزریق می­شوند. این روش کارایی بالایی دارد زیرا که بجای ارزیابی یک مدل از سیستم، خود سیستم واقعی آزمایش و ارزیابی می­ شود.

 

 

 

  • تزریق اشکال نرم­افزاری: در این روش­ها، اشکال­ها با کمک یکسری نرم­افزارها به سیستم فیزیکی تزریق می­شوند.

 

 

۲-۴ رهیافت­های تحمل­پذیری خطا
سه رویکرد عمده برای حل مسئله­ تحمل­پذیری خطا عبارتند از: الف)افزونگی ب)آزمایش و اشکال­زدایی کامل ج)self-healing، [۵۰] که این رویکردها در محاسبات پوشیدنی استفاده شده ­اند.
رویکرد اول برای حل این مسئله، استفاده از افزونگی است. فرایند افزونگی به افزودن یکسری مؤلفه­ ها (سخت­افزار، نرم­افزار، اطلاعات و زمان) به سیستم گفته می­ شود که در حالت عادی این مؤلفه­ ها برای عملکرد سیستم اضافی هستند[۵۱]. افزونگی هزینه­ های فاز تولید محصول را افزایش می­دهد و به علاوه تشخیص خطا، نیاز به آنالیز انسانی دارد.بطور کلی افزونگی به چهار دسته­ی سخت­افزاری، اطلاعاتی، زمانی و نرم­افزاری تقسیم می­ شود [۴۹][۵۱]. در جدول ۲-۲ به شرح این افزونگی­ها پرداخته شده است.

 

 

  • افزونگی سخت­افزاری: به فرایند تکرار کردن فیزیکی سخت­افزار به سیستم به منظور تشخیص خطا یا تحمل خطا، گفته می­ شود. واحدهای سخت­افزار اضافه شده مانند یکدیگرند و کار اضافه­تری را انجام نمی­­دهند. این روش رایج­ترین نوع افزونگی است اما اگر در بحث تحمل­پذیری شبکه ­های پوشیدنی در برابر خطا، به ویژگی­های کامپیوترهای پوشیدنی دقت نشود، این روش می ­تواند مناسب نباشد؛ دلیل این امر مصرف انرژی، فضای اشغال شده و هزینه­ قطعات افزونه است[۵۲]. افزونگی سخت­افزاری به سه دسته­ی فعال، غیر فعال و هیبرید تقسیم می­شوند.

 

 

 

  • افزونگی سخت­افزاری فعال(پویا): در این روش ابتدا خطا تشخیص داده می­ شود و سرانجام بعد از مکان­ یابی خطا، اقداماتی جهت رفع آن صورت می­گیرد.

 

 

 

  • افزونگی سخت­افزاری غیرفعال: در این روش پوشانده شدن خطا نسبت به رفع خطا بیشتر مورد توجه قرار می­گیرد، بگونه­ای که با وجود خطا مقادیر صحیحی در خروجی پدیدار می­ شود.

 

 

 

  • افزونگی سخت­افزاری ترکیبی: با ترکیب افزونگی­های فعال و غیرفعال، افزونگی ترکیبی حاصل می­ شود.

 

 

 

  • افزونگی اطلاعاتی: به فرایند اضافه کردن اطلاعات اضافی به داده ­های اصلی، افزونگی اطلاعاتی گفته می­ شود. تکنیک­های این روش قادر به تشخیص و گاه رفع خطا نیز می­باشند. معمولاً از این روش برای تحمل خطاهای سخت­افزاری استفاده می­ شود.

 

 

 

  • افزونگی زمانی: این روش برای در نظر گرفتن تحمل خطا از زمان اضافه­تری استفاده می­ کند. از این روش برای تحمل خطاهای نرم­افزاری و سخت­افزاری استفاده می­ شود.

 

 

 

  • افزونگی نرم­افزاری: به فرایند تکرار قسمتی از برنامه یا تمام برنامه، گفته می­ شود.

 

 

 

موضوعات: بدون موضوع  لینک ثابت


فرم در حال بارگذاری ...