علت بروز دو خطای رایج در کامپیوتر
خطای Invalid page fault: هر نرمافزاری به میزان مشخصی از حافظه رم کامپیوتر شما برای ذخیره کردن اطلاعات مورد نظرتان استفاده میکند. برای مثال، وقتی شما یک فایل را در مایکروسافتورد باز کرده و ادیت میکنید، بخشهای بزرگی از آن در رم کامپیوترتان ذخیره شده و فضایی را اشغال میکند. اگر نرمافزاری که با آن کار میکنیم بخواهد در موقعیتی که در خارج از حوزه دسترسی حافظه بلاک شده است چیزی بنویسد یا اینکه نرمافزار برای دسترسی به بخشی از حافظه بلاکشده که وجود ندارد از یک اشارهگر نامعتبر استفاده کند، سیستمعامل متوجه میشود که اشتباهی رخ داده و یک پیغام page fault (خطای صفحه) یا یک هشدار segmentation fault (خطای قطعهبندی) تولید کرده و به مانیتور شما ارسال میکند. در چنین حالتهایی سیستمعامل شما بهصورت اتوماتیک نرمافزاری را که با آن کار میکنید میبندد؛ چراکه متوجه میشود نرمافزار نمیداند چه کاری انجام میدهد.
Illegal operation: یک میکرو پردازشگر تنها تعداد محدودی از دستورهایی را که دریافت میکند، درک میکند. هر دستور با تعداد زیادی از شاخهها که به آنها opcodeمیگویند نشان داده میشود؛ هر opcode با توجه به کد خاص خود معنی مخصوص به خود را دارد. برای مثال، معنی opcode 43 اضافه کردن است یا opcode 52 به تکثیر کردن اشاره دارد و به همین ترتیب هر opcode به چیز خاصی اشاره میکند. حال اگر یک دستگاه با opcode خاصی مواجه شود که نتواند آن را شناسایی کند، سیستمعامل بهصورت اتوماتیک برنامهای را که موجب بهوجود آمدن این خطا شده است میبندد.
باید توجه کرد که هر دو خطای ذکرشده خطاهای انسانی هستند که در اثر اشتباهات برنامهنویس در هنگام نوشتن برنامه به وجود میآیند و هیچگونه منشأ سختافزاری ندارند؛ بنابراین قطعات داخل کیس خود را دستکاری نکنید. درحقیقت اینگونه خطاها در اثر بیدقتی برنامهنویسها به وجود میآیند؛ چراکه آنها گاهی استثناها را پیشبینی نمیکنند یا به برنامهشان اجازه میدهند که به حافظه غیرمعتبر کامپیوتری که روی آن نصب میشوند دسترسی داشته باشند.(منبع:عصرارتباط)
- ۹۴/۱۲/۱۸