このページの本文へ

2007年02月23日更新

IT特有の時間経過の概念を理解しよう

 IT関連の仕事をしていると、さまざまな「時間の単位」に出くわす。時間の単位を表すIT英単語には、どのようなものがあるのか。主な言葉を挙げてみた。

microsecond マイクロ秒
millisecond ミリ秒
second
minute
hour 時間
hourly 1時間ごとに
day
daily 1日ごとに
week
weekly 1週間ごとに
month
monthly 1カ月ごとに
year
yearly 1年ごとに

 これらのほかに、各国の時差に関わる「GMT(Greenwich Mean Time=グリニッジ標準時)(注1)や「JST(Japan Standard Time=日本時間)、「local time(現地時刻)」といった言葉もある。

注1:GMT(Greenwich Mean Time)
イギリスのグリニッジ天文台での天体観測を元に決められる時刻

 次に、コンピュータがどのように時間を計っているのかを確認しよう。コンピュータは時間経過の算出に「秒」だけを用い、基本的に数値の増減という形で表現する。基点となる日時に対して、何秒の加算あるいは減算という方法で時間を計っているのだ。たとえば、UNIXやその互換OSの多くは、「3月4日10時20分15秒」といった日付や時刻を算出するために、基点を「1970年1月1日00時00分00秒(GMT)」とし、ここから何秒経過しているかを加算・減算して表している。これが「UNIX時間」だ。たとえば「3月1日10時20分15秒から3日後」という場合、人間であれば「3月4日10時20分15秒」とピンポイントで認識するところを、コンピュータは「3月1日10時20分15秒に25万9200秒(3日×24時間×60分×60秒)を加算」と認識し、日付を算出しているのである。

 しかし、多くのUNIX時間は32ビット符号付き整数で表しているため、上限値である21億4748万3647秒が経過した2038年1月19日、日本時間12時14分07秒(世界標準時間03時14分07秒)以降は、正しい計算ができなくなる可能性のある「2038年問題」が懸念されている。そのため最近のOSでは64ビット符号付き整数(上限は922京3372兆0368億5477万5807=西暦3000億年弱)で表すようになっている。これは宇宙の歴史の20倍ほどなので現時点では十分とされている。

 このようにUNIX時間は、もともとは何桁もの数字の羅列なので、コンピュータは人間に分かりやすくするために「◎月△日×時□分凸秒」といったdate(日付)に当てはめて表示している。冒頭に挙げた「時間の単位」を意味するIT英単語は、コンピュータが算出した秒単位の時間経過を人間に分かりやすく伝えるためのフォーマットなのだ。そうした便宜的な言葉であるものの、日常生活でもよく使うので文脈に登場しても読み流してしまいやすい。しかし、IT英語における時間の単位は、あくまでも表現上のものであることを忘れてはならない。

IT特有の時間経過の概念を理解しよう

Illustration:Aiko Yamamoto

キャリア連載バックナンバー
今さら聞けないIT英語

記事一覧へ >>

採用を勝ち取る転職必勝マニュアルバナー

おすすめ連載

組み込み系エンジニア特集

今さら聞けないIT英語

エンジニアライフ

資格試験対策

プロマネ・スキル

ビジネススキル

独立起業事例集

キャリア・コーナー紹介