高速にランダムなバイト列を生成するコマンドが欲しかったのでRDRAND命令を使って作ってみた。
https://github.com/SUZUKI-HIRONOBU/rdrand
RDRAND命令に関しての詳しい説明はインテルのサイトにあるので、そちらをじっくり読んで欲しい。
日本語訳バージョン
高速にランダムなバイト列を生成するコマンドが欲しかったのでRDRAND命令を使って作ってみた。
https://github.com/SUZUKI-HIRONOBU/rdrand
RDRAND命令に関しての詳しい説明はインテルのサイトにあるので、そちらをじっくり読んで欲しい。
日本語訳バージョン
Ubuntu 16.04 LTS でカーネルが 4.4.0-143 になったらVirtualBoxがブートしなくなった。出ているメッセージは次の通り。
Kernel driver not installed (rc=-1908) The VirtualBox Linux kernel driver (vboxdrv) is either not loaded or there is a permission problem with /dev/vboxdrv. Please reinstall the kernel module by executing /sbin/vboxconfig as root. where: suplibOsInit what: 3 VERR_VM_DRIVER_NOT_INSTALLED (-1908) - The support driver is not installed. On linux, open returned ENOENT.
しかも/sbin/vboxconfigを動かしても途中でエラーになる。エラーログを見てみるとこんな具合なコンパイルエラーメッセージが出ていた。
/tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:1113:18: error: too many arguments to function ‘get_user_pages’
rc = get_user_pages(pTask, /* Task for fault accounting. */
^
マジでガチなコンパイルエラーである。ソースコードをみても何をどうしていいかわからない。そこで森羅万象なんでも知っているGoogleにキーワードをぶちこんで検索してみると、こんなページが出てきた。
Kernel 4.4.172 Breaking Some Application
https://slackblogs.blogspot.com/2019/02/kernel-44172-breaking-some-application.html
このページと同じ要領で修正した。もちろん、カーネルバージョンを4.4.143にしている。
修正後、/sbin/vboxconfig を動かすと問題なく終了し、無事、VirtualBoxが立ち上がった。この参考にしたブログエントリーを書いてくれた Willy Sudiarto Raharjo さんに感謝!
Raspberry PiにUSBメモリを挿してパーティションを改めて切り直し、そこをJFSファイルシステムにして/homeにマウントして使う。
AdafruitのRiRTCを入れてRTCで時間を管理してみた。
使ったハードウェアとソフトウェアは次の通り。
RASPBERRY PI 3 MODEL B+
https://www.raspberrypi.org/products/raspberry-pi-3-model-b-plus/
RASPBIAN STRETCH WITH DESKTOP AND RECOMMENDED SOFTWARE
Image with desktop and recommended software based on Debian Stretch
Version:November 2018
Release date:2018-11-13
Kernel version:4.14
Release notes:Link
https://www.raspberrypi.org/downloads/raspbian/
Adafruit PiRTC - PCF8523 Real Time Clock for Raspberry Pi
https://www.adafruit.com/product/3386