2016-11-14 4 views
0

実際のWindowsで仮想化されたUbuntuをセットアップして、2つのアプリケーションがそれらの間で簡単なメッセージをやり取りできるようにするにはどうすればよいですか? VMはオフラインにすることも、インターネットにアクセスすることもできません。実際のシステムはおそらくオフラインです。PythonがVMウィンドウアプリケーションに通信する

+0

おそらく1つのアプリがUbuntuとWindows上で動作していますか?最も簡単なのは、共有マウントポイント/ディレクトリを持つことです。ほとんどのVMシステムはそれをサポートしますが、詳細は製品によって異なります。 Ubuntuで作成された名前付きパイプ( 'mkfifo'を参照)を使用できます。どちらのアプリも、名前付きパイプをファイルのように読み書きします。これにより、通信の問題が回避されます。同期の問題を避けるためには、設計前に慎重に設計を行う必要があります。 – cdarke

+0

64ビットマシンを持っていて、それにUbuntuをインストールして実行すると、VMWareやVirtualBox、さらにはHypervのようなものが得られます。udp/tcpを使って通信する場合は、おそらくHostOnly通信を使う必要があります – cup

答えて

1

ホスト< - > Windowsホスト上のVM通信が独立して使用しているハイパーバイザーの、いくつかの方法で実装することができます。

  • ホストのみのネットワーク - ちょうどホストとマシンの静的IPを割り当て、ソケットを使用APIを使用して仮想ネットワーク経由でデータを転送します。大量のデータには適していますが、設定に少し時間がかかります。

  • 仮想COMポート - ソケットAPIを使用したくない場合に、ファイル(Linux VMの場合)/名前付きパイプ(Windowsホストの場合)にデータを書きたい場合。ほとんどゼロの構成を必要とするため、これは簡単ですが、大量のデータではうまく機能しません。

必要に応じて選択してください。

関連する問題