2038 সালের সমস্যাটি খুব সমস্যাযুক্ত হওয়ার সম্ভাবনা কী ?
2038 সালের সমস্যাটি খুব সমস্যাযুক্ত হওয়ার সম্ভাবনা কী ?
উত্তর:
আমি এম্বেডেড লিনাক্স সিস্টেমে এই সমস্যার মুখোমুখি হয়েছি যার জন্য কিছু দীর্ঘমেয়াদী ক্রিপ্টোগ্রাফিক শংসাপত্রগুলিতে 2038 এর পূর্বের তারিখগুলি পরিচালনা করতে হবে, তাই আমি বলতে চাই এর আধিপত্য আপনার অ্যাপ্লিকেশন ডোমেনের উপর নির্ভর করে।
যদিও বেশিরভাগ সিস্টেমে 2038 এর আগে ভাল প্রস্তুত হওয়া উচিত, আপনি যদি আজ নিজেকে ভবিষ্যতের তারিখগুলি গণনা করে দেখতে পান তবে আপনার সমস্যা হতে পারে।
mktime
কলটি নিঃশব্দে ব্যর্থ হয়েছিল।
আমি মনে করি এটি একটি উল্লেখযোগ্য সমস্যা হতে চলেছে, ১৯৯৯/২০০০ এর Y2K ইস্যুগুলির তুলনায় অনেক বেশি ক্ষতিকারক কারণ প্রভাবিত কোডটি সাধারণত নিম্ন-স্তরের (এটি সিটিটাইম) এবং তাই সেই জায়গাগুলি স্পষ্ট করা শক্ত যেখানে সেই সময়টি সংরক্ষণ করা হচ্ছে।
বিষয়গুলিকে আরও জটিল করার জন্য, ওয়াই টু কে স্যাঁতসেঁতে স্কোয়াব বলে মনে করা হয়েছিল ঘটনাটি রানআপ করার সময় সমস্যার দিকে দৃষ্টি আকর্ষণ করা আরও শক্ত করে তুলবে।
সাংস্কৃতিক তথ্যসূত্র:
কোরি ডক্টরো খোলা লাইসেন্সের আওতায় শর্ট স্টোরি কমিজিং / প্রকাশের জন্য একটি নতুন মডেল চেষ্টা করছিলেন এবং আমি তাদের মধ্যে একটি 2038 থিম প্রস্তাব করেছি, যা তিনি ইপোচে দুর্দান্তভাবে করেছিলেন: http://craphound.com/?p=2337
কয়েক বছর আগে, বন্ধকী প্রোগ্রামগুলির মতো এলাকায় 30 বছরের loansণের জন্য গণনা করার ক্ষেত্রে ইতিমধ্যে সমস্যাগুলির প্রতিবেদনগুলি ছিল: ২০০৮ + ৩০ = ২০৩৮।
একটি 64 বিট ওএস শেষ পর্যন্ত 2037 সমস্যার অপ্রাসঙ্গিক। (সিটিটাইম 2038 এর চেয়ে 2037 এর কাছাকাছি চলে গেছে)।
প্রশ্নটি ওএসের সামান্য গভীরতা নয়, বরং ওএস কীভাবে স্টোর করে। অথবা ডাটাবেস কলাম কীভাবে সময় সঞ্চয় করতে পছন্দ করে। বা কীভাবে এই ডিরেক্টরিটি পরিষেবাটির সময় সিনট্যাক্স বৈশিষ্ট্যের স্টোর সময়টিকে শেষ প্রান্তে সরবরাহ করে।
এটি লোকেরা ভাবার চেয়ে অনেক বড় সমস্যা, যেহেতু 32 বিট টাইম কাউন্টার ব্যবহার করা এত সাধারণ এবং সাধারণ।
সময় সংরক্ষণ করে এমন প্রতিটি দর্শন পুনর্বিবেচনা করা দরকার, এবং সমস্ত এপিআই'র আপডেট হওয়া এবং এটি ব্যবহার করা সমস্ত সরঞ্জামও আপডেট হয়।
বিমূর্ত স্তরগুলি যা আপনাকে মানব পাঠযোগ্য সময় বিন্যাসের মাধ্যমে সময় নির্ধারণ করতে দেয়, পরিবর্তিত লিখিত কাঁচা ডেটার পরিবর্তে এটি আরও সহজ করে তোলে, তবে এটি কেবল একটি ক্ষেত্রে।
আমার সন্দেহ হয় এটি বেশিরভাগ লোকেরা মনে করেন এর থেকে অনেক বড় চুক্তি হতে চলেছে।
time_t
। এটি এক 16-বিট মান হিসাবে ক্ষেত্র হিসাবে বছর, মাস এবং দিন সঞ্চয় করে: দিনের জন্য 5 বিট, মাসের জন্য 4, বছরের জন্য 7 রেখে যায়। 2107 হ'ল 1980 (FAT জমিতে বছর শূন্য) + 2 ^ 7-1। আরও মজাদার জন্য, ফ্যাট দিনের সময় একইভাবে অন্য 16-বিট মানতে সঞ্চয় করে, তবে আপনি যদি গণিতটি করেন, আপনি দেখতে পাবেন যে এভাবে দিনের সময় সংরক্ষণ করতে আপনার 17 বিট লাগবে। সেকেন্ডের জন্য এক বিট রেজোলিউশন ফেলে দিয়ে এফএটি চারপাশে আসে; FAT 2 সেকেন্ডেরও কম পৃথক পরিবর্তনের পার্থক্য করতে পারে না। আহ, মাইক্রোসফ্ট, আপনার অযথা অসম্পূর্ণতা ছাড়াই এটি কতটা বিরক্তিকর পৃথিবী হবে!
এটি আমার মতামত, তবে এই সমস্যাটি 32 বিট কাউন্টার সমস্যার কারণে, আজ বেশিরভাগ ওএস 64 বিট (কমপক্ষে bit৪ বিট কম্পিউটারে) সময় পরিচালনা করতে আপডেট করা হয়, তাই আমি অনুমান করি যে সমস্ত ওএস এবং সফ্টওয়্যার একটি দীর্ঘ প্রস্তুত থাকবে 2038 এর আগে সময়, 2020 বলুন So সুতরাং আপনার কেবল তখনই সমস্যা হতে পারে যদি 2038 সালে আপনি এখনও 2020 থেকে সফ্টওয়্যারটি চালাবেন
almost প্রায় সব ক্ষেত্রেই সমস্যাটি না হওয়ার কারণ। আমি আশা করি.
প্রথম ওয়াই 2 কে ব্লিটজ চলাকালীন, যেখানে সফ্টওয়্যার এবং হার্ডওয়্যার বিক্রেতাদের তাদের পণ্যগুলি বিক্রি করার জন্য "ওয়াই 2 কে কমপ্লায়েন্ট" হিসাবে প্রত্যয়িত করা হয়েছিল (আমি মনে করি পিসি সংযোগে নেটওয়ার্ক কেবলগুলি ওয়াই 2 কে অনুগ্রহ করে প্রমাণিত হচ্ছে) প্রচুর সংস্থাগুলি সমস্ত কিছুর বিশদ নিরীক্ষণ করেছিলেন , ভবিষ্যতে ঘড়ি সেট করে এবং পরীক্ষা করে।
সেই সময়, পরীক্ষার ব্যয়টি এত বেশি থাকায় তারা প্রায় সবসময় বিভিন্ন তারিখের সাথে পরীক্ষিত হয় যেমন 1/1/99 (কিছু বিকাশকারী প্রেরিত হিসাবে 99 ব্যবহার করতে পারেন), 12/31/99, 1/1 / 00, 2000, 1/19/38 এবং আরও অনেকের লাফালাফি। ক্লান্তিকর তালিকা জন্য এখানে দেখুন ।
সুতরাং আমি বিশ্বাস করি যে 1999 এর আশেপাশে থাকা কোনও গুরুত্বপূর্ণ সফ্টওয়্যারটিতে সম্ভবত 2038 বাগ থাকবে না, তবে তখন থেকেই অজ্ঞ প্রোগ্রামাররা লিখেছেন নতুন সফ্টওয়্যার। পুরো ওয়াই 2 কে ডিফল্ট প্রোগ্রামাররা সাধারণত ডেট এনকোডিংয়ের বিষয়গুলি সম্পর্কে আরও বেশি সচেতন হয়ে ওঠে তাই ওয়াই 2 কে যতটা প্রভাব ফেলেছিল (এটি নিজেই একটি অ্যান্টিক্লিম্যাক্সের কিছু ছিল) তার পক্ষে এত বড় প্রভাব হওয়ার সম্ভাবনা নেই।
ততক্ষণে এখনও চলছে 32 টি বিট সিস্টেমগুলি একটি সমস্যা হবে।
#include <time.h>
#include <stdio.h>
int main() {
time_t t = (time_t)(1L << (sizeof(time_t)*8 - 9));
printf("%d\n", sizeof(time_t));
}
এটি 9 এর পরিবর্তে 1 হওয়া উচিত তবে সিটিটাইম বড় তারিখটি পরিচালনা করে না:
8 - Sun Jun 13 07:26:08 1141709097
আমার সিস্টেমে (bit৪ বিটের অবশ্যই) সময় আরও 1 মিলিয়ন বছর ধরে চলতে পারে। সমাধানটি হ'ল সিস্টেমগুলি b৪ বিটে আপডেট করা।
ধরা হচ্ছে প্রোগ্রামগুলি এটি পরিচালনা করতে পারে না handle বিশেষত পুরাতন, নিয়মিত এবং রক্ষণাবেক্ষণ করা হয় না। দেবগণ সত্য অনুসরণ করতে অভ্যস্ত:
int
এর 32 বিট (প্রকৃতপক্ষে তারা অন্যদের মধ্যে its৪ বিট সিস্টেমে 32 বিট হিসাবে সংরক্ষণ করা হয় কারণ ধারণা করা হয়েছিল যে তারা সর্বদা 32 বিট থাকে)time_t
) নিরাপদে কাস্ট করা যায়int
জনপ্রিয় এফএলএসএস সফ্টওয়্যারগুলিতে উভয় জিনিসই সম্ভবত 'অনেকের চোখ' পর্যালোচনার মাধ্যমে পাবেন না। কম জনপ্রিয় এবং যথাযথ উপর এটি অবিরাম লেখকের উপর নির্ভর করবে।
আমি অনুমান করি যে ফ্রি * নিক্স ওয়ার্ল্ডে 2038 'অযৌক্তিক' হবে যখন আমি "যথাযথ" প্ল্যাটফর্মগুলিতে সমস্যা (যেমন প্রচুর সংখ্যক যথাযথ সফ্টওয়্যারযুক্ত) সমস্যাগুলি আশা করব - বিশেষত যদি কিছু ক্রুশিয়াল অংশটি বজায় না থাকে।
time_t
(বা সমমানের) 32 বিট ওএসে 32 বিট থাকে যখন time_t
(বা সমমান) 64৪ বিট ওএসে 64৪ বিট থাকে have আমি ভেবেছিলাম নির্দিষ্ট সরলীকরণের সাথেও এটি যথেষ্ট পরিস্কার।
যদি এটি Y2K এর মতো কিছু হয় তবে কিছু লোক ইতিমধ্যে প্রভাবিত হয়েছে এবং সফ্টওয়্যার পরিবর্তন করছে তবে বেশিরভাগ বিকাশকারীরা 2030 এর দশক পর্যন্ত সম্ভবত 2035 বা তার কিছুক্ষণ অবধি এটিকে এড়িয়ে যাবেন, যে পর্যায়ে অনেক কাজ হবে, এবং যথেষ্ট বয়স্ক যে কেউ কেএন্ডআর সি জানতে এবং এখনও খুব বুদ্ধিমান না হঠাৎ হ'ল প্রচুর অর্থের জন্য চুক্তি করতে সক্ষম হবে। প্রকৃত রূপান্তরটি এখনও অনেক কিছু না করে দেখায়, সম্ভবত এতটা গুরুত্বপূর্ণ কিছু নয়।
Y2K সমস্যাটি ছিল চারটির পরিবর্তে বছরের প্রতিনিধিত্বকারী দুটি চার্টার।
অনেক ব্যবস্থার মধ্যে ১৯০০ থেকে ২০০ পার্থক্য করার কোনও উপায় ছিল না কারণ তারা কেবল '00' সংরক্ষণ করেছিল।
প্রায় সমস্ত সিস্টেমে এখন বছর সংরক্ষণের জন্য 4 টি চর ব্যবহার করা হয়, বা তারা কোনও ধরণের লাইব্রেরি ব্যবহার করে।
সুতরাং এর পরিবর্তে সকলকে 10000 (Y10K) সম্পর্কে উদ্বেগ জানাতে দিন। ওএস এবং গ্রন্থাগারের লেখক ব্যতীত ...