كارثة رقمية قادمة: خلل في أنظمة قديمة يكشف عن مشاكل غير متوقعة في عام 2038
26 أغسطس 2025
في معرض الأنظمة الرقمية القديمة بالمتحف الوطني للحوسبة في بريطانيا، وبينما كان المتطوع روبن داونز يعرض معدات شركة Digital Equipment Corporation (DEC) العتيقة، وقع اكتشاف مثير للقلق: خلل برمجي غير موثق يؤدي إلى انهيار البرامج قبل عام من الموعد المتوقع لما يُعرف بـ"كارثة عام 2038" أو "Epochalypse".
الحدث الذي نقله موقع "ذا ريجيستر"، وقع أثناء تجربة على جهاز PDP-11/73، الذي لا يعمل بنظام يونكس لكنه يحتوي على مترجم لغة C يعود إلى عام 1982. هذا المترجم، كما أوضح داونز، يعاني من مشاكل في التعامل مع الوقت والتاريخ، إذ يُظهر الوقت بشكل صحيح لكنه يخطئ في التاريخ. ورغم أن النظام خضع لتحديثات لمعالجة مشكلة عام 2000 (Y2K)، إلا أن هيكلية الوقت فيه تختلف عن تلك المستخدمة في أنظمة يونكس، ما جعله عرضة لمشاكل جديدة.
بدا كل شيء طبيعيًا. لكن بمجرد وصول النظام إلى بداية عام 2037، انهارت البرامج التي تستدعي دالة الوقت
المفاجأة الكبرى جاءت عندما قام داونز بتقديم الساعة إلى عام 2036، حيث بدا كل شيء طبيعيًا. لكن بمجرد وصول النظام إلى بداية عام 2037، انهارت البرامج التي تستدعي دالة الوقت. يقول داونز: "اكتشفنا خللًا غير موثق، حيث يؤدي استدعاء دالة الوقت في بداية عام 2037 إلى انهيار البرنامج بالكامل". هذا الاكتشاف يضيف طبقة جديدة من التعقيد إلى مشكلة عام 2038، التي كانت تُعتقد سابقًا أنها ستبدأ فقط في 19 كانون الثاني/يناير من ذلك العام، عندما يتجاوز عداد الثواني في أنظمة يونكس ذات البنية 32-بت الحد الأقصى ويعود إلى تاريخ خاطئ.
المثير أن التوقعات كانت تشير إلى أن النظام سيعيد التاريخ إلى عام 1901، لكن ما حدث فعليًا هو عودة التاريخ إلى عام 1970، ما يكشف عن خلل إضافي في دالة الوقت المحلية التي تُرجع التاريخ بشكل خاطئ بـ68 عامًا إلى الوراء، بدلًا من الاتجاه إلى ما قبل العصر الرقمي.
هذا الاكتشاف يثير تساؤلات حول مدى استعداد الأنظمة القديمة للتعامل مع هذه المشكلة، خاصة أن العديد من الأجهزة والبرمجيات القديمة لا تزال تُستخدم في قطاعات حيوية. المهندس السابق في مايكروسوفت، ديف بلامر، أعرب عن تفاؤله بإمكانية حل المشكلة خلال السنوات القادمة، لكنه أقر بأن أي نظام يعمل وقت حدوث الانهيار سيكون عرضة للخطر، حتى لو لم يكن قد بدأ تشغيله منذ فترة طويلة.
داونز، من جانبه، عبّر عن قلقه من أن الجيل الجديد من المهندسين، الذين يزورون المتحف اليوم، قد يجدون أنفسهم بعد أكثر من عقد أمام شيفرات قديمة مليئة بالمشاكل غير المتوقعة. وأضاف: "لقد قابلت مبرمجين محترفين بلغة C لا يدركون حجم المشكلة المحتملة، والأسوأ من ذلك أننا نبني اليوم أنظمة نتوقع أن تستمر لأكثر من 12 عامًا".
الخلاصة التي توصل إليها داونز كانت قاتمة: "لا توجد إجابة واحدة، لأن كل جهاز وكل إصدار برمجي يمكن أن يتصرف بطريقة مختلفة. نطاق المشاكل المحتملة أكبر بكثير مما واجهناه في Y2K".
هذا التحذير المبكر يعيد إلى الأذهان أهمية اختبار الأنظمة القديمة بشكل شامل، وعدم الاكتفاء بالافتراضات التقنية، خاصة مع استمرار استخدام البنى التحتية الرقمية التي تعود لعقود مضت.