マジックナンバー (フォーマット識別子)
Unix系オペレーティングシステムには複数の実行形式のバイナリフォーマットがある。a.out、COFF、ELFなどである。Unix系オペレーティングシステムが実行ファイルを実行する際、それがテキストファイルであればシェルスクリプトと見なしてシェルを呼び出し(さらにシェルは、そのファイルが「#!」で始まっていればそれに後続して示されるアプリケーションを呼び出し)、そうでない場合はその実行ファイルを前述のようなバイナリ形式であると判断して直接呼び出すが、この際のファイル形式の判断にもマジックナンバーが用いられている。
このような仕組みから、Unix系オペレーティングシステムでは起動方法を切り替える仕組みをフックすることで、初期状態ではサポートされていないファイル形式の実行バイナリを実行することも可能となっている。例えば、BSD系での互換レイヤー(Linux互換レイヤーやSVR4互換レイヤーなど)、BSD系でのWin32カーネル互換パッケージの PEACE などは、この機能の実現例である。これが実現可能であるのは、マジックナンバーやマジックナンバーに後続するフラグ類によって判断しているからである。
BSD系もLinuxもELFバイナリが用いられており、マジックナンバーは 「7F ELF」と共通であるが、両者を区別可能なオプションとして、7バイト目にどのオペレーティングシステム向けのELFバイナリであるかが格納されている。例えば、FreeBSDであれば「09」、NetBSDであれば「02」、Linuxであれば「03」などである。