ورود

View Full Version : توقف لینوکس در سال 2038 ؟



Inprise
یک شنبه 02 دی 1386, 11:11 صبح
البته همه ما در سال 2038 یا زنده نیستیم یا از سیستم های 32 بیتی استفاده نمیکنیم ( همونطور که الان از PDP های 8 بیتی استفاده نمیکنیم ) اما ، یونیکس/لینوکس های 32 بیتی بخاطر مشکلی که به " مسئلهء سال 2038" معروف شده ، در تاریخ January 19, 2038 at 3:14:07 متوقف میشن و بخاطر محدودیت فعلی ( time_t یک عدد 32 بیتی علامتدار است ) زمان جلوتر نخواهد رفت . ممکن هست که خیلی از نرم افزارها و سیستمهای دیگر هم چنین ایرادی رو داشته باشن . هر چند این یه جور تهدید یا خطر جدی نیست اما مطرح شدن گه گاه مواردی مثل این باید باعث بشه برنامه نویسها با دید بلند مدت برنامه هاشون رو طراحی کنن و موقع استفاده از توابع و روتین ها و کامپوننتها و سیستم کال ها و ...مراقب باشن

http://en.wikipedia.org/wiki/Year_2038_problem
http://www.hackosis.com/index.php/2007/12/21/linux-is-not-y2k38-compliant/
http://www.digg.com/linux_unix/Linux_Is_Not_Y2K_38_Compliant

illegalyasync
یک شنبه 02 دی 1386, 13:23 عصر
همونطور که الان از PDP های 8 بیتی استفاده نمیکنیم
این مقایسه درست نیست چون فاصله سی سال گذشته مثل الان تا سی سال آینده نیست . پلت فرم سی و دو بیتی خیلی جدی هستش و الان برای خیلی از کارهای صنعتی و نظامی و موبایل و پزشکی و فضائی و .... استفاده میشه ! و نمیشه که فرض کنیم 32 بیتی رو با 64 بیتی جایگزین میکنیم و اتفاقی نمیفته چون قطعا میفته . همونطوری که در مقاله ها هم بهش اشاره شده بهترین ایده این هست که مشکل همین الان رفع بشه ....چیز خاصی هم نیست یه patch ساده همه چیزو درست میکنه

Inprise
یک شنبه 02 دی 1386, 14:32 عصر
پلت فرم سی و دو بیتی خیلی جدی هستش و الان برای خیلی از کارهای صنعتی و نظامی و موبایل و پزشکی و فضائی و .... استفاده میشه ! و نمیشه که فرض کنیم 32 بیتی رو با 64 بیتی جایگزین میکنیم و اتفاقی نمیفته چون قطعا میفته

هر دو نکته صحیح هست . ولی بی تردید تا سی سال دیگه اساسا" ماهیت خیلی از فناوری ها تغییر میکنه . اگه منظورت این است که ماشینی با فناوریهای امروز قرار هست سی سال دیگر هم در محل جدی ای در حال سرویس دهی باشه که اشتباه میکنی . از قضا کاربردهای نظامی و فضائی و صنعتی همیشه روی لبهء تکنولوژی هستند . فقط دو سه صنعت خیلی خیلی خاص ( مثل هوانوردی ) هست که محصولاتش سی سال+ عمر میکنند که اونها هم اجزاء و ادوات داخلیشون به روز رسانی میشه . در کل این مسئله یه نگرانی واقعی نیست . فقط یه جور بحث فنی- برنامه نویسی هست

oxygenws
یک شنبه 02 دی 1386, 20:49 عصر
به نظر من هم مشکل خاصی پیش نمیاره. حرکت آغازین تکنولوژی دیجیتال تو ۶۰ سال اولش مسلما خیلی کند بوده و تو این ۳۰ سال باقیمونده خیلی بیشتر خواهد شد و حداقل من حدس می زنم که با این پیشرفت مشکلی با این ۳۲ بایت نداشته باشیم!

نهایتش به قول برادر illegal یک وصله مشابه اون چیزی که برای سال ۲۰۰۰ وجود داشت می ذارند و مشکل رو حل می کنند، یعنی یک بازهء مثلا ۱۵۰ ساله می ذارند برای مشخص کردن نقطهء آغاز این زمان و یا خیلی بهتر از اون، روش نگهداری زمان رو به جای ۳۲ بیت به ۶۴ بیت تغییر می دن و یا یک راه موقتی می تونه این باشه که زمان را بدون علامت از ال ژانویه ۱۹۷۰ ذخیره کنند که تا سال ۲۱۰۶ مشکلی نخواهیم داشت.

در نهایت احتمالا همه چیز یا به یک وصله و یا به یک مهاجرت ِ نرم به ۶۴ بیتی ختم خواهد شد :)

پ.ن: برای کسانی که زیاد با این مشکل آشنا نیستند. زمان در سیستم عامل های یونیکس-بیس بر اساس تعداد ثانیه ها از یکم ژانویه ۱۹۷۰ ذخیره میشه. که این عدد به طور پیشفرض «علامت دار» است. یعنی شما ۲ به توان ۳۱ ثانیه برای ذخیره کردن این ثانیه ها دارید که آخرین عدد میشه همین سال ۲۰۳۸. در حقیقت با این کار شما می تونید زمان رو از حدودا سال ۱۹۰۰ تا ۲۰۳۸ ذخیره کنید.