Unixシステムはいつからファイルとディレクトリの作成/生成時間(btime / crtime)をサポートしましたか?

Unixシステムはいつからファイルとディレクトリの作成/生成時間(btime / crtime)をサポートしましたか?

Unixがいつファイルとディレクトリの作成/生成タイムスタンプをサポートするかを知っている人はいますか?可能であれば、最初のファイルマネージャ(GUI)がユーザーにデフォルト値に設定されているときにそれを表示します。

Windows、Unixシリーズ、Linuxと比較:

私は、Windows XP(2001)以降、ディレクトリとファイルがWindowsファイルマネージャ(GUI)に表示されることを実際の経験で知っています。

File Finder 1.0(1984)のシステム0.97(Macintoshシステムソフトウェア)。私はもはやカタログについて知らない。

iOS 11(2017)はファイルアプリを統合し、デフォルトでユーザーにディレクトリとファイルの作成/作成時間を表示します。

たとえば、いくつかのLinuxディストリビューションがあります。

イルカのKDE(2019年基準)。

NemoのLinux Mint(2018年から)。


これらのオペレーティングシステムは現在まで存在しません。

Android 11(2020)

Fedora 33(2020)、Ubuntu 20.10(2020)など、エンドユーザー向けに広く使用されているLinuxディストリビューションです。

答え1

出生タイムスタンプの完全なサポートには3つのコンポーネントがあります。

  • ファイルシステムはそれを保存できるはずです。
  • オペレーティングシステムはそれにアクセスする必要があります。
  • エンドユーザーソフトウェアはそれを表示する必要があります。

Unixの世界には、生成タイムスタンプをサポートするPOSIXスタイルのファイルシステムが少なくとも3つあるようです。

  • UFS2、2003年以降のFreeBSDのデフォルト。
  • ベリタスファイルシステム、別名HP-UXのVxFSおよびJFSは、少なくとも1996年以来HP-UXで使用されています(ただし、その時点で作成されたタイムスタンプをサポートしたかどうかはわかりません)。
  • ZFS、2006年からSolarisで利用可能です。

(生成タイムスタンプをサポートする非POSIXスタイルのファイルシステムにはFATとISO-9660が含まれています。Unixは長い間これらのファイルシステムをサポートしていますが、コアAPIに大きな影響を与えないため、ここでは無視します。)

私が知る限り、HP-UXやSolarisは、stat生成タイムスタンプへのアクセスを提供するスタイルシステムコールを提供しません。 FreeBSDは以下st_birthtimeを提供します。struct stat FreeBSD 5.1から始める;それはstat(1)5.1以降、実装を通じてこれを証明することもできます。

関連情報