/var/log/hdk.log

2017 年 1 月


01 (日)

%1 元日

謹賀新年

祖父母の家に行く。 エアコンついてて暖かい。 年一回しか会わない!? いとこも来ていた。 正月らしくいろいろ食べていろいろ話してわいわいと。

%2 DELL

Windows 10 が起動しなくなった DELL ノート PC の復旧の前に、ファイルのバックアップ。 インストールディスクで起動しようとしたのにブートメニューに DVD ドライブが出てこないのだ。 初めて見たぞこんなの。 しかし、UEFI ファームウェアは DVD ドライブを認識していそうなので、BIOS Setup 画面からブートオーダーを追加する操作をして、インストールディスクの \EFI\BOOT\BOOTX64.EFI から起動する設定を手動で追加し、それを選択することで起動に成功した。 なんだこのトリッキーなファームウェア... そういえばセキュアブートが云々って言ってたっけ? で、Shift-F10 notepad Ctrl-O のダイアログから必要な部分を [コピー] & [貼り付け] で USB メモリーに転送し、バックアップは完了ということにする。

次に復旧作業。 起きているのは BSoD で 0x21a なのでシステムファイルの破損っぽい。 まずは自動復旧の選択肢からシステムの復元を選択してみたところ、起動しなくなった頃に近い日付で Windows Update をインストールしたところが残っていたのでそれで復元を実行、時間はかかったが成功した。 実際にはその次の日あたりは使えていたのか? 次の日にスリープと復帰を短時間に繰り返したような妙なログが残っていて、このときに起動しなくなったのかな。

で、起動はしたが、なんでこんなことになったかを追求したい。 まずは chkdsk (復元の前にやるべきだったか?)、チェックの必要はありませんと出ていたが、チェックさせるとなんと 10 個くらいのエラーが見つかり、ほとんどはオンライン修復され、残りは再起動後に修正された。 これはいかにもシステムファイルの破損につながりそうなトラブルである。 しかし NTFS でそんなことがあるのか? RAM の不良かと思いメモリーテストを行ったが (今は起動メニューからじゃないんだな!) エラーは見つからず。 もうひとつはイベント ビューアーを見ていたら Intel Rapid Storage のサービスが起動に失敗していたのを発見。 そういえばやたら動作が遅いしなぁ。 インテルの設定ユーティリティーを起動しようとしたら UAC に不明な発行元だと言われる。 今時そんなのあるか!? と思い、アンインストールして、Intel のサイトからダウンロードしてみたところそれはうまくインストールできず、DELL からダウンロードしたものはインストールに成功して正常になった。

そして Windows Update ももう一度やって、起動 OK。 マルウェアで NTFS 破損というのもなかなかないと思うけど、念のため Windows Defender でフル スキャンも実行、すごく時間がかかるけど特に何か見つかっている気配はない。

結局 Intel Rapid Storage が誤動作などしたのかもしれないけど NTFS 破損の原因はわからんなぁ。

2017/01/01 のコメントを読む・書く


02 (月)

%1 振替休日

いとこに会いに行く。

市内で謎の飲み会が開かれると聞きつけて市内に行く。 日豊本線が数分遅れていた。 集まりは同級生・同窓生なのだが謎メンツであった。 偶然にも最後の 2 年間だけ同じ小学校だった同期にも遭遇した。 っていうかマジよく覚えてんなー。

渋谷的感覚でカプセルホテルと思ったらいっぱいなんだな。 風呂って雑魚寝だけはいけた。 安い。

2017/01/02 のコメントを読む・書く


03 (火)

%1 Inspiron 7720

DVD がブートメニューに出てこなくて手で追加した件、まさか公式に同じ手順が載っているとは思わなかった...

UEFI構成で外付けUSBメモリーから起動する | Dell 日本

これ、設定にボリュームシリアル番号などの識別子が入ってしまうはずなで、たぶん別のメディアを入れればまた同じ操作が必要そうな気がするんだが、そうだとしたらなかなか大変な PC だな! 増えるかもとなっているけど今の OptiPlex は GUI の設定画面になっているしもうこういうことにはならないんじゃないかな。

%2 冬休み 3 日目

さすがに雑魚寝はきつくて何度も目覚めたが、耳栓のおかげで雑音はかなり小さくなっており少しは寝られた。 朝もう一度風呂に入って、見るとリクライニングシートが空き始めていたのでそれでもう一度横になった。

映画を見るには微妙な空き時間、天文館のゲームセンターで湾岸ミッドナイトや頭文字 D (プリウス!) など少しプレイして時間をつぶしてから、 合流してラーメン食べて、病院へ祖母のお見舞いに。

片側 2 車線の国道に左折で入った時に偶然逆走したまま信号待ちをしている軽トラに遭遇。 幸い信号が変わっても動かなかったようだし、その後パトカーがそっち方向に向かっていくのが見えたので、事故には至らなかったのだろう。

2017/01/03 のコメントを読む・書く


04 (水)

%1 冬休み 4 日目

去年 Windows 10 をインストールした PC の Outlook の電子メールの設定。 今は電子メールアドレスとパスワードを入れると後は推測してトライしてくれるんだなー。IMAP になったけどまぁいいか的な感じで。

ついでに、Anniversary Update が入っていなかったので更新を適用した。 インストール後のセットアップ画面的なものは出てこなかったが理由は知らない。 そういえば Windows Update で適用したのを見たのは初めてかも知れないので、Windows Update でやれば出てこないものなのかも。 案の定高速スタートアップの設定が元に戻ってしまったので、Windows Vista とのデュアルブートに便利なようにまたチェックを外しておいた。 古い PC ではあるが更新の適用が遅かったくらいでその他の動作はスムーズ、より新しいはずの DELL ノート PC より快適に思えるのは HDD のスピードの差が原因だろうか。

%2 レンタルカート

まほろばの里。4 回乗った。59 秒台は何回か出ていたが 58 秒台は出せていたかなぁ。

腕時計の画面常時表示と手首操作オフでストップウォッチにして、そこから推測なのでタイムはいい加減。 しかし、都城から来ていた人がカメラとタイム計測ができる何かをヘルメットに付けて持参していて、その人がベストタイム 59.7 秒ほどだったそうで、その人にじわじわと近づけていたのでもう少し良かったのかもというところ。 滑らせる・滑らせないで走り方が対照的だったらしい。

%3 ZenWatch

ZenWatch のストップウォッチは背景に色が付いててくっきりさはいまいちだ。 サードパーティーのストップウォッチアプリを入れるか自作したほうがいいかも知れない。 そもそもサーキット走行中のタイム確認という使い方がどうなのよというところはあるが、スマートウォッチなんだから使い方はいろいろ!

Google Maps の地図画面が出てこない症状。ZenWatch では同じ状況の人が他にもいるっぽいのだが解決策は不明。 ナビ用途ではこれはかなり残念。ASUS の問題なのか、Google の問題なのか。

2017/01/04 のコメントを読む・書く


05 (木)

%1 冬休み 5 日目

レンタルカート。 大隅広域公園。3 回乗ってベストタイムは 50.4 秒くらい。 速い人は 48 秒台だというが... わからん... 最終コーナーのひとつ前をピットレーン入り口まではみ出す作戦でも 50 秒台が精一杯。 高いスピードが出るあたりの自分の操作が安定していないのが一因か。

現行 4 代目プリウスのクルーズコントロールは予想通りなかなか優秀。 上り坂でも下り坂でもあまりスピードに差が出ないのはさすがモーター制御。 先代プリウスもそうなんだろうけどクルーズコントロール使用中に乗ったことがなくて。 車間制御は一番長くして 50m なのがちょっと近すぎる感じもするが、センサーの仕様上仕方がないんだろうな。

高校の同期とカラオケ 2 時間半。

