web-dev-qa-db-ja.com

Linuxのttys0、ttyUSB0、ttyAMA0の違いは何ですか?

LinuxでのttyS0ttyUSB0ttyAMA0の違いを知りたい。

12
user5671087

ttyS0

これでターゲットに接続したときにホストで得られるもの:

enter image description here

ソース

この移植版は、ほとんどのラップトップまたは小さな開発ボードには存在しませんが、多くのデスクトップにはまだ存在しており、OS開発者にとって非常に便利です。

qemu -device isa-serialでも取得できます。

たとえば、これらのケーブルの1つで2つのデスクトップを接続し、それらの間で直接通信して、自分のリモートデスクトップ上のシェルを取得できます。

ttyUSB0

次のいずれかを使用した場合にホストで得られるもの:

これが、Raspberry PiのGPIOをラップトップ に接続して、画面なしでRaspberry Piにシェルを取得する方法です

enter image description here

そして別のRPIコネクタタイプ:

ソース

での具体的なRPI例:(https://stackoverflow.com/questions/22054578/how-to-run-a-program-without-an-operating-system/32483545#32483545

ttyAMA0

佐藤が言ったARMのこと。

実際のハードウェアではこれに遭遇していません。そうすると写真が投稿されます。私はデスクトップをシリアルポートでRPIにそのインターフェイスで接続できると思います: https://raspberrypi.stackexchange.com/questions/69697/what-is-dev- ttyama0

しかし、私はQEMUでそれを使用しました: https://github.com/buildroot/buildroot/tree/27d7ef126bc7f4eb1a757128466befa11245bbfd/board/qemu/arm-versatile

AMAは [〜#〜] amba [〜#〜] の短縮形のようです? https://www.raspberrypi.org/forums/viewtopic.php?t=8075 しかし、なぜ彼らは4文字の頭字語を短くするのですか?

興味深いLinuxカーネルヒットは次のとおりです: https://github.com/torvalds/linux/blob/v4.16/drivers/tty/serial/amba-pl011.c#L2488 PL011に厳密にリンクされているようです: http://infocenter.arm.com/help/index.jsp?topic=/com.arm .doc.ddi0183g/index.html これは、ARMによってライセンスされたUARTコントローラであり、これが支配的な実装だと思います。

ttySAC0

Kamilが報告した 彼の Samsung Artik 710 なので、コレクションの別の1つ。

  • ttyS0は、最初のUARTシリアルポートx86およびx86_64アーキテクチャ用のデバイスです。シリアルポートを備えたPCマザーボードを使用している場合は、ttySnを使用してモデムまたはシリアルコンソール。
  • ttyUSB0は、最初のUSBシリアルコンバーターのデバイスです。 SBシリアルケーブル を使用している場合は、ttyUSBnを使用してルーターのシリアルポートに接続します。
  • ttyAMA0は、ARMアーキテクチャの最初のシリアルポート用のデバイスです。シリアルコンソールを備えたARMベースのTVボックスがあり、AndroidまたはOpenELECを実行している場合、あなたはttyAMAnを使用してそれにコンソールを接続しています。
12
Satō Katsura