2016年7月7日木曜日

Raspberry Pi Zeroを使っていて気がついた事

2台目のRaspberry PiとなるZeroが届いて色々イジリ倒してるのですが、Raspbianを操作してる限りではRaspberry Pi 2との差をあまり感じません。
やはりサイズの小ささと価格が最大の魅力ですね♪
RaspbianからApache HTTP Serverが消えたわけ
Raspberry Pi 2で使っているRaspbianを最新バージョンのイメージファイルでクリーンインストールしなおし、そこに差分を当てる形でリフレッシュしました。
その作業で旧バージョンと異なる部分があったのですが、その中でも一番気になったのが

Apache HTTP Serverが入っていない

Apache HTTP Serverのドキュメントデフォルトディレクトリが/var/wwwから/var/www/htmlに変更されたり、セキュリティが見直されて動いていたものが動かなくなったりという事がありました。
また、大抵のサイトで解説してるapt-get update→apt-get upgradeというパッケージを最新状態にするコマンドもインストールされるライブラリの不整合で動かなくなる不具合があったので、環境が安定するまでアップデートを行わずに静観していました。
それが、OSのクリーンインストールではじめてデフォルト環境の変更を知ったので疑問に感じていたのです。

その疑問が解けたのがRaspberry Pi Zeroでした。
Raspberry Pi ZeroにはLANに繋ぐ手段が標準で付いていません。これはRaspberry Piシリーズの中でこの機種とCompute Moduleのみ。
Compute Moduleは用途が特殊なので例外として、低価格で入門用としても最適なRaspberry Pi Zeroの登場でハードウェア環境に合わせてOSのデフォルトインストール済パッケージも見直されたのだろうと、Raspberry Pi Zeroを触りだしてから気が付きました。
USB3.0 有線LANアダプタでも使える
Raspberry Pi Zeroに搭載されているUSBはUSB2.0です。
今回、Raspberry Pi Zeroで使ったアダプタはLogitec LAN-GTJU32という1000BASE-T対応のUSB3.0用を使いました。
普段はLenovo G580 26897JJで使っているのですが、使えたらラッキー程度で試しに接続してみたら特別な設定をする事なく使えました。
USB3.0の論理速度は5Gbps、USB2.0の論理速度は0.48Gbps。
100BASE-Tの論理速度は0.1Gbps、1000BASE-Tの論理速度は1Gbps。
早い話、USB2.0なら1000BASE-Tのほうが理論上は通信速度が速い事になります。
それじゃ実際どうなのか?ということで、Raspberry Pi 2+内蔵有線LANとRaspberry Pi Zero+Logitec LAN-GTJU32で、speedtest-cliを使って測定してみました。



シングルコアあたりの処理能力はほぼ同じRaspberry Pi ZeroとRaspberry Pi 2。
通信速度差はLANアダプタの差と思って良いでしょう。
Raspberry Pi 2は内蔵LANが100BASE-Tのため実測値として妥当な数字です。
一方、Raspberry Pi Zeroは1000BASE-TのアダプタをUSB2.0接続にしてるため最大論理値は480Mbpsとなります。
バックグラウンドで他のプロセスが実行されたシングルコアCPUにも関わらず、DLが100Mbpsを超えたのは大健闘でしょう。

スマホにもUSB3.1+USB TypeCコネクタの流れがきている今日このごろ。
Raspberry Piは、そんなスマホの発展によって成長した技術に支えられて低価格が実現したコンピュータです。
最新のRaspberry Pi 3は64ビットCPUや無線LAN&Bluetoothが搭載され益々スマホに近いスペックになっています。
今後の発展がとても楽しみです。