415 系はふかふかシートでおしりは痛くないが車体の振動はかなりひどい。 レールの継ぎ目の音に合わせて足でリズムを取りたくなるような揺れっぷり。817 系は薄いシートに突き上げるような揺れでおしりが痛くなるが、振動そのものは 415 系よりマシかもしれない。787 系は快適シートにやわらかサスペンション、高い遮音性で快適そのもの、といっても横揺れは結構ある。

2017/01/05 のコメントを読む・書く


06 (金)

%1 有給休暇

天気予報が外れて朝から雨で寒い。 昼過ぎに晴れてきた。

小林市野尻のイルミネーションを見に行く。 道の駅は豪華だったが国道のほうはそうでもなかったような? 宮崎名物チキン南蛮はおいしかった。

プリウスのヘッドライト自動減光機能 (?) はちょっといまいちかな? 直線とか高速道路はまずまずだけど、カーブの多いところはあまりうまく減光されなかったり、街灯や非常電話の明かりを誤認して減光したままだったりするようだ。

出身小学校の web サイトを見ていたら危険マップ的なものがあって、開いてみると地図に写真などがついて各危険箇所に印がつけられていたのだが、地図が少なくとも 23 年以上前のもので笑ってしまった。 おそらくは昔作ったものをベースに、イメージスキャナーでデータ化したものに付け加えていく形で作られたのだろうが、地図上の各施設の名称が古いわけなので今の住人や教職員にはわからない人も多いのではなかろうか。

2017/01/06 のコメントを読む・書く


07 (土)

%1 3 連休初日

お昼は西洋亭ひろはまへ。

午後は雨。

土産を探しに鹿児島中央駅に寄ったらそこそこ人が多かった。 市内は明日が成人式っぽいし今日帰ってくる新成人もいるんだろうけど、土産コーナーが混んでいるのは別の理由だよなー。

博物館前あたりの国道、片側 2 車線っぽい幅に線が引いてないところをみんな並んで走るのだが、自分の車でないせいか少々走りにくさを感じた。 ミラーや横の窓の見え具合などは、自分の車の自分の調整にすっかり慣れているんだろうな。 自分の車で来たときはそんな風には感じなかったので。 しかしここ、調布あたりの甲州街道の狭いところとさほど幅は変わらないのではないかと思うのだけど、なんで 2 車線にしないんだろうな。 どちらも国道で 10 号と 20 号だし似たもの同士では。(関係ない。)

そうそう、車で通りながら地図を見ると、駅からこっちに来ると中学校か、とか、竜ヶ水駅はガソリンスタンドの裏か、とか、いろいろと発見がある。 長く市内に住んでいたとはいえ、住んでいた頃は自分で車を運転することもなく、数回自転車で行った程度の中心部の地図は頭に入っておらず、西駅から鹿駅にかけての道路は電車通り以外ピンと来ないところも多い。

自宅サーバー PC には SSH と noVNC (HTTPS) で外部から接続できるようにしているが、どちらもクライアント秘密鍵 (証明書) を使用しているため、未設定の端末からは使えずめんどくさいところがある。 ワンタイムパスワード的な何かを導入して、どの端末からも使えるようにしておくといいのかなー。VNC にワンタイムパスワードなんていけるのかな。 あと、noVNC 的な感じで web ブラウザーから使える文字ベースの端末があったらいいよなーという気もする。

2017/01/07 のコメントを読む・書く


08 (日)

%1 3 連休 2 日目

のんびり日曜日。

午前中は雨で午後は晴れといった天気、首都圏は寒かったようだがこっちは暖かかった。

夜の μFM の番組は TOKYO FM とは違うようで、そういえば平原綾香のヒーリング・ヴィーナスもネット局が増えて関西でも聞けるようになったというようなことを言っていたもんな。 ということは全国ネットじゃないんだよな。

Qt の QProcess とやらを使ってプロセス間通信をする方法をおおざっぱに把握して簡単に試した。Qt Creator は本当に昔使っていた Visual Basic を見ているかのようで簡単でよいのだが、非力な PC ではコンパイルに時間がかかるのが残念なところ。

最近知ったけど最近の Emacs って何も入力せずに C-x C-s で空ファイル作成されるんだな。 手元で確認できる限りでは 22 や 23 の頃は (No changes need to be saved) になってファイル作成はされなかった。 何が便利かというと、C-x i でファイルを取り込む時、ファイルが無い状態だと取り込むファイルの文字コードにされてしまうが、空ファイルを作ってからなら文字コードが変換されて取り込まれるので、未だに EUC-JP で構成されているこの日記の編集時によく空ファイル作成という方法を使っているのだった。

2017/01/08 のコメントを読む・書く


09 (月)

%1 3 連休最終日

朝から空港、空港の混雑はそこそこ、東京便は一応満席だったかな? 鹿児島はいい天気、富士山が見えるというあたりから雲に突入してちょっと揺れたが、風のおかげかほとんど遅れなく到着した。 操縦室からの放送が少々ぎこちなくて、『ハッピーフライト』を思い出したw

新型車? のモノレールで浜松町へ、山手線に乗り、東京で乗り換えるつもりだったが、ホーム見て乗車位置いまいちだったかなと思い神田で乗り換え。 かなり前のほうに乗っていたため、東京では階段が近くてエスカレーターやエレベーターは遠かったが、神田ではエレベーターが目の前。 神田は駅構内のつくりもシンプルで迷子にならないし。 正解!

中央線が少し遅れていたせいもあるが、空港から 1 時間半もかかるんだな。 傘を持っていなかったが、移動中に雨はやんだ。 帰って昼寝。

夕方にちょっとバイクを動かしてドラッグストアに行く。 これでバッテリーは大丈夫だな! ちょっと風邪気味なのでのどスプレーを買ってきた。 前から持ってた同じ品だけど期限切れてたし。

2017/01/09 のコメントを読む・書く


10 (火)

%1 かようび

風邪はいかにも風邪っぽい感じで鼻水たらたら、鼻づまり、せき、くしゃみ、などなど。 のどの痛みは多少おさまってきている。 ひどい発熱も関節痛も無いし、インフルエンザではなさそうだ。 たまに少し頭痛がする。

夜はちょっと重たいものは食べないでおこうと思っておかゆを作った。 試しに昆布を入れてみたらちょっと味がついているような感じがする。 なるほど昆布だしか。

%2 eBookJapan

そういえば先月 eBookJapan の ebiReader アプリをタブレット端末にインストールした。 ビッグコミックオリジナルの最近の数冊と AUTOSPORT No.1447 をダウンロードしてある。 飛行機でビッグコミックオリジナルや AUTOSPORT を読んだが、通信環境無しで使えるのもなかなか快適で良い。 画面を横向きにすると「ブラウザ "楽読み"」のように 2 ページ表示にはならず、1 ページが幅一杯に表示される謎仕様だが、AUTOSPORT は字が小さいので、そのほうが読みやすかった。

書籍は通常最大 5 台の端末にダウンロード可能とされ、ダウンロードしたデータを手放すには、削除 (だったかな?) というのとアップロードというのがあるらしい。 アップロードっていったってデータを向こうに送るわけじゃない。 そもそも「ブラウザ "楽読み"」はダウンロードの有無にかかわらずいつでも使えるのである。

なお、書籍をダウンロードした端末があっても、Android 端末の Chrome で購入の際、PC 版サイトを見るモードでは相変わらず未対応端末だと出て蹴られる。 アプリでダウンロードするんだから購入はどの端末からやってもいいだろ! そもそも「ブラウザ "楽読み"」は PC 版サイトを見るモードでも使えるんだからいろいろとおかしい。 ヤフーの子会社になっても、ヤフーアカウントでのログインができるようになったらしいのと一部 HTTPS にならないバグがなおったくらいで、こういう変な仕様は相変わらずである。

2017/01/10 のコメントを読む・書く


11 (水)

%1

