ウェブサイト検索

LinuxはWindowsのEXEファイルを実行できますか?


Linuxは間違いなくMicrosoft Windowsに対する最高のオープンソースの代替手段ですが、LinuxベースのOSでWindowsプログラムを実行することは可能ですか?

最近WindowsからLinuxに移行したユーザーは、新しいシステムでWindowsアプリやプログラムを実行できるかどうかをしばしば疑問に思います。この答えは、一般的にLinuxに対するユーザーの見方に影響を与えるもので、オペレーティングシステムは使いやすいものであるべきであり、同時に異なるファイル形式を実行するというアイデアを歓迎するものでなければなりません。

その質問への簡単な答えは、はいです。Linux上でEXEファイルやその他のWindowsプログラムを実行することができ、思っているほど複雑ではありません。

最後までには、実行可能ファイルについての簡単な理解と、Linux上でそのプログラムを実行するためのさまざまな方法を得ることができるでしょう。

WindowsおよびLinuxの実行可能ファイル

LinuxでEXEファイルを実行する前に、実行可能ファイルが何であるかを知っておくことが重要です。一般的に、実行可能ファイルとは、コンピュータが特定の命令(コードに記載されたもの)を実行するためのコマンドを含むファイルのことです。

他のファイル形式(テキストファイルやPDFなど)とは異なり、実行可能ファイルはコンピュータによって読み取られません。代わりに、システムはそのようなファイルをコンパイルし、その後指示に従います。

一般的な実行可能ファイル形式には次のようなものがあります:

  1. Microsoft Windows上のEXE、BIN、およびCOM
  2. macOSのDMGとAPP
  3. Linux上のOUTおよびAppImage

オペレーティングシステム内の違い(主にシステムコールやファイルアクセス)は、OSが利用可能なすべての実行可能フォーマットをサポートしない理由です。しかし、Linuxユーザーは、Wineのような互換レイヤーソフトウェアや、VirtualBoxのような仮想マシンハイパーバイザーを使用してこの問題を簡単に解決できます。

LinuxでWindowsプログラムを実行する方法

Linux上でWindowsアプリケーションを実行するのは難しいことではありません。Linux上でEXEファイルを実行するさまざまな方法を以下に示します:

互換性レイヤーを使用する

Windows 互換レイヤーは、Linux ユーザーが自分のシステムで EXE ファイルを実行するのに役立ちます。Wine は、Wine Is Not an Emulator の略で、名前通りの人気のある Windows 互換レイヤーです。

エミュレーターや仮想マシンとは異なり、WineはLinuxシステム上で作成されたWindowsのような環境でプログラムを実行しません。代わりに、WindowsシステムコールをそのPOSIXの同等のコマンドに単純に変換します。

全体として、Wineのような互換性レイヤーは、システムコールの変換、ディレクトリ構造の再構築、プログラムに対してOS固有のシステムライブラリを提供する責任があります。

Linux上でWindowsプログラムを実行するためにWineをインストールして使用することは簡単です。インストールが完了したら、次のコマンドを入力してWineを使用してEXEファイルを実行できます:

wine program.exe

Windows専用ゲームをプレイしたいLinuxユーザーは、WineのフロントエンドラッパーであるPlayOnLinuxを選択できます。PlayOnLinuxは、システムにインストールできるWindowsアプリケーションやゲームの詳細なリストも提供しています。

仮想マシン内でWindowsを実行することによって

別の回避策は、仮想マシンを使用してWindowsのEXEファイルを実行することです。VirtualBoxのような仮想マシンハイパーバイザーを使用すると、基盤となるOS内で動作する補助的なオペレーティングシステムをインストールすることができます。

あなたがする必要があるのは、VirtualBox または VMWare のいずれかをインストールし、新しい仮想マシンを作成し、その上に Windows をセットアップすることだけです。そうすれば、仮想マシンを起動して Linux ベースの OS の中で Windows を実行するだけで済みます。この方法で、EXE ファイルや他のプログラムを、通常の Windows 専用コンピュータで行うように実行することができます。

クロスプラットフォームソフトウェア開発は未来です

現在、利用可能なソフトウェアの大部分は、特定のオペレーティングシステムにのみ焦点を当てています。見つけられるアプリのほとんどは、Windows、macOS、Linux、またはこれらのオペレーティングシステムの組み合わせのみに対応しています。一般的なオペレーティングシステムすべてで動作するソフトウェアをインストールする機会はほとんどありません。

しかし、これらすべてはクロスプラットフォーム開発によって変わりつつあります。ソフトウェア開発者は現在、複数のプラットフォームで動作するアプリを構築しています。Spotify、VLCメディアプレーヤー、Sublime Text、Visual Studio Codeは、主要なオペレーティングシステム向けのクロスプラットフォームソフトウェアのいくつかの例です。

関連記事: