Android上のLinux、Androidの下のLinux
先日、会社の同僚の若手と話をしていて、「そもそも、AndroidってLinuxの上で動いてるねんで。Linuxの上に皮を被せてスマホやタブレットなどのOSにしたててるんよ。」と言うと、「え、知りませんでした。」と言われて、えー、知らんのん?え、違ったっけ?若手とは言え、技術系の子なのに。。。もしかして、今はすっかり中身が変わってるの?などと思って、わざわざWikipediaで確認しました。
Android (オペレーティングシステム)の「3 構成」の図
ちゃんと、Linuxの上に載っているような階層図がありました。ですよね。記憶違いかと思いました。
そう、GoogleがAndroidを出して来たときに、そんな、汎用OSをベースにケータイなんて作って、(動作が)重たいんちゃうん、って思っていたことを思い出しました。実際、初めてのスマホは動きがもっさりしていましたね。
今日、こんな記事を書いているのは、以下の記事を読んだから。
Playストアからダウンロードできるもう1つのAndroid上Linux!「UserLAnd」
ここで、また、え、Androidって元々Linuxの上で動いてるもんやん。なのに、「Android上のLinux!」だって。
ま、ひとまず、自分のスマホにインストールしてみて、ログインはしてみたが、、、スマホ上の文字入力だけで使うにはちょっと…なので、キーボードをつないで試してみようと思って、早速、アマゾンでUSB Type-Cのハブを購入。
Androidスマホ(OPPO A5 2020)では認識せず? Androidタブレット(BMAX I10)では認識した。Windows PC(ASUS ZenBook 14)も大丈夫。
あらためて、AndroidタブレットにUserLAndをインストール。
ログイン後、
$ sudo apt update $ sudo apt upgrade $ sudo apt install net-tools $ sudo apt install ssh
など実施。自宅サーバにSSHでログインできた。
ただ、一旦、ディスプレイOFFした後など、USBハブの認識が外れるような感じで、抜き差しなどすると再認識する、というところ。
さて、ここで、UnixBenchというベンチマークプログラムを動かしてみる。Jetson NanoやRaspberry Pi4などと比べてどうかちょっと試してみるということで。
$ sudo apt install git make gcc $ git clone https://github.com/kdlucas/byte-unixbench $ cd byte-unixbench/UnixBench $ ./Run
$ sudo apt install keyboard-configuration $ sudo dpkg-reconfigure keyboard-configuration