きのうは 23 時くらいに早く寝たのに 25 時半にはトイレ起床、再び寝て今朝 5 時だか 6 時だかにトイレ、もう一度寝て 8 時だったかな。 合計ではそこそこの睡眠時間だが...

風邪は、のどの痛みは引き続きある程度落ち着いていて、鼻水が若干黄色くなっている感じ。 あと、立ち上がるなどした時に軽い頭痛が来る。

%2

風邪は、だいぶ良くなってきた感じがするのだが、軽いのどの痛みと鼻づまりは残っている。 また早く寝ないと。

%3 ポケモン GO

ふかそうちボーナスは年明けまであったんだっけ。 帰省中はほとんど歩数が伸びなかったし、毎日ボーナスも時々途絶えていた。

図鑑がいつの間にか拡張されていた。 拡張分のポケモンにどこかで遭遇していたらしいが、記憶に無いぞ?

ボールを使いすぎていたので、バス往復乗ってたくさん集めておいた。

プラスがヨドバシで予約できたと知って、えええっ、ってなった。ZenFone Max みたいな低スペック端末だと、電池持ちは良くて助かるのだが、時折コマ落ちが激しくなって、まともにボールを投げられなかったり、バス移動中にポケストップ逃したりするので、プラスあったらいいだろうなーと思う。 まぁでもそろそろ入手しやすくなってくる頃か。

2017/01/11 のコメントを読む・書く


12 (木)

%1

鼻をかんだら盛大に鼻血が出てうわぁってなった。 風邪は相変わらず、鼻づまりがひどい。

何となく車を動かして近所のバイク用品店の隣の吉野家へ。 地域限定の北海道豚味噌鍋膳を頼んだらちゃんと鍋が火にかかった状態で出てきてへぇー。 さすがにうまいな。 あと吉野家は豚丼やってるんだなという発見。

で、近所のドンキホーテへ。 裏ボアベンチコート的なやつが値引きされていて 2k 円だったので買ってみた。 ついでに LED で光るディジタル壁掛け時計的なのがないかなと思っていたんだけど、やたら明るくて大きいやつが 6k 円くらいして結構いいお値段、っていうかもっと暗くて小さくていいのに...

ドンキホーテをうろうろしてたらのどが超痛くなって参った。 乾燥してたのかな。

そんな感じで近所をぐるっとして戻ったから車のエンジンオイルの状態は最悪かも知れないw 3 回連続でエンジン始動後に冷却水の温度が低いランプがついてたもんな。

ヨドバシで時計を探すと普通の液晶に常時点灯ライト付きのものはあるな。 ただ、電波時計とはいえ 4k 円するんだな。 と思ったけどポチッた。 ビックカメラのポイント余ってたし...

2017/01/12 のコメントを読む・書く


13 (金)

%1 きんようび

テレビでやってた映画『風の谷のナウシカ』。 ほげーっと見てると時々 BGM が昔の FM 音源を使ったシューティングゲームか何かのように思えてくる。 まぁね、1984 年だもんね。 ビデオゲーム的というよりは、当時は FM 音源そのものが世の中に広まった時代と言えそう。 たぶんまだこういうのが新しさを感じさせていた時代だったのだろう。 そのころに生まれた我々の世代だと、1990 年代のビデオゲーム等で良く聞いた音色ということになる。 まぁ PC の世界では、記憶装置の容量増大と Windows の普及であっという間に PCM 音源に置き換わってしまったのであるが、その後、携帯電話の着信メロディー等で慣れ親しんだ世代もあるかも知れない。

%2 UEFI

Driver は Driver Binding Protocol を持つ。Supported() で自分がそのデバイスをドライブできるかどうかを判断し、Start() で開始、Stop() で停止、的なもの。 例えば PCI デバイスなら PCI の入出力に必要なプロトコルはすでに自分のハンドルに登録されているはずで、開始されたらそれを OpenProtocol() して使う。 開始時にはドライバーとして提供できるインターフェイスを InstallProtocolInterface() などで登録し、停止時に登録解除する。

Bus driver は PCI バスのように下にデバイスがぶら下がる系のもの。 開始時に InstallProtocolInterface() などを使ってハンドルを新たに作成するのかな。 親子関係はどうやら bus driver が新たに作ったハンドルに持たせたプロトコルを EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER を使ってオープンしておくというのがポイントなのか。OVMF の EFI Shell の dh コマンドは -d オプションでそのへんの情報を出せるっぽい。

デバイスにドライバーを結びつけるのが ConnectController() っぽい。 これを呼ぶと巡り巡って Start() などにたどり着く、と。

EFI Shell の devtree で見ると同じ「コントローラー」が複数の場所に出ていることに気づく。 例えばシリアルポートと PS/2 キーボードの両方に Primary Console Input Device がいる。 これ、よーく考えたら、シリアルポートや PS/2 キーボードが bus driver な訳はない。 他に、QEMU HARDDISK の下に FAT File System が出ているのも、おそらくディスク入出力のプロトコルを登録しただけで、bus driver ではないだろう。 つまり、何らかのプロトコルを登録した際に外からその子分を登録してきたやつがいると考えられる。 それっぽいのは RegisterProtocolNotify() というのがあって、これでイベントとして受け取ることができるから、それでうまくやっているのかも。

ってな感じのところは最近やっとわかってきたのである。Controller って用語がはっきり定義されていない感じなのが自分的には混乱の元だったのかなと。Device と言いたくなくて controller なのかなぁと。Bus もひっくるめて、ね。

2017/01/13 のコメントを読む・書く


14 (土)

%1 レンタルカート

藤野。3 回乗ってベストタイムは 39.4 秒くらい。

%2 どようび

ビックカメラのポイントでポチッた時計が届いた。 とりあえずスチールラックに引っかけてある。 温度計と湿度計も付いているのでいろいろ参考になりそう。

風邪の症状はもう鼻だけだと思う。 いや、この鼻の症状は先月から続いている鼻づまりの件が悪化しているだけのようにも思える。 鼻水の色も付いていない気がするし。

バイクで藤野まで行ったらクッソ寒かった。 いやマジ本当に寒かった。 アメダス見ると昼頃の時点で府中で 5 度、八王子で 4 度だ。 峠の上のほうはお察しくださいだ。 道は空いていたがとにかく寒かった。 あまりにも寒かったので藤野の中華料理店っぽい定食屋さんの暖かい肉そばがとてもおいしく感じられた。 帰りは寒いからって制限速度守って道を譲りながらのんびり帰ってたら、日が沈んでよけい寒くなった。 幸い凍結箇所は無かった。 燃費は良かった。 アメダスによると 17 時の時点で八王子 1.4 度、府中 1.9 度だ。 手も足も冷え冷え、ヘルメット脱ぐと頭まで冷えた。 めっちゃ寒かった。

テレビでやってた映画『ハッピーフライト』。 フジテレビが関わっている『本能寺ホテル』公開の宣伝に伴うものだ。 なお、『本能寺ホテル』を Google 検索すると「ホテル本能寺」が出てくるが、それは京都のホテルだ。 『ハッピーフライト』はどたばたコメディー的な感じで、飛行機と整備場と空港・管制など、飛行機に関わるあらゆる場所で並行してトラブルが発生していくもので、ANA の全面協力のもと、いろいろと部外者は普段見られない珍しいところがたくさん映っているので、映像も楽しめる。

2017/01/14 のコメントを読む・書く


15 (日)

%1 風邪

本当にのどは回復したな。 鼻も先月の状態に戻ったか。 風邪が治るまで控えていた点鼻薬を使うようにしてみる。

%2 ブラインドスポットモニター

