ECC چگونه عمل می کند؟
در حالی که می توان از مشکلات و خطاهای سخت افزاری هارد دیسک از طریق راه حل های افزونگی (Redundancy) مانند RAID های آینه ای (mirrored) (مانند RAID 1 که در آن اطلاعات به صورت همزمان بر روی دو هارد دیسک عینا کپی می شود) جلوگیری کرد، اطلاعات ذخیره شده روی یک حافظه رم یک ذخیره سازی موقت، سریع و کوتاه است و قابلیت تهیه نسخه پشتیبان وجود ندارد.
قبل از رم ECC، خطایابی توسط بیت توازن انجام می شد. به طور معمول داده های رایانه ای در گروه های 8 بیتی ذخیره می شوند که بایت نامیده می شوند. بیت نهم یا بیت توازن برای بررسی خطاها استفاده می شود. توازن زوج و فرد با اضافه کردن یک بیت 0 یا 1 در انتهای هر بایت آن را تبدیل به زوج یا فرد می کند.
به عنوان مثال اگر توازن زوج مورد استفاده قرار بگیرد، بیتی که به یک بایت با تعداد فرد اضافه خواهد شد 1 است، در نتیجه تعداد بیت ها به عدد زوج 8 می رسد. اگر در یک توازن زوج، یک بایت فرد وجود داشته باشند نمایانگر آن است که اطلاعات صدمه دیده و باید مجددا بار گذاری شود.بیت توازن را می توان به عنوان عامل حفاظتی در حجم داده های کم، مورد استفاده قرار داد اما در حجم بالای اطلاعات روند کندتر می شود. همچنین بیت توازن نمی تواند به صورت خودکار خطا را اصلاح کند و نیاز به بارگذاری مجدد دارد.
شیوه عملکرد رم ECC یک استفاده منطقی از روش توازن است. در این روش از بیت های چندگانه برای شناسایی و اصلاح خطاهای تک بیتی داده ها بزرگ تر استفاده می شود. به جای استفاده از 1 بیت به ازای هر 8 بیت در روش بیت توازن، روش ECC از 7 بیت که به روش خطای تصادفی غیر باینری تولید شده است در ازای هر 64 بیت استفاده می کند.
وقتی که 64 بیت توسط دستگاه خوانده شد، یک کد 7 بیتی دوم تولید می شود سپس با کد 7 بیتی اولیه مقایسه می شود. اگر کدها با یکدیگر مطابقت داشته باشند بدان معنا است که داده ها بدون خطا هستند. اگر مطابقت نداشته باشند سیستم می تواند خطا را پیدا کند و با مقایسه دو کد 7 بیتی آن را ثابت کند.با توجه به این فرآیند بررسی رم ECC کمی کندتر از رم های معمولی هستند.
با توجه به شرکت تولید کننده و مدل رم، این میزان کندی بین یک تا دو درصد تخمین زده می شود. در اکثر برنامه های کاربری استاندارد بعید است که کاربر انسانی متوجه کاهش 2 درصدی سرعت شود. ممکن است پایگاه های داده SQL با کمی کندی مواجه شوند، اما برای محافظت از داده های حیاتی این میزان کندی قابل قبول است.
اهمیت استفاده از رم ECC برای سرورها در چیست ؟
اگر به صورت حرفه ای در زمینه های مالی فعالیت می کنید و اطلاعات شما به طور ناگهانی از بین برود، قرارداد را از دست خواهید داد. خطاهای حافظه ممکن است در ذخیره سازی اطلاعات اتفاق بیفتد و موجب تغییر یک رقم و یا جا به جایی ممیز شود. در این حالت ممکن است شما حتی متوجه بروز خطا نشوید. ممکن است روزها و یا هفته های طول بکشد تا اسناد مجددا بررسی شوند. حتی ممکن است در بررسی های مجدد نیز خطای اتفاق افتاده تشخیص داده نشود.
این نوع خطاها ممکن است در فضاهای پزشکی و درمانی نیز اتفاق بیفتد، جایی که صحت و دقت اطلاعات نقش بسیار مهمی دارد. هنگامی که کارکنان اطلاعات را وارد سیستم می کنند و کدهای تشخیصی ICD را بارگذاری می کنند باید اطمینان حاصل شود که اطلاعات ورودی دقیقا مطابق واقعیت است. بدون استفاده از ECC ممکن است داده های شما صدمه ببیند و یا به درستی بارگذاری نشود، همین امر موجب می شود که پیگیری ها و اقدامات درست درمانی برای بیمار انتخاب نشود.
همچنین ممکن است باعث بروز مشکلات جانبی مانند بررسی متخصص دیگر و یا خلل در کار شرکت بیمه شود. مسلما می توان این مشکلات را با خواندن یادداشت ها برطرف کرد اما زمان امر مهمی برای درمان و اقدامات لازم در مورد بیمار است.آسیب پذیری های امنیتی، خطاهای بازنویسی اطلاعات، اطلاعات صدمه دیده، داده های از دست رفته و زمان های تعطیلی کار به دلیل توقف فعالیت سیستم ها همگی مشکلات تخصصی هستند که با استفاده از رم ECC کاهش یافته و یا به کلی از بین برود.