0

まずchmod +x、以下のファイルに強制的にアクセスし、Linux で PNG ファイルを実行しようとすると、次のようなエラーが発生しました。

: command not found.png: line 1: ‰PNG
./default_1920x1200.png: line 2: : command not found
IHDR€0Wö: command not foundne 3:
./default_1920x1200.png: line 4: OiCCPPhotoshop: command not found
./default_1920x1200.png: line 4: *!: command not found
./default_1920x1200.png: line 5: Øä!¢Žƒ£ˆŠÊûá{£kÖ¼÷æÍþµ×: command not found
./default_1920x1200.png: line 5364: warning: here-document at line 9 delimited by end-of-file (wanted `+À¾xÓ
                                                                                                           ÀM›À0‡ÿêB™\€„Àt‘8€@zŽB¦@F€&S `ËcbãP-`æÓ€WW.(ÎI+6aaš@.Ây™24àóÌ ‘àƒóýxήÎÎ6Ž¶_-ê¿ÿbbãþåÏ«p@át~Ñþ,/³€;€mþ¢%îh^

しかし、JPGまたはBMPファイルを実行しようとすると、次のような通常のエラーが発生する可能性があります

-bash: ./s_x-r.bmp: cannot execute binary file

では、Linux カーネルはどのようにファイルを実行するのだろうか?

4

1 に答える 1

3

これは、 execve(2)のマニュアル ページに正確に記載されています。

内部のbinfmt_miscディレクトリを介して追加の方法を登録できます/proc/sys/fs/

(デスクトップには、クリックしたときにアプリケーションを「実行」する別の方法がある場合があります)

于 2012-04-04T17:00:30.930 に答える