プリウスにブラインドスポットモニターという機能が付いているというのを説明書で知ったが、動作している様子を見る機会が無かった。 ドアミラーの死角に車が入ると光るというのだが、助手席のある左側は片側一車線では光ることは無いし、片側二車線でも左側に車が来ない限り光ることは無いわけで。 それが、クラウンか何かの高級車にも付いているらしく、たまたま動作している様子をきのう見ることができた。 というのは、片側 2 車線の一般道で、自分のバイクの右側にクラウンっぽい車がいる状況になった時に、車の左側のドアミラーの端っこが小さく光っているのが見えた。 位置関係からして、ちょうど、自分のバイクを検知しているようだった。 思っていたより検知範囲が広そうと思ったが、若干反応が鈍いようにも見えて、まぁ横から見ていただけだから細かいことはわからない。

ミラーの死角は車でも確かにあるが (初代ヴィッツより iQ のほうがちょっと死角が広いように感じるのは気のせいか?)、バイクはだいぶ死角が広いように思う。 車はルームミラーで補完できている部分も結構ある感じがする。

%3 アイドリング回転数

偶然気づいたのだが、車のアイドリング回転数について。 冷却水温が上がりきっていない (が冷えている時のランプは消えている) 状態で、エアコンオフで送風ファンのスイッチを入れるとアイドリング回転数が少し上がることがわかった。700rpm 前後を指していた針が 1000rpm あたりまで上がる。 数分走って冷却水がきちんと温まったと思われる頃になれば、この挙動はしなくなる。 おそらく暖房を早くきかせるための仕様なのだろうが、マニュアルエアコンなので温度設定はコンピューターに入力されていないらしく、温度設定にかかわらず上がるようだ。

