فناوری اطلاعات

February 3, 2026
10:53 سه شنبه، 14ام بهمنماه 1404
کد خبر: 211557

اول ژانویه؛ سالروز آغاز زمان در جهان دیجیتال

منبع: ایسنا

از اول ژانویه ۱۹۷۰ تا امروز، تمام رایانه‌ها و گوشی‌های جهان زمان را با یک شمارنده ساده می‌سنجند: تعداد ثانیه‌هایی که از یک لحظه ثابت گذشته است. تصمیمی مهندسی در آزمایشگاه‌های بل که با گذشت ۵۶ سال، هنوز پایه‌ درک زمان در دنیای دیجیتال است.

تمام رایانه‌ها، تلفن‌های هوشمند و سرورهای در جهان، زمان را به یک روش اندازه‌گیری می‌کنند به‌صورت تعداد ثانیه‌های سپری‌شده از ساعت ۰۰:۰۰:۰۰ به وقت ساعت هماهنگ جهانی (UTC) که از نخستین روز ژانویه ۱۹۷۰ آغاز شده است. این لحظه با نام «مبدا یونیکس» (Unix epoch) شناخته می‌شود و پایه و اساس درک زمان برای دستگاه‌های دیجیتال است.

چرا اول ژانویه ۱۹۷۰ به عنوان مبدا انتخاب شد؟ پاسخ این پرسش به توسعه سیستم‌عامل یونیکس در آزمایشگاه‌های بل در اوایل دهه ۱۹۷۰ بازمی‌گردد.

به نقل از یوتی‌سی تایم، وقتی کن تامپسون و دنیس ریچی در حال ساخت یونیکس بودند، به روشی ساده برای نمایش تاریخ و زمان نیاز داشتند. به‌جای ذخیره تاریخ‌ها به‌صورت ترکیب‌های پیچیده‌ای از سال، ماه، روز، ساعت، دقیقه و ثانیه، آن‌ها تصمیم گرفتند از یک عدد واحد استفاده کنند: تعداد ثانیه‌ها از یک نقطه ثابت در زمان.

انتخاب اول ژانویه ۱۹۷۰ تصادفی نبود. توسعه‌دهندگان یونیکس به یک تاریخ «نسبتا جدید» نیاز داشتند که:

رُند و به‌یادماندنی باشد: اول ژانویه یک سال رُند
به اندازه کافی جدید باشد: آن‌قدر قدیمی نباشد که بیت‌ها را هدر دهد
به اندازه کافی قدیمی باشد: بتواند تاریخ‌های پیش از ساخت یونیکس را پوشش دهد
کاربردی باشد: نزدیک به زمانی که آن‌ها واقعا روی سیستم کار می‌کردند، باشد
سال ۱۹۷۰ انتخابی عالی بود، زیرا توسعه یونیکس در سال‌های ۱۹۶۹ تا ۱۹۷۰ آغاز شده بود و این سال یک عدد رُند و نزدیک به زمان توسعه محسوب می‌شد. توسعه‌دهندگان می‌توانستند سال ۱۹۰۰ یا ۱۹۵۰ را انتخاب کنند، اما این کار در دورانی که حافظه بسیار محدود بود، بیت‌های ارزشمند را هدر می‌داد.

این سیستم چندین مزیت داشت:

سادگی: محاسبات زمانی به حساب و کتاب ساده تبدیل می‌شود. برای یافتن اختلاف زمان بین دو رویداد، فقط کافی است برچسب‌های زمانی آن‌ها را از هم کم کنید.
کارایی: ذخیره زمان به ‌صورت یک عدد صحیح بسیار کارآمدتر از ذخیره جداگانه سال، ماه، روز و غیره بود.
جهان‌شمولی: زمان یونیکس همیشه بر اساس ساعت هماهنگ جهانی است و از پیچیدگی‌های مربوط به منطقه‌های زمانی در هسته سیستم جلوگیری می‌کند.
با این حال، این سیستم یک مشکل مشهور نیز ایجاد کرد: مشکل سال ۲۰۳۸.

مشکل سال ۲۰۳۸ چیست؟

در سیستم‌هایی که هنوز زمان را با عدد صحیح ۳۲ بیتی نگه می‌دارند، شمارنده‌ «تعداد ثانیه‌های گذشته از یک ژانویه ۱۹۷۰» فقط تا یک عدد مشخص می‌تواند بالا برود. بیشترین عددی که یک عدد صحیحِ علامت‌دار ۳۲ بیتی می‌تواند نگه دارد، ۲,۱۴۷,۴۸۳,۶۴۷ است.

وقتی تعداد ثانیه‌ها از این مقدار بیشتر شود، دیگر جا برای ادامه‌ شمارش وجود ندارد و اصطلاحا عدد «سرریز» می‌کند؛ یعنی به‌جای این‌که به عدد بعدی برود، ناگهان به یک عدد منفی می‌پرد.

