ここのところ、Fedora21 – 22 ばっかりを触っていまして、オフィシャルのRaspbian からちょっと離れていました。
で、Raspbian の image も BerryBoot 用に変換しようと思い、見てみると BerryBoot でインストールするオフィシャルの Raspbian は、2015 年の2 月に作成されています。
ん? これはちょっと古いやつですかね?オフィシャルの最新は、リリースノートを見ると、
http://downloads.raspberrypi.org/raspbian/release_notes.txt
2015-05-05:
* Updated UI changes
* Updated firmware
* Install raspberrypi-net-mods
* Install avahi-daemon
* Add user pi to new i2c and spi groups
* Modified udev rules for i2c and spi devices
2015-02-16:
* Newer firmware with various fixes
* New Sonic Pi release
* Pi2 compatible RPi.GPIO
* Updated Wolfram Mathematica
2015-01-31:
* Support for Pi2
* Newer firmware
* New Sonic Pi release
* Updated Scratch
* New Wolfram Mathematica release
* Updated Epiphany::
とやっているようです。なので、変換してiscsi boot に入れてみました。いろんなバージョンを入れ替えできるので、便利です。(と、このときは思っていまいたが、、、)
img 変換の手順はメモしたのを見ながら、やればあんなに苦労したのに、あっさり。手順書っていうのは大切ですね。
恒例のUnixBench は以下のようでした。
======================================================================== BYTE UNIX Benchmarks (Version 5.1.3) System: pi: GNU/Linux OS: GNU/Linux -- 3.18.10v7-aufs -- #1 SMP PREEMPT Wed Apr 1 00:07:44 CEST 2015 Machine: armv7l (unknown) Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968") CPU 0: ARMv7 Processor rev 5 (v7l) (0.0 bogomips) CPU 1: ARMv7 Processor rev 5 (v7l) (0.0 bogomips) CPU 2: ARMv7 Processor rev 5 (v7l) (0.0 bogomips) CPU 3: ARMv7 Processor rev 5 (v7l) (0.0 bogomips) 20:41:56 up 7 min, 2 users, load average: 0.61, 0.18, 0.07; runlevel 2 ------------------------------------------------------------------------ Benchmark Run: 月 7月 20 2015 20:41:56 - 21:10:14 4 CPUs in system; running 1 parallel copy of tests Dhrystone 2 using register variables 3316993.9 lps (10.0 s, 7 samples) Double-Precision Whetstone 554.5 MWIPS (10.0 s, 7 samples) Execl Throughput 491.3 lps (29.9 s, 2 samples) File Copy 1024 bufsize 2000 maxblocks 49985.5 KBps (30.0 s, 2 samples) File Copy 256 bufsize 500 maxblocks 13538.4 KBps (30.0 s, 2 samples) File Copy 4096 bufsize 8000 maxblocks 149986.5 KBps (30.0 s, 2 samples) Pipe Throughput 207549.3 lps (10.0 s, 7 samples) Pipe-based Context Switching 37800.2 lps (10.0 s, 7 samples) Process Creation 1425.8 lps (30.0 s, 2 samples) Shell Scripts (1 concurrent) 1298.1 lpm (60.0 s, 2 samples) Shell Scripts (8 concurrent) 332.3 lpm (60.1 s, 2 samples) System Call Overhead 459612.1 lps (10.0 s, 7 samples) System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 3316993.9 284.2 Double-Precision Whetstone 55.0 554.5 100.8 Execl Throughput 43.0 491.3 114.2 File Copy 1024 bufsize 2000 maxblocks 3960.0 49985.5 126.2 File Copy 256 bufsize 500 maxblocks 1655.0 13538.4 81.8 File Copy 4096 bufsize 8000 maxblocks 5800.0 149986.5 258.6 Pipe Throughput 12440.0 207549.3 166.8 Pipe-based Context Switching 4000.0 37800.2 94.5 Process Creation 126.0 1425.8 113.2 Shell Scripts (1 concurrent) 42.4 1298.1 306.1 Shell Scripts (8 concurrent) 6.0 332.3 553.8 System Call Overhead 15000.0 459612.1 306.4 ======== System Benchmarks Index Score 174.7 ------------------------------------------------------------------------ Benchmark Run: 月 7月 20 2015 21:10:14 - 21:39:00 4 CPUs in system; running 4 parallel copies of tests Dhrystone 2 using register variables 12869914.9 lps (10.0 s, 7 samples) Double-Precision Whetstone 2212.6 MWIPS (10.0 s, 7 samples) Execl Throughput 1143.7 lps (29.9 s, 2 samples) File Copy 1024 bufsize 2000 maxblocks 69133.5 KBps (30.0 s, 2 samples) File Copy 256 bufsize 500 maxblocks 18287.4 KBps (30.0 s, 2 samples) File Copy 4096 bufsize 8000 maxblocks 220513.0 KBps (30.0 s, 2 samples) Pipe Throughput 802846.4 lps (10.0 s, 7 samples) Pipe-based Context Switching 139871.0 lps (10.0 s, 7 samples) Process Creation 3197.1 lps (30.0 s, 2 samples) Shell Scripts (1 concurrent) 2636.1 lpm (60.1 s, 2 samples) Shell Scripts (8 concurrent) 347.5 lpm (60.3 s, 2 samples) System Call Overhead 1719885.8 lps (10.0 s, 7 samples) System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 12869914.9 1102.8 Double-Precision Whetstone 55.0 2212.6 402.3 Execl Throughput 43.0 1143.7 266.0 File Copy 1024 bufsize 2000 maxblocks 3960.0 69133.5 174.6 File Copy 256 bufsize 500 maxblocks 1655.0 18287.4 110.5 File Copy 4096 bufsize 8000 maxblocks 5800.0 220513.0 380.2 Pipe Throughput 12440.0 802846.4 645.4 Pipe-based Context Switching 4000.0 139871.0 349.7 Process Creation 126.0 3197.1 253.7 Shell Scripts (1 concurrent) 42.4 2636.1 621.7 Shell Scripts (8 concurrent) 6.0 347.5 579.2 System Call Overhead 15000.0 1719885.8 1146.6 ======== System Benchmarks Index Score 406.7
まぁ、OS が変わったからといって劇的に変化があるわけじゃないんですが。
CPUのFREQは、
root@pi:~# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
1000000★root@pi:~# uname -a
Linux pi 3.18.10v7-aufs #1 SMP PREEMPT Wed Apr 1 00:07:44 CEST 2015 armv7l GNU/Linux
root@pi:~#
ん? 今気が付いたんですが、kernel が、BerryBoot のaufs のなんですが?
root@pi:/mnt# lsmod
Module Size Used bycfg80211 366024 0
rfkill 14438 1 cfg80211
snd_bcm2835 17419 0
snd_pcm 68808 1 snd_bcm2835
snd_seq 49800 0
snd_seq_device 4906 1 snd_seq
snd_timer 16630 2 snd_pcm,snd_seq
snd 47011 5 snd_bcm2835,snd_timer,snd_pcm,snd_seq,snd_seq_device
evdev 9303 2
joydev 8397 0
uio_pdrv_genirq 2865 0
uio 7319 1 uio_pdrv_genirq
iscsi_tcp 8496 2
libiscsi_tcp 11808 1 iscsi_tcp
libiscsi 33727 2 libiscsi_tcp,iscsi_tcp
root@pi:/mnt#
root@pi:/mnt#
root@pi:/mnt# cat /proc/modules
cfg80211 366024 0 – Live 0x7f095000
rfkill 14438 1 cfg80211, Live 0x7f08d000
snd_bcm2835 17419 0 – Live 0x7f084000
snd_pcm 68808 1 snd_bcm2835, Live 0x7f06b000
snd_seq 49800 0 – Live 0x7f058000
snd_seq_device 4906 1 snd_seq, Live 0x7f053000
snd_timer 16630 2 snd_pcm,snd_seq, Live 0x7f04a000
snd 47011 5 snd_bcm2835,snd_pcm,snd_seq,snd_seq_device,snd_timer, Live 0x7f037000
evdev 9303 2 – Live 0x7f02b000
joydev 8397 0 – Live 0x7f025000
uio_pdrv_genirq 2865 0 – Live 0x7f021000
uio 7319 1 uio_pdrv_genirq, Live 0x7f01c000
iscsi_tcp 8496 2 – Live 0x7f015000
libiscsi_tcp 11808 1 iscsi_tcp, Live 0x7f00e000
libiscsi 33727 2 iscsi_tcp,libiscsi_tcp, Live 0x7f000000
root@pi:/mnt#
uBoot で BerryBoot のiSCSIが有効になっているカーネルからchrootするときにこれって変えれるんだろうか?
FATフォーマットのconfig.txt は次のようになっています。
disable_overscan=1
start_x=1gpu_mem=128
# Berryboot settings, do not change
initramfs berryboot.img[pi2]
kernel=kernel_rpi2_aufs.imgarm_freq_min=900
arm_freq=1000
core_freq_min=450
core_freq=500
sdram_freq=500
over_voltage=2
[pi1]
kernel=kernel_rpi_aufs.imgcma_lwm=16
cma_hwm=32
cma_offline_start=16
起動しているカーネルは、kernel_rpi2_aufs.img っていうことですね。そのカーネルからルートファイルシステムにchroot する感じだと思うのですが、img 作るときに、/lib/modules/ 配下を入れていないので、こうなるんですかね?
kernel_rpi2_aufs.img の中がどうなっているのか気になりますね。そもそも、raspai がブートする仕組みっていうのがどうゆう流れになっているかを把握しないとだめですね。