2011-09-08 9 views
1

私のホストマシンはVirtualbox経由でWindows XPゲストを使用しているUbuntuを実行しています。Pyserialで動作するようにVirtualboxでシリアルポートを設定します。

私のUbuntuのホスト1つのシリアルポート(は/ dev/ttyS0の)持っている、そして今、私はUbuntuの上で私のUbuntuホスト

にシリアルポート(COM0)を経由して&レシーブデータを送信するためにXPのゲスト内でハイパーターミナルを使用したいですホスト私はpyserialを使用して&をXPゲストに書き込む。

この場合のVirtualBoxの設定方法は?

ありがとうございます!

答えて

0

ホストとゲストOSで同じシリアルポートを使用していると思います。 もしそうなら、あなたはできません。

ゲストOSシリアルポートを実際のシリアルポートにバインドし、ホスト上の別のシリアルポート(ヌルモデムケーブルで接続)を使用するか、ホスト上でソケットを使用する必要があります。このソケットはVirtualBoxの(http://www.virtualbox.org/manual/ch03.html#serialports)によって作成された:マック、LinuxまたはSolarisホスト上で

、ローカルドメインソケットが使用されている 代わりに。ソケットファイル名は、 VirtualBoxを実行しているユーザーが作成して書き込むのに十分な特権を持つように選択する必要があります。多くの場合、 /tmpディレクトリが適しています。

Linuxには、ローカルドメイン ソケットに接続するか、サーバーモードで作成するためのツールがあります。最も柔軟なツールはsocat であり、多くのディストリビューションの一部として利用できます。

この場合、LinuxホストではPySerialを使用できません。 ゲストOSでは、PySerialは正常に動作しますが、仮想シリアルポートはゲストOSと同じように見えます。

関連する問題