در روز ۱۹ ژانویه سال ۲۰۳۸، ساعت ۰۳:۱۴:۰۷ به وقت ساعت هماهنگ جهانی، برچسب‌های زمانی یونیکس ۳۲ بیتی سرریز (overflow) خواهند شد. این مقدار به یک عدد منفی تبدیل می‌شود و ممکن است سیستم‌ها تصور کنند تاریخ، ۱۳ دسامبر ۱۹۰۱ است. این مشکل هر سیستمی را که هنوز از اعداد صحیح ۳۲ بیتی برای زمان استفاده می‌کند، تحت تأثیر قرار می‌دهد.

خوشبختانه، بیشتر سیستم‌های مدرن به برچسب‌های زمانی ۶۴ بیتی تغییر کرده‌اند که تا حدود ۲۹۲ میلیارد سال آینده سرریز نخواهند شد و این زمان بسیار فراتر از زمانی است که خورشید برای همیشه خاموش خواهد شد.

مبدأ یونیکس آن‌قدر بنیادی شده است که بسیار فراتر از سیستم‌های یونیکس استفاده می‌شود. ویندوز، macOS، لینوکس، اندروید، iOS و تقریبا هر زبان برنامه‌نویسی از زمان یونیکس درونی استفاده می‌کنند، حتی اگر تاریخ را به شکل متفاوتی به کاربر نمایش دهند.

چند نقطه عطف جالب در برچسب زمانی یونیکس

در روز ۹ سپتامبر سال ۲۰۰۱ برچسب زمانی یونیکس به ۱,۰۰۰,۰۰۰,۰۰۰ رسید که توسط برنامه‌نویسان در سراسر جهان جشن گرفته شد.

در روز ۱۳ فوریه سال ۲۰۰۹ این برچسب زمانی به عدد ۱,۲۳۴,۵۶۷,۸۹۰ رسید.

در روز ۱۴ ژوئیه سال ۲۰۱۷ این عدد به ۱,۵۰۰,۰۰۰,۰۰۰ رسید و در روز ۱۸ مه سال ۲۰۳۳ به ۲,۰۰۰,۰۰۰,۰۰۰ می‌رسد.

امروز، وقتی زمان را روی هر دستگاه دیجیتالی بررسی می‌کنید، در واقع ترجمه‌ای قابل‌فهم برای انسان از تعداد ثانیه‌هایی را می‌بینید که از آن لحظه که بیش از ۵۰ سال پیش توسط توسعه‌دهندگان یونیکس انتخاب شد، گذشته است. اول ژانویه ۱۹۷۰، ساعت ۰۰:۰۰:۰۰ به مهم‌ترین لحظه در تاریخ محاسبات تبدیل شد نه به این دلیل که اتفاق مهمی در آن زمان رخ داده، بلکه چون به‌عنوان نقطه شروع اندازه‌گیری تمام زمان دیجیتال انتخاب شده است.

شگفت‌آور است که یک تصمیم مهندسی ساده که در اوایل دهه ۱۹۷۰ گرفته شد، همچنان تعیین می‌کند که میلیاردها دستگاه در سراسر جهان چگونه زمان را درک می‌کنند؛ و مبدأ یونیکس را به یکی از ماندگارترین و تأثیرگذارترین استانداردهای فنی تاریخ تبدیل کرده است.

  • مشترک شوید!

    برای عضویت در خبرنامه روزانه ایستنا؛ نشانی پست الکترونیکی خود را در فرم زیر وارد نمایید. پس از آن به صورت خودکار ایمیلی به نشانی شما ارسال میشود، برای تکمیل عضویت خود و تایید صحت نشانی پست الکترونیک وارد شده، می بایست بر روی لینکی که در این ایمیل برایتان ارسال شده کلیک نمایید. پس از آن پیامی مبنی بر تکمیل عضویت شما در خبرنامه روزانه ایستنا نمایش داده میشود.

    با عضویت در خبرنامه پیامکی آژانس خبری فناوری اطلاعات و ارتباطات (ایستنا) به طور روزانه آخرین اخبار، گزارشها و تحلیل های حوزه فناوری اطلاعات و ارتباطات را در هر لحظه و هر کجا از طریق پیام کوتاه دریافت خواهید کرد. برای عضویت در این خبرنامه، مشترکین سیمکارت های همراه اول لازم است عبارت 150 را به شماره 201464 و مشترکین سیمکارت های ایرانسل عبارت ozv ictn را به شماره ۸۲۸۲ ارسال کنند. دریافت موفق هر بسته خبری که محتوی پیامکی با حجم ۵پیامک بوده و ۴ تا ۶ عنوان خبری را شامل میشود، ۳۵۰ ریال برای مشترک هزینه در بردارد که در صورتحساب ارسالی از سوی اپراتور مربوطه محاسبه و از اعتبار موجود در حساب مشترکین سیمکارت های دائمی کسر میشود. بخشی از این درآمد این سرویس از سوی اپراتور میزبان شما به ایستنا پرداخت میشود. مشترکین در هر لحظه براساس دستورالعمل اعلامی در پایان هر بسته خبری قادر خواهند بود اشتراک خود را در این سرویس لغو کنند. هزینه دریافت هر بسته خبری برای مشترکین صرفا ۳۵۰ ریال خواهد بود و این هزینه برای مشترکین در حال استفاده از خدمات رومینگ بین الملل اپراتورهای همراه اول و ایرانسل هم هزینه اضافه ای در بر نخواهد داشت.