しかし、この制御に自分が 6 年間気づかなかったのか、それとも、この前の無償修理に伴う ECU のアップデートで制御が変わったのか。 なんとなく後者な気がしている。 というのは、MT 車を静かに発進させる時はエンジンの回転数に敏感なのである。 つまり、この程度の変化に気づかないわけはない (キリッ

といいつつ、今日は外気温表示が 0 度になっていたので、こういう時に車を運転する機会はあんまり無かったかも知れない。

%4 UEFI

試しに Block I/O Protocol を持つデバイスを追加する UEFI ドライバーを実装してみた。

hdk_2 / uefitest - Bitbucket

e.c のほう、これは普通の PCI のようなデバイスのドライバーではなく、自らデバイスインスタンスを追加してしまうような種類のドライバーである。 こういうことをする可能性があるのは root bus driver のたぐいか。 それも UEFI で標準的にサポートされていないようなもの。 この前の理解通り、Block I/O Protocol をインストールすると自動的にその他のプロトコルがインストールされる。 ただし、Device Path Protocol を作っておかないと、パーティションの検出がされないっぽい感じ。

Windows のデバイス マネージャーっぽく UEFI ファームウェアで検出されたデバイス一覧をツリー表示にできるじゃん、と思ったけど、いやいや、ファイルシステムまで同じツリーに含まれるんだからそれ以上だ。 わかってくると、UEFI ってやつは、カーネルとユーザーにわける必要が無い特徴を生かし、ハンドルとプロトコルで様々なインスタンスを抽象化した、拡張性が高くとても合理的なインターフェイスだ。 これなら、各メーカーが RAID など独自のデバイスを載せても、BIOS の頃のように実装に苦労しないわけである。 さらに、必要最小限のドライバーのみを読み込むなどして (例えば、ブートに使うのが SATA デバイスなら、ネットワークや SCSI デバイスを初期化しないなど) 起動時間短縮も可能である。 いい時代になったものだ。

2017/01/15 のコメントを読む・書く


16 (月)

%1 UEFI

前に調べたときは自宅の Ubuntu PC の UEFI 環境だとネットワークアクセスができなさそうだとおもったんだけど、改めて見てみたら、UEFI Setup でネットワークの設定を有効にしただけで普通に必要なプロトコルは準備されているようにみえる。 ま、UEFI でネットワーク通信は楽しそうなんだけど、そういうのは QEMU なんかで試すほうが楽ではある。

%2 冷え

今朝の冷えっぷりはすごかった。 気象庁アメダスによれば、府中 (東京) の今日の最低気温が -5.8 度だったという。 実はこの最低気温の数字は八王子とほとんど同じである。 時間帯が違うが。

こんだけ冷えていて、夜間ずっとエアコンを暖房で使っていたのに、霜取り運転がほとんど行われなかった。 なんでかと言ったら、設定温度 16 度で夜通しずっとつけているために、熱交換の量 (?) が少なく霜が発生しにくいというのもあるかも知れないが、もっと大きいのは外の湿度が低いんだろうなぁ。 これが、外が雪とか雨とかだったら、もっと頻繁に霜取り運転になっていたのではないかと思う。

%3 Wave Race

ウェーブレース ブルーストームを久しぶりにプレイしたらコースを忘れていてひどかった。3, 4 回やり直してやっとエンディングが見られた。 何度も見たやつだけど。

2017/01/16 のコメントを読む・書く


17 (火)

%1 くるま

iQ を走らせている時、3 速あたりが非常に幅広く使えて便利なのだが、例えば 3 速で停止するときは、ブレーキを掛けて減速していって、20km/h あたりになったらクラッチを切って、そっと停止、みたいなことをやっている。 燃料カットの間、エンジンはひたすら空気をスロットルバルブの隙間から吸い込み、はき出しているわけで、変速しない限りギヤ比が一定なので、エンジンブレーキはだいたい一定の加速度 (減速度?) でかかる感じ。

で、たまに CVT 車を運転すると、15km/h あたりまで? きゅううっとかかるエンジンブレーキに違和感があるわけだ。 それはギヤ比が変わるという意味でもそうだし、クラッチを切るタイミング、ブレーキペダルをさらに踏み込むタイミングもそうなのかも知れない。MT でもエンジンブレーキが思ったより強すぎたという状況はあるのだが、そういうときどうするかっていったらクラッチを早く切る感じだ。 まぁそれが下り坂や高速道路なんかであればシフトアップしてエンジンブレーキを弱くするというのもあり得るが、平坦な一般道だったらそこまではしない。 なんか、そういうことをいつもの動作として自然にやっているみたいだ。CVT だってセレクトレバーをいじればそれに近いことができるわけだが、そこは慣れてないから違和感があるんだろうなぁ。

%2 映画

『本能寺ホテル』。 イオンシネマ日の出。 レイトショー。1,000 円。 結構座席数の多いところで、平日夜ゆえ 10 人もいない程度、スクリーンは本編開始時に横に伸びる形、たいてい上下が縮むことが多いが、伸びるのは初めて見た。

子供の頃は歴史っていまいち興味が湧かなかったのに、大人になったらやたらおもしろいと思うのはなんでだろうな。 インターネットの普及のおかげで、少しでも興味を持った事柄を調べ出すと止まらないというのも関係があるのかな。 でも試験に出るからと暗記させられたらやっぱりおもしろくないかな。 中学歴史なんて、年を覚えるとか名前を覚えるとかよりも、事柄や名前を時系列に並べる程度で良いんじゃないかと、今更ながら。 本能寺の変ってのがあって、織田信長が襲撃されたんだ、へぇー! 程度で良いじゃない、みたいな。

あ、映画の話だった。 『本能寺ホテル』は予告編にあったように、タイムワープ的な感じでホテルと過去の本能寺がつながっているお話で、歴史物コメディー的な感じか。 本能寺というだけあって、舞台は京都。 どうやって過去に行くのか、どうやって現在に戻るのかは、そう難しい設定ではなく、見ているうちにわかってくる。

主人公は人生の大きなイベントに向かっているところ。 織田信長も天下統一に向けて (?) 重要な局面であるわけで、そこに謎の未来人 (主人公) がふらふらとやってきて変なことを言い始めるわけである。 「戦国時代」ってそれ後から付けた名前だろうと思うけど、そういう突っ込みは映画の中には無い。 未来から物が持ち込まれ、謀反の事実が伝えられ、果たして歴史はどうなるのか。 みたいな。

まぁ、おもしろかったかと言えばまぁまぁといったところか。 そんなにすごーい映画でもないし、ハラハラドキドキというほどでもないし、気楽に見られる映画としてはおすすめか。 織田信長って実際どうだったんだろうなと、想像しながら見るのも良い。 あと、京都観光にちょっと行ってみたくなる気にさせる映画ではある。 主演の綾瀬はるかは当然のことながら 8, 9 年前の『ハッピーフライト』の時よりは老けた大人びた感じになっている。 着物姿も見られるのでお楽しみに。

2017/01/17 のコメントを読む・書く


18 (水)

%1 スマートフォンゲーム

ポケモン GO で、いくつか微妙に進化に必要なアメが足りてないポケモンを相棒にして、アメを稼ぎ進化させるのを繰り返している。 今日はヒトカゲを進化させたので次はガーディ。

ポケモン GO で、たまごからププリンなるポケモンが登場。 プリンのアメはあったので進化させられるんだけど、このかわいいのがなくなっちゃうのは、ってあれ? ププリン進化させたらプリンなの? 何それ!

妖怪ウォッチぷにぷに、で、時々遊んでいるせいか、映画館の宣伝映像で妖怪ウォッチの声が聞こえてくると、あっ、妖怪ウォッチだ、ってわかるようになった。 それはともかく、以前何かでもらったコインで回したガシャ (コイツはガチャのことをガシャと呼んでいる) で、偶然にも SS (超レア)「覚醒ふぶき姫」が出ていて、これが結構強いんだけど、それ以外にも遊んでいるうちにちょっとずつ S がそろい始めて、一応 4 つそろった。 まぁでも相性やら何やらもあってうまく使えるとは限らない。 先週のプリズンブレイカーなスコアアタックに関しては、スコア 10% アップな覚醒ふぶき姫の他に全力でプリチーそろえてアイテム使ってコンティニューもしてやっと 1M 点に届いたというところ。 逆に今週は手持ちの SS が使えないので厳しい。

2017/01/18 のコメントを読む・書く


19 (木)

%1 ユーザースタイルシート

とある用途にユーザースタイルシート (という名前は出てこず、Mozilla Firefox の userContent.css というファイル名が思い浮かんだ) が使えるんじゃないか、って話をしたら何それって話になった。 あれっ? あんまり知られていないのかな? 自分は Mozilla をバージョン 0.9.7 あたりの頃から使ってきた比較的新しいユーザーだが、その機能の存在は割と最初の頃から知っていた気がする。 手元の navi2ch のログをあさると「Mozilla Firefox Part20」という 2004 年の 2ch のスレッドにはすでに登場している。

なお、Google Chrome ではなにやら拡張機能が必要らしい。 どこかのバージョンで仕様変更になって拡張機能無しではできなくなったとか? へぇー。

%2 ひふみん

将棋の加藤一二三九段、ついに今期限りでの現役引退が確定したらしい。14 歳から 77 歳まで現役だったというのは、自分の親の年代で考えても、小学生から定年退職後までというような長さであり、世の中の将棋ファンのほとんどは加藤一二三の現役時代しか知らないというようなレベルの話で、とてつもないことだなぁという感じがする。 みんなの記憶はもちろん、不名誉なものも含めていろんな記録も持っているようで、今後も名前は長く残るのではないだろうか。

将棋といえば、スマートフォン用の将棋アプリ「将皇」の「勝ち切れ将棋」というのだけ毎日やっている。PC では対応環境であれば以下のサイトでできるのかも知れない。

将棋ゲーム 将皇(FLASH版)

この将棋ゲームのコンピューターはちょっとおバカなので、レベルを上げると弱くなってしまうことがある。 先を読みすぎて勝てないことに気づいてしまうのか? 単なる手数のばし (勝てる見込みも無いのに王手して駒を捨てる) をする場合もあるし、こちらの王手に対してあっさりと首を差し出してくる (普通に合駒すればいいのになぜか逃げるとか、自ら苦しくなる方向に逃げるとか) 場合もある。 とはいえ、「勝ち切れ将棋」は詰め将棋にはなっていないことが多いため、ひたすら王手するというのではなく、うまいこと有利な状態を保ちながら進めていく必要があり、たまに難しい問題が出ることもあって楽しめるようになっている。

2017/01/19 のコメントを読む・書く


20 (金)

%1 きんようび

将棋の加藤一二三九段、引退は決まったが今日は最年長勝利記録を達成したとのニュースが流れた。 相手の飯島栄治という人は七段だが B 級 1 組で決して弱い人では無いらしいものの、本人の tweet では今回は完敗だったと。 ひふみんも、こうして勝ってきたからここまで現役でいられたんだもんな。

すごいといえばテニスの全豪オープン、ジョコビッチという世界ランキング 1 位になっていたこともある強い人 (今は 2 位?) が、イストミンという世界ランキング 117 位の人に敗れたというニュースがあった。 そんなこともあるんだなぁと。

テレビでやってた映画『千と千尋の神隠し』。 ジブリ作品によくある、ちょっとした不気味さと不思議ワールド全開なのはさすがだが、さすがにストーリーが頭に残っているので初めて見た時のような新鮮みは無い。 そういえば、宮崎駿作品といえばパンチラなのに、この作品には無い。 先週の『風の谷のナウシカ』のようにめちゃめちゃしっかり者の主人公というわけでもない。

夜はアメリカ合衆国大統領の "inauguration" (就任) の様子が様々な媒体で生中継されている。 分散してしまっているからアレだけど全体の視聴率はすごい数字かもね。

2017/01/20 のコメントを読む・書く


21 (土)

%1 どようび

ネッツからヴィッツハイブリッドデビューでシチューセットプレゼントの案内が来ていたが、天気が良くて暖かかったので、バイクでネッツに行ってみたw 本当にいい天気だった。 シチューセットだかなんだかというのは野菜とルウのセットで、肉は付いてない。 まぁそれを頂いて、ついでにヴィッツを少し見る。 顔つきが若干アクアっぽくなり個人的には前のより好みだ。 ブレーキランプまわりはオーリスっぽい雰囲気になった。 まぁそれは良くて、ハイブリッドは排気量 1.5L だからアクアとほとんど同じようなものだろう。 アクアより後ろの高さが若干あるかなと言う感じで、サイズ感もあまり変わらないし、アクアの買い換え需要を狙っているっぽい。 アクアのモデルチェンジはまだだが、大きくなるかも知れないとか何とか、そうすると小さいのがいい人達は必然的にヴィッツハイブリッドに流れることになるのだろう。 まぁもともとアクアって何でヴィッツブランドじゃなかったのか不思議なところではあったし、それでいいのかも知れない。

それより、今回のハイブリッド追加でグレードが整理され、1.0L と 1.3L がハイブリッドじゃないモデル、1.5L がハイブリッドモデルとなり、RS が消滅するのとともにヴィッツから MT が完全に消滅したというのが驚きだ。2 代目以降は RS のみだったもののずっと MT は残っていたのに、ついに無くなってしまった。 より小さな iQ も終了しているから、軽自動車を除くトヨタの現行 MT 車で一番コンパクトなのはカローラか? タウンエーストラックのほうが小さいか? そういえばコンパクト FR 車が出るという話が前々からあるから、それが今後の MT 需要を満たすのかも知れないけどね。86 じゃあデカ過ぎるよ。 今買い換えることになればトヨタならもはやカローラしか選択肢は無く、トヨタ以外ならフィットデミオスイフトあたりは生きているが、それもそこまで小さくは無いんだよねぇ... 後は軽自動車なのかな。 まぁ現状では駐車場の問題により大きな (長い) 車に買い換えるわけに行かないので、のんびり様子見だな。

そういやトヨタの WRC 復帰はヴィッツだったよな。 復帰したばかりの今 RS を無くすとは実にタイミングが悪いね。 これは社長が何か言って復活するかもしれんな。

バイクのエンジンオイル交換をしてもらった。

よく寝た日。

2017/01/21 のコメントを読む・書く


22 (日)

%1 にちようび

3 年近く前に書いたコードが、カーネルのバージョンアップによりいつの間にか動かなくなっていたので、なおしたついでに、bzImage をロードできるようにしてみた。 それはそんなに難しい話ではなく、先頭の bsetup? とか何とかいう部分までを下位アドレスに、残りを上位アドレスに読み込み、適当に設定を仕込んで実行すれば OK だ。BIOS を用意していないので、下位アドレスにロードしたプログラムの実行はできない。 そこで、32bit にしていきなり上位アドレスに実行を移す。 セグメントがなにやら 0x10 がコードセグメントで 0x18 がデータセグメントの必要があるらしくて、そこだけ注意が必要だった。QEMU の -kernel オプションなどを使用した時に実際に実行を行うコードが edk2 に入っているので少し参考になる。

で、さらに AMD64 もいけるかな、と思ってちょいちょいと試したところ、KVM_SET_CPUID の使い方間違ってたんだなーとw ちゃんと function 0 から指定しないといけなかったし、function 1 のレジスターに入れる値も間違ってたし、なんかいろいろとアレだったw しかし、CPUID をそれっぽくすれば、EFER MSR なんかは勝手に KVM 側で何とかしてくれるっぽくて、特にユーザーランドですることは何もなく、案外簡単であった。

車のアイドリング回転数が送風ファンのスイッチのオンオフで変わることがあるってのを先週書いたが、あの後、その挙動が再現できていない。 確かに、あの後は気温が高く 5 度前後はあって、それが関係あるのかな。 こういう説明書にも無いような挙動は AT/CVT 車だと駐車場等で変に急発進になるみたいな嫌な思いをすることになりそうだよなぁ。

さっそくシチューを作った。 もらった具材のタマネギがすげぇ大きなやつだった。 圧力鍋でちゃっちゃと。 意外とおいしい。

2017/01/22 のコメントを読む・書く


23 (月)

%1 液晶保護フィルム

スマートフォン ZenFone Max に貼っていた、貼るのに失敗しまくった液晶フィルムだが、数日前に幸か不幸か効果を発揮し、フィルムの一部にボコッと穴が開いたようになってそこだけ空気が入った形になっていた。 何かとがったものでつついてしまった風。 さすがに見苦しいので買い直そうと思った。 でもなんか高いのを買うのがしゃくなので、ダイソーに行ってみた。 さすがに 5.5 型用の汎用品は無かったのだが、画面サイズが同じくらいの iPhone 6 Plus 用の液晶保護フィルムがあったので買ってきた。

さて、実物に合わせてみると若干幅が小さいことがわかった。iPhone 6 Plus ってこんなに小さいのかと。 うーん、と思ったけど、まぁいいや、端っこが多少傷ついても使用に影響無いだろう、ってなわけで、おおよそ真ん中に合わせて、貼った。 画面の表示部分はほぼカバーできている。108 円の安物だし適当でいいや、と貼ると、妙にきれいに貼れるという、何とかの法則。ZenFone シリーズにはサイズが合わないのでおすすめしないが、iPhone ユーザーの人にはこれお勧めかも。 どうせ失敗したってまた買えば良いと思える価格だし、何なら何枚かまとめて買っておいても良いのでは。

%2 9P2000

Plan 9 由来のプロトコル 9P2000 について軽く調べた。 大変シンプルで良さそうなプロトコルだ。

試しにいつ入れてみたんだったか忘れた 9vx 環境で aux/listen1 -tv tcp!*!9999 /bin/exportfs -R -r / をたたき、Linux の 9p でマウントしてみたら普通にマウントできた。Linux では普通は diod コマンドなどで 9P2000.L という拡張プロトコルが使われるみたいだが、元の 9P2000 もいけるということだ。 へぇー。

2017/01/23 のコメントを読む・書く


24 (火)

%1 9P2000 の通信内容を観察しよう

というわけで、Plan 9 が実際にやりとりをする様子を観察する方法。 まず、plan9.iso.bz2 を入手して展開し、それを QEMU/KVM に食わせて起動する。2 台ぶんを同じネットワークにつないだ状態で起動するとよい。 例えば以下のような感じで。

qemu-system-i386 -enable-kvm -m 512 -cdrom plan9.iso \
 -net socket,mcast=230.0.0.1:1234 -net nic,macaddr=52:54:00:12:34:56 &
qemu-system-i386 -enable-kvm -m 512 -cdrom plan9.iso \
 -net socket,mcast=230.0.0.1:1234 -net nic,macaddr=52:54:00:12:34:57 &

何かメッセージが出てくるので CD から起動のほうを選んで後は質問に適当に Enter キーを押して答えておくと GUI になる。 両方起動させたらマウスの右ボタンでメニューを出して New を選び端末を起動して、ネットワークの設定。 それぞれに別々の IP アドレスを振る。

ip/ipconfig ether /net/ether0 10.1 255.0
ip/ipconfig ether /net/ether0 10.2 255.0

疎通確認。

ip/ping 10.2

確認できたら DEL キーで終了させる。 次にサーバー起動。

aux/listen1 -tv tcp!*!9999 /bin/exportfs -r /

クライアント側からマウントしたらこれも DEL キーでとめてよい。 クライアント側でのマウント。

srv tcp!10.1!9999 server /n/server

これで /n/server に 10.1 の / が見えている。 試しにファイルを作って確認する。

echo test > /n/server/tmp/foo

ファイルが作れるのが /tmp くらいみたい? なのでそこに作ってみた。 サーバー側でファイルができていることを確認できる。

パケットキャプチャーは snoopy というコマンドで Plan 9 上で行える。 データ部分が dump() のところにダンプされるのでそこそこ見やすいかな?

データは長さが little endian で 4 バイトに続いてコマンドが 1 バイトでタグが 2 バイトで、と続くが、コマンドで知っておかなければならないのは以下のものくらいか。

%2 バス

久々に緑色なシートのバスが来た。 年式を見忘れたけどたぶん古いやつだ。 エンジン始動時のクランキング時間が短いのも古い証拠 (?) だ。 なぜかは知らないが短いのだ。 もう小田急バスからは三菱ふそうのバスは無くなってしまったと思うが、いすゞエルガもこの古いやつはアイドリングストップに適しているのでは。 みたいな。

しかし発進の時に結構エンジンを回す運転手さんで、アイドリングストップによる燃費改善効果は発進時の空ぶかしで失われていたのでは (笑)。 まぁ燃費改善が主目的では無いんだろうけど。

2017/01/24 のコメントを読む・書く


25 (水)

%1 スイッチ

話題のニンテンドースイッチ。 外部映像出力が HDMI 端子なので PS4 同様手を出すわけにはいかないのかなと思っていたけど、ディスプレイ内蔵なので外部映像出力使わなくても支障はない説が有力で、まぁー確かにディスプレイ抱えてるんだし、今時のスマートフォンと同じように、電源端子も付いているのだから、初期設定に外部映像出力が必要というのも考えにくいかもね。 ドックにのってたら外部出力で、のってなかったら内蔵ディスプレイで、初期設定も可能と考えるのが自然か。

っていうか、仮に初期設定に HDMI 対応ディスプレイが必要だったとしても、HDMI ディスプレイのあるネットカフェにでも持ち込めば解決するのではないか。 とすると、いや、待てよ? それが可能なら、PS4 だってネットカフェに持ち込んで、PSVR の初期設定をすませれば、後は HDMI 対応ディスプレイ無しでいろいろ使えるということに...? っていうかアレテレビ無しで初期設定も可能ってことなんだっけ? 入手困難ということもあってすっかり忘れてしまった。

なお、スイッチのキラーコンテンツはやはりバーチャルコンソールではないか説が有力であり、NINTENDO64 やマスターシステムやアーケードゲームなどをモバイルで遊べると思うと胸が熱くなるな! という話のようである。 ゲームキューブソフトも出てくるのではないかという話もあり、確かに Wii の時はゲームキューブはメディア互換だったけど (CPU や GPU は同一メーカーの後継品みたいなものだったから性能調整で何とかしていたのかな?)、ずいぶん世代が進んだからゲームキューブ世代もエミュレートできるようになったのかも知れない。

2017/01/25 のコメントを読む・書く


26 (木)

%1 もくようび

そういえば最近シダックスのメンズデーに行ってない。 と思って、夜、何となく吉祥寺に行った。 ら、吉祥寺のシダックスは去年の 12 月 30 日で閉店していたらしい。 アチャー。

そういえば、去年「X'mas限定カラオケ50%OFF★お待たせしました!/吉祥寺本町クラブ【シダックス】」というサブジェクトの電子メールが届いていたな。 いかにも込みそうな時期に 50% 引きとかやるなぁと思っていたけど、きっと閉店セールみたいなものだったんだな。

そんなわけで、せっかく街に来たので、吉祥寺ヨドバシでちょっとゲームの売り場をうろちょろして、その上のレストラン街で飯食って帰った。

シダックス、調布はやってるみたいだけど、場所的に微妙に行きづらいんだよな。 まぁ原付かバスで行けばいいんだろうけど... あとはシダックス昭島中神町クラブは... あれ? カラオケバンバンに化けてる!!

2017/01/26 のコメントを読む・書く


27 (金)

%1 きんようび

テレビでやってた映画『耳をすませば』。 見るのは 2013 年以来、2 回目。 確か聖蹟桜ヶ丘あたりが舞台だったな、多摩センターが云々、いやいやそれは『平成狸合戦ぽんぽこ』だ。 これは確か聖蹟桜ヶ丘のいろは坂か何か、あの辺が出てくるやつだ。 そのいろは坂は一度バイクで行こうとしたが、二輪車通行禁止の時間帯にあたって通れなかったところだ。

誰かが言ってたけど、よく、何かと理由をつけて、だからこれは買えないんだという場合がある。 例えば、置き場所が無いからデスクトップ PC は買えない、ゲーム機は買えない、といったパターン。 あるいは、置き場所が無いから、お金がもったいないから、などの理由で車が買えない、バイクが買えないというのもあるかも。 自分が書いている、HDMI 入力のあるディスプレイが無いから PS4 やニンテンドークラシックミニファミコンは買えないというのもこのパターンだ。 すべて、あたかももっともらしい理由がついているのだが、たいていの場合、実は本質的な理由では無いわけだ。 簡単に言えば、そこまでの情熱を持っていないということだ。 買えないんじゃなくて、買わないのであって、でもほしくないといったら嘘になるという感じの時に、こじつけの理由が登場するわけである。 ゲーム機であれば、ゲームしたいという欲求より、置き場所を確保して配線してという準備作業の面倒くささが上回っている状態である。 たぶん。 買い物に限らないかも知れない。 中学生あたりを想像してみると、家族が新型ゲーム機を買ってきたなら、片づけを迅速にすませて置き場所を作り、配線も一気にやって設置してしまうに違いない。 あるいは、高校生・大学生で、バイクに乗りたいがためにアルバイトに精を出すなんて人もいそうだ。 そのような情熱があれば、HDMI 入力のあるディスプレイを買ってきて、配線をやり直し、古いディスプレイを廃棄するなんて、簡単で些細なことなのだ。 まぁ、駐車場なんかは日常の利便性とコストのかねあいもあり、場合によっては引っ越しなど大変な作業を伴うこともあるので、一概には言えないのだが、それに比べればデスクトップ PC 1 台の置き場所なんてのは、ずっと簡単に何とかなるはずのたぐいのものである。

2017/01/27 のコメントを読む・書く


28 (土)

%1 どようび

近所の戸建て物件、5 千万近い価格帯になればこの辺では大変に条件のいいものがあるのだが、3 千万台だとなかなかビミョーなところが多いのは確かである。

テレビでやってた映画『RED リターンズ』(原題: Red 2)。2013 年のアメリカ映画。 なんか見たことがあるような気がするのは、前作 RED なのか? どたばたしながらフランスやらイギリスやらロシアやらイランやら、いろんなところに移動しまくる。 アメリカ英語もイギリス英語もコリアン英語 (?) もごちゃまぜである。

久々に WebGL を触って、ちょっとテクスチャーを貼ってみようかなと思ったわけである。 前に作った WebGL Clock を改造し、透明だった背景にテクスチャーを貼ってやろうという試みである。 以下のようになった。

WebGL Clock

まず画像の読み込みがポイントで、Image() のオブジェクトを使うが onload で処理を行う必要がある。 やることは gl.createTexture() で作ったテクスチャーをバインドしてから gl.texImage2D() とやらで画像をテクスチャーに変換し、gl.texParameteri でいくつかパラメーターを設定して、gl.generateMipmap() で縮小用のミップマップとやらを生成 (でも今回は使用しない)、ここまでが準備。 あとは表示の時に、gl.activeTexture() でテクスチャー 0 を選び、バインドしたら sampler2D 型の uniform に 0 を渡すとフラグメントシェーダーで読み取れるってことのようだ。 この時点で読み込みが終わっていないと真っ黒 (vec4 (0.0, 0.0, 0.0, 1.0) 相当?) のデータになる。 画像を data URI scheme で渡していても同様だった。 フラグメントシェーダーでは texture2D() に sampler2D 型の uniform と vec2 で座標を渡せば OK。 各座標は 0.0〜1.0 が範囲だというのだが、それを超えると繰り返しになるみたいなので、あまり難しく考えることはない。 この時計プログラムでは円の描画をフラグメントシェーダーで行っており、中心が 0, 0 でプラスマイナス 1.0 の範囲を使う座標を持っているので、それをそのまま使えば 4 つ現れることになる。 それを元にちょろっと計算式を書いたらうまくいった。

最近 Debian に fonts-mmcedar というフォントパッケージが入っていることを知って、使ってみている。 これは、「モトヤ L シーダ」という、Android のバージョン 4.0 から 5.x の時代までのソースコードに入っていたモトヤのフォントと、M+ フォントを組み合わせたものである。 ちょっと独特な雰囲気になるが、M+ の部分を除けば、以前の Android 端末で見慣れていたはずである...? いや、普通はシーダではなくてマルベリのほうが使われていたらしい。 で、正直なところ、Android 6.0 で採用された Noto Sans CJK より良い感じがする。 いやまぁ、Android 端末で見る限りはそれぞれちゃんと表示されていると思うんだけど、こうして PC 環境に適当に入れて見るとなんか変な感じになっちゃうんだよな、Noto Sans CJK って。 しかしこれマルベリとの組み合わせは無いんかな。 ソースパッケージに作るスクリプトが入っているから自分で作ればいいのか。 なお、元のモトヤフォントは以下のところにある。

platform_frameworks_base/data/fonts at marshmallow-release - android/platform_frameworks_base - GitHub

と思って作ってみたけど高さがおかしなフォントができあがってしまった。 うーん。

2017/01/28 のコメントを読む・書く


29 (日)

%1 にちようび

よく寝た日。

チック・コリアのスペインという曲がラジオで流れて、途中のリズムに何かどうも聞き覚えがあったのだが、CM かと思ったけど違って、平原綾香のカバーか。

ThinkPad X201 で Debian GNU/Linux 8 を使っていると、よく音がグリッと変な風に鳴ることがあって、なんか buffer underrun を起こしている風なんだけど、アプリケーション側の不具合では無いらしいというところまでわかってはいた。 デバイスドライバーがクソなのかと思って今日何となく WWW 検索してみたら Arch Linux の Wiki に情報があった。

PulseAudio/トラブルシューティング - ArchWiki

あぁ、たぶんこれだ。PulseAudio が何かやらかしているのか。tsched=0 を付ければいいらしい。 これでも完全に解消はしていないような気がするが、ポツッと鳴る程度であからさまにひどいのは解消された気がする。 拙作エミュレーターにおいても、ちゃんと buffer underflow メッセージが出るようになって、前のような不自然な挙動はなくなった。

メカニカルカウンター、って日本語で何て言うのかな。

Mechanical counter - Wikipedia

これ。 カセットテープレコーダーなどでくるくる回るのを子供の頃はよく見ていた気がするんだけど、オドメーターや電気使用量メーターでまだ使われているものの、カセットテープは廃れちゃったので、早送りのようにくるくると元気よく回るところを目にする機会はなくなった。 こういうタイプの表示器で時間の情報 (時刻とかストップウォッチとか) を表示する装置って無いのかな、どう作るのかな、と思った。 確か構造としては、数字が 9 から 0 に進む時に隣のドラムが同じだけ回るみたいな簡単な機械仕掛けによるもので、しかし時間の情報では 60 秒や 60 分で次の位を進めなければならないわけで、そうすると一部の位は 0〜5 になる? そうするとそこだけドラムが小さくなっちゃうから、桁上がりの仕掛けはどうなるんだろう。 荒技としては 6 と 10 の最小公倍数 30 でドラムを作っちゃえば 6 も 10 も同じサイズにできるけど。

2017/01/29 のコメントを読む・書く


30 (月)

%1 今日は暖かいというので

あったかムートンブーツでなくてフツーの運動靴で出勤し、帰りは歩くことにした。 そしたら、確かに昼間は暖かかったんだが (最高気温 17.9 度、気象庁アメダスより、東京都府中市の情報)、北風で、夜になるとそこまで暖かいという感じではなかった。 まぁでも凍り付くような寒さでもない。 手袋無しでも大丈夫な程度だ。 そもそも最近歩きでは手袋使ってないというのはおいといて。

徒歩帰宅は 10 月以来、3 か月ぶりだ。 普段よりハイペースで (たぶん一般的には標準的なスピードで) 歩いていたらだいたい 90 分で帰り着いた。Google Maps が出す時間とほぼ同じだ。 やはり 1 時間ほど歩いた頃、公園のあたりにいる時か、あるいはもうちょっと前か、ちょっと足が痛い時があったが、今回はそれだけだった。 運動靴なのが良かったのかも知れない。

ポケモン GO による電池の減り具合は 10 月の時と変わらない。 って、10 月は途中で晩ご飯を食べているから、2 時間くらい掛けて帰ったはずだ。 そのときより 30 分も短いのに電池の減り具合が変わらないとは、電池の劣化というやつか。

%2 シチュー

株主優待のシチューのルウもあったのでまたきのうシチューを作って今日に掛けて消費した。 シチューのルウってやつは固形タイプと顆粒タイプがあるみたいだ。 カレーもカレー粉ってのがあるけど、記憶ではカレー粉はとろみを別途つけなければならないというような、作り方が違うように記憶している。 しかし、シチューの場合、固形でも顆粒でも作り方はほとんど同じである。 どういうことなのか?

ちょっと WWW 検索してみたけど本当のところはよくわからない。 予想が付くのは顆粒では微調整がしやすいというところで、確かに一皿分何グラムなどの表記もあったし、好みに応じて量の調整をするなら、加減がしやすいのは顆粒だろう。 それ以外に、とけやすいというのもわかる気がする。 あとは、固形の場合は油分で固めているみたいで、顆粒のほうが油が少ないという話があるようだ。

実際食った感じでは、この前ネッツでもらったのが固形で今回作ったのが顆粒だったんだけど、油分については違いはあまりわからなかった。 それより、顆粒のほうがちょっととろみがつきにくいというか、あまりとろみがつかない感じはした。 あと、顆粒のほうが一箱分の分量がちょっと多いみたいで、一人暮らし的には分量の少ない固形のほうがいいか? いや、一度で全部使い切らないのなら顆粒のほうがいいかな? でも保存の時に吸湿しづらいのは固形のほうかな?

などなど、結局どっちでもいいのではという感じなのだが、いずれにしても、クリームシチューはカレーに比べるとあっさりとした料理で、朝食のスープ代わりにもなるのがいいところだ。 カレーもまぁ作ると結局朝晩食べることになるんだけど、カレーは一箱分作って 3 食で食べきるのはきつい気がするのに対して、シチューは 3 食で何とかなる。

2017/01/30 のコメントを読む・書く


31 (火)

%1 Docker

時代は Docker (?) ということで、GUI のほうじゃなくて Linux container のほう。 ちょっと触ってみたところでは run は create じゃねーのと言いたくなる以外はなにやらおもしろそうな感じである。Ctrl-P が一発で反応しないうざさが半端無いが設定で変えられるらしい。GNU screen の Ctrl-A といい、これらの開発者は bash や zsh のような履歴行編集機能付きシェルを使っていないのか、それとも、set -o vi で使っているのか。

おもしろいと思わせる理由は、ぺちっとコマンドをたたくとメジャーどころのディストリビューションの環境がぽこっと作られて chroot/jail っぽくされてシェルが立ち上がるところだ。chroot 環境をこしらえたことがある人ならわかると思うが、Debian 系で debootstrap を使うにしても、/dev をマウントしたり /proc をマウントしたりして結構手間だ。 それを全部自動でやってくれる上、ネットワークやプロセスの名前空間もわけてくれるというのだから楽ちんだ。 いや、作るだけでなく、シェルを exit すれば後かたづけをしてくれるんだから至れり尽くせりである。

で、run は images をもとに新しいインスタンス (container) を作って開始するというもので、images の一覧は docker images で確認でき、インスタンスの一覧は、docker ps で動作中のもの、docker ps -a で停止中のものを含めたすべての一覧が見られるという具合。 停止中のものを起動するには start、動作中のものにつなぐには attach。 停止しているいらないインスタンスは rm で消せる。save/load で別マシンにインスタンスのお引っ越しが可能なのかな。

A new image を作る時は build だっけ。Dockerfile とやらを書いて build をたたくと image ができる。 あるいは、インスタンスを commit としてもできるんだっけな。 なんかそんな感じ。 ファイルシステムでの工夫で、同じ image をたくさん開始してもディスクの消費量は抑えられている模様。 でも ZFS のアレみたいに同じ内容のファイルを勝手に見つけるみたいな仕組みではなさそうで、同じ image のインスタンスを作る時にうまいこと処理されるのではないかな。

使われ方としてサーバーを立ち上げて云々という向きもあるようだが、気軽にぽこぽこと立ち上げてしまうと、その後セキュリティアップデートの適用で結構つらいものがありそうな気がする。 でも同じ環境を頻繁にばしばし増やしたり減らしたりするなら向いているのかな。 開発用としては明らかに手頃で、まっさらに近い状態のディストリビューションの環境をサクッと手に入れ、そこに必要最小限のパッケージ等をインストールした上でビルドする、みたいな作業にはとても向いていそう。 他人とビルド環境を統一したいということはあるので、そういうのには良さそう。 実際、前に試した Mozc for Android はビルド用に Dockerfile が配られていて簡単だった。

技術的には Linux container であり jail の発展版のようなものでもあり、それに unionfs の発展版的なものを組み合わせたもので、目新しさは無いけど、こういうのは使い勝手の変化で大きく化けるもの。13 年くらい前に SoftEther という VPN が出てきた時もそうだったし、iPhone だってそうだった。 どういう技術が使われているか、想像は付くし、作れと言われれば作れそうなものでもあるけど、ここまで使いやすくまとめるというのは簡単じゃないし、こうしたら使いやすくなるだろうというアイディアもまたすばらしい。

2017/01/31 のコメントを読む・書く


Powered by Tomsoft Diary System 1.7.4

/var/log/hdk.log コメント一覧

トップ / 日記索引 / 日記 (2017 年 1 月)

Hideki EIRAKU