既刊のDL販売について
これまで筆者はフリーの編集者である風穴江さんと一緒に技術書典において"windhole"名義で同人技術書を販売してきました。その際、毎回のように「行き損ねた/買い損ねたのでDL販売をしてほしい」という声をたくさんいただいてきました。これを受けて、このたびDLMarketにおいて既刊4冊の電子版(後述の「おしながき」を参照)をDL販売することになりました。興味のあるかたは是非お買い求めください。DL販売の利点を活かして、適宜読者のみなさまのご意見の反映を含めた加筆修正をした上で再DLできるようにする見込みです。
今後は技術書典とDLMarketを以下のように使い分けていく予定です。
おしながき*1
図解でわかるMeltdown
2018年の年明け早々世間を騒がせたMeltdownという脆弱性についての解説書です。この脆弱性は前提知識さえあれば理解は決して難しくありません。しかし必要な前提知識の数が多い、かつそれぞれOSカーネル以下あたりの低レイヤのものが中心なため、一般的なソフトウェア開発者にとってはなかなか敷居が高いのが実情です。
本書はレイヤを問わずあらゆるソフトウェア開発者のためにMeltdownおよびその理解に必要な前提知識をひっくるめて図解しています。「この脆弱性について興味はあったもののなんだか難しそうなので手付かずだった。最短距離で手っ取り早く理解したい!」というかたにおすすめです。
Btrfsの薄い本
BtrfsというLinuxのファイルシステムについての解説書です。Linuxのファイルシステムといえばext4やXFSが有名です。Btrfsはこれら2つと同様の使い方もできますが、通常「Linuxのファイルシステム」と言われて普通の人が思いつくものとは大きく異なる豊富な機能を備えています。Btrfsはまた多くのLinuxディストリビューションで実際にサポートされています。
本書はこのファイルシステムが一体どういうものなのかという概要を書くと共に、それを読んでさらに興味が出たかたむけに使い方、トラブルシューティングから歴史までを説明しています。ファイルシステムについて新しい知識を得たいかた、刺激が欲しいかたにお勧めです。きっと「こんなことができるの?」と思うはずです。
近いうちに対象カーネルバージョンを更新すると共に新圧縮アルゴリズムzstd、および一般ユーザによるスナップショット操作についての記述を追加予定です。
カーネルモジュール作成で学ぶLinuxカーネル開発の基礎
Linuxカーネルを自分で改変するためには覚えておかなければならない作法があります。これらの作法は一旦わかってしまえば大したことはないのですが、やたらと数が多いので参入障壁が高いです。本書ではそのお作法をカーネルモジュールの作成という方法を通して学びます。まずは単純な機能を追加してから次第に複雑な機能を作り込んでゆくというインクリメンタルな説明方法になっているので、カーネルになじみのないかたにもとっつきやすくなっています。お作法のうちの大して重要ではないところについては自動化して飛ばすツールを紹介しているのもポイントです。
「Linuxカーネルをいじってみたいけど、何をすればいいのかさっぱりわからない」というかたにおすすめです。
近いうちに対象OSをUbuntu 16.04からUbuntu 18.04に更新予定です。
Linuxカーネルで学ぶC言語マクロテクニック(既刊。電子のみ)
Linuxカーネルのソースを読むにあたっての大きな障壁のひとつがトリッキーなC言語マクロたちです。本書はこれらのうちの多く使われていて、かつ初見殺しなものを抜粋して解説しています。これからLinuxカーネルソースを見てみたいというかた、およびC言語マクロ黒魔術の世界をのぞいてみたいかたにおすすめです。
近いうちに内容を追加する予定です。
技術書典5の新刊
10/8に開催される技術書典において新刊を出す予定です。
タイトルは「Ryzen SEGV Battle」です。この本は2017年に発売されたAMDのプロセッサRyzenの一部に存在した問題を、筆者を含む同問題に遭遇した人たちが一丸となって解決した話について物語調にまとめた本です。純粋に読み物として楽しんでいただいてもいいですし、トラブルシューティングの参考に使っていただくこともできるかと思います。カーネルやハードウェアなどの低レイヤの用語がたくさん出てきますが、適宜解説をつける予定です。乞うご期待。
おわりに
DL販売の諸手続きについては私は何もやっていなくて風穴さんがすべてやってくれました。この場を借りて御礼申し上げます。
*1: