質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

4回答

659閲覧

lspciコマンドで表示されるデバイス名にUSB controllerが含まれている理由

toshiyan

総合スコア74

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

0クリップ

投稿2018/08/18 13:08

質問していくうちに、段々と自分が何に混乱しているのかがわかってきました。

PCIというのは接続するための、あの縦長(横長)のインタフェースですよね?それなのに、なぜlspciコマンドでデバイス一覧を表示すると、USB controllerやSATA controllerがあるのかがわからないのです。

lspciのpciとは何なのでしょうか?PCIというインタフェースとはまた別物なのでしょうか?それとも同じものでしょうか?

答えていただけると嬉しいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

ベストアンサー

ハードウェアとして、PCIバスの先にUSBコントローラがつながっているからです。
なんの不思議もありません。。

lspciで出てくるPCIは、PCIバスのことです。
CPUから出てきたPCIバスは、ふたつに分かれていて、ひとつはユーザーが差せるスロットに行きますし、
もう一つはマザーボードの中で使われてUSBコントローラとかSATAコントローラとか、サウンドのチップとかオンボードのビデオコントローラとか、いろんなところにつながっています。

投稿2018/08/18 15:25

yutakau8255

総合スコア99

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

toshiyan

2018/08/18 15:31

わかりやすいよー(泣)PCIは二つに分かれているのですね!だからグラボのバス番号だけが別なのですね。スッキリしました。回答ありがとうございます!!
toshiyan

2018/08/18 15:33 編集

少し気になることがありまして、サウスブリッジというのはどこに存在しているのでしょうか?CPUとPCIバスの間という認識なのですが、合っているでしょうか?
yutakau8255

2018/08/18 15:48

はい、だいたいは合ってると思います。「だいたい」というのは大事で、細かく正確なことを言い出すとめちゃめちゃ説明が難しくなるんですね。このコメントも、もしかしたら専門家のおっさんから難癖がつくかもしれません(笑)。でも、個人的には正確に正しく細かい説明するより、ざくっと言い切っちゃうことの方が大事と思います。そんなこと求められてないし。 サウスブリッジやノースブリッジ、歴史的に経緯がいろいろありますのでもし興味あったら検索してみてください!ここでは正確には書ききれません^^
toshiyan

2018/08/18 15:58

お答え頂きありがとうございます!そういうザックリした回答は好きです。
guest

0

昔の記事ですが、こちらを参考にするとか。

http://www.cqpub.co.jp/dwm/contents/0121/dwm012100230.pdf

用はPCI(E)というのは、そういうプロトコルに従ってツリー状に接続されたデバイス群を指すものなので、「あの横長のインターフェース」というのは、拡張用に増設できるスロットであり、1エンドポイントに過ぎないということかと思います。

実際の機器の接続状況だと、ブロック・ダイアグラム、あるいはアーキテクチャ図として、サーバベンダが公開してたりしますよ。

NECの少し前のサーバで例えばこちらとか。
http://support.express.nec.co.jp/teci/tecbook-pdf/tb171114/rack/AR120g-1E.JPG

今だとチップセット ( 上の例だと Intel C612 https://ark.intel.com/ja/products/81759/Intel-C612-Chipset ) が、USBコントローラ、SATAコントローラ、LAN等のエンドポイント兼スイッチ…、この場合、ルートコンプレックスもでしょうか? そういう存在なわけです。
※最近はチップセット介さずに、CPU直結でPCIE機器を繋げる構成も多いのですが。特に広帯域を要求する機器の場合。

投稿2018/08/18 14:51

angel_p_57

総合スコア1672

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

toshiyan

2018/08/19 01:06

回答ありがとうございます。なかなか難しいです…。
guest

0

バスとは、デバイス同士が情報を交換するための経路となる信号線のことを指します。マザーボード上に直付されたデバイスとCPUが通信する経路も「バス」です。スロットとして外部に拡張されたものだけを「バス」と捉えてしまったのが混乱の元でしょう。

投稿2018/08/18 14:38

keicha_hrs

総合スコア6766

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

toshiyan

2018/08/18 14:53

回答ありがとうございます。混乱はだいぶ収まりました。PCIバスというのは、PCIインタフェースによって接続されたデバイスがCPUやメモリとやり取りするための信号線のことなのですね。 lspciで表示されるものは、「PCIバスに直接繋がれているPCIデバイス」もしくは「PCIブリッジ越しに接続されたPCIデバイス」に限られ、例えばPCIデバイスであるUSBコントローラに接続された、マウスやサウンドドライバなどは含まれないのですね。 あってますか?
keicha_hrs

2018/08/19 03:27

大まかにはそういう認識でいいと思います。
guest

0

投稿2018/08/18 13:13

scsi

総合スコア2840

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

toshiyan

2018/08/18 13:17

SCSIって名前がいいですね。
scsi

2018/08/18 13:35

ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問