拡張 64 ビット時刻値

LP64 (64 ビット long データとポインター) と呼ばれる 64 ビット・コンピューティング用の POSIX 標準の一部として、z/OS® V1R6 では、ファイル時刻用の time_t データ・タイプが 64 ビットに拡張されました。現行の符号付き 31 ビット・データ・タイプは、2038 年には負になります。 390 システム・クロックは 2042 年に循環するため、STCK フォーマットで時刻を保管する PFS には問題があります。

z/Architecture® には、 現行の 8 バイト・フォーマットの左側に 1 バイトを追加する 128 ビット STCKE があります。 すなわち、5 バイトの「秒数」があり、約 36765 年まで進むことができます。 8 バイトの POSIX 時刻値は、それより遥か先まで進むことができます。 9 バイト時刻フィールド、すなわち、新規 STCKE の左の 8 バイトはどんな実時間でも入れることができ、8 バイト POSIX フォーマット・フィールドは、ユーザーが 設定できるどんな値でも保持することができます。

変更の始まりz/OS UNIX では、次のエポックを処理できない既存の外部時刻フィールドは循環することが可能です。つまり、次のエポックの初期値はゼロになり、これらのフィールド内の値は時間とともに正方向に増加します。これは、4 バイト符号付き POSIX 時刻の場合は 2038年に、符号なし 8 バイト STCK 時刻の場合は 2042 年に開始します。これらのフィールドの多くには、これらの日付で循環しない、個別の対応する時刻 (例えば、8 バイト POSIX 時刻、8 バイトまたは 16 バイト拡張 STCKE 時刻など) が入れられます。変更の終わり