Plan 9とGo言語のブログ

主にPlan 9やGo言語の日々気づいたことを書きます。

Plan 9

checked N page table entries

この記事はTumblrで公開されていました Plan 9を使っていると、たまに、 <pid> <command>: checked <n> page table entries というログがコンソールに出力される場合があります。これは、/sys/src/9/port/fault.cのcheckpagesが出力しているもので、checkpagesが呼び出しされ</n></command></pid>…

Plan 9 ATAドライバのLBA

この記事はTumblrで公開されていました pc/sdata.cは起動時に、LBA可能なディスクなのか調べる。CHSしかできないなら、何があっても常にCHSでアクセスする。LBA可能な場合、アクセスするアドレスや個数がLBAの範囲内ならLBA、範囲を超えたら(例えばアドレス…

Plan 9 on さくらVPSのI/Oが遅い

この記事はTumblrで公開されていました 解決 原因がどうにもわからないので9fansにポストしたところ、最終的に、Plan 9のTCP実装が問題で、inパケットのMSSが大きすぎて不審な動作をしていたらしい。9legacyにパッチがあるので当てると解消する。 オリジナル…

pbsをpbslbaに変更する

この記事はTumblrで公開されていました インストール直後はCSH(Cylinder-head-sector)版のpbsが使われるので、LBA(Logical block addressing)版を使う。 % disk/format -b /386/pbslba /dev/sdC0/9fat とするだけでよい。9fatのファイルは維持される。

Plan 9 on さくらVPSのディスクioが遅い

この記事はTumblrで公開されていました fossilがキャッシュしていない時のio(read)が150KB/sしか出ていない。 % iostats md5sum /386/9pcf 2回目以降はキャッシュされるので120MB/s程度まで向上するけど、さすがに遅すぎるので、この年末年始でドライバをvir…

Plan 9 from User Space(plan9port)を使う

この記事はQiitaで公開されていました INSTALL ソースを取得 $ git clone https://github.com/9fans/plan9port plan9 ソースを取得したディレクトリに移動してビルドすれば終わりです。通常は、git pullしたディレクトリがplan9portのインストール先になりま…

Go on Plan 9ではまったこと

この記事はTumblrで公開されていました Go 1.3.1をビルド Plan 9(386)にGo 1.3.1をインストールしてみた。通常どおりsrc/all.rcを実行したのだけれど、cmd/8cと出力された後にinvalid opcodeエラーで落ちる。そのため、インストールできない。 Go 1.3.0をビ…

Plan 9でPython(失敗)

この記事はTumblrで公開されていました http://permalink.gmane.org/gmane.os.plan9.general/72794 (リンク切れ)の通りですが。 % bind -ac $home/sys/src /sys/src で、 % cd $home/sys/src % hget https://bitbucket.org/jas/cpython/get/2.7-plan9.tar.bz…

Drawtermでキーボードを叩くとNSPortCoderな警告が出力される

この記事はTumblrで公開されていました drawtermを使ったとき、キーボードでキーを叩くと以下のような警告が出力され続ける場合があります。 Warning - conversion from 64 bit to 32 bit integral value requested within NSPortCoder, but the 64 bit valu…

syscall 53問題踏んだ

この記事はTumblrで公開されていました ふとした気の緩みで、大きく時間が取れるまで待っていたsyscall 53問題を踏んでしまった。syscall 53問題というのは、5月の中旬ごろに発生したnsec(2)がライブラリからシステムコールに変更されたことによって起こるエ…

u.h

この記事はTumblrで公開されていました Plan 9には、u.hというヘッダファイルと、Qidという構造体がある。このuとqって何なのという質問が9fansで上がっていたけど、Rob Pikeによると uint, ulongのu uniqueのq だそうで。 [9fans] why u.h, why qid?

Windows Azure上でLinuxをventiバックアップ先にする

この記事はQiitaで公開されていました Plan 9のventiバックアップ用に、Windows Azure上でventiサーバを立てます。 plan9portのインストール あらかじめplan9portを/usr/local/plan9にインストールしておく。 ventiディスクの作成 Windows AzureポータルでHD…

Plan 9でのユーザ管理

この記事はQiitaで公開されていました Ken fs 追加 fs: newuser web Fossil 追加 webというユーザを作成する。 # con -l /srv/fscons prompt: uname web web (ホームディレクトリが不要な場合は:webとする) prompt: uname web +glenda (glendaをメンバー追加…

Macから9Pをマウントする

この記事はTumblrで公開されていました 9fansで話題に上がってたのでメモ。 9Pをマウントするmac9pというカーネル拡張があって、これを使うと、たとえば9p://sources.cs.bell-labs.comのようなURLでマウントすることができるようになる。 試してみたけれど、…

Plan 9の不思議

この記事はTumblrで公開されていました Plan 9はネットワークブートの仕組みがあって、リモートファイルサーバのファイルツリーを自分の/にマウントして、複数台のマシンでひとつのシステムを構成することができる。 で、これはplan9.iniに bootargs=tcp -g …

plan9portがHomebrewに追加されました

この記事はTumblrで公開されていました こないだ、Homebrewにplan9portが入ったみたいなので インストールしてみました。 インストール $ brew update $ brew install plan9port これで完了です。特に依存するCellarはありません。/Applicationsに9term.app…

Plan 9の便利そうなコマンド

この記事はTumblrで公開されていました man読んでいたら便利そうなコマンドがあったのでメモ。 du(1) - -tオプションで更新時刻 lock(1) - ロックしてコマンド実行 seconds(1) - 日付文字列をunix timeに変換 tail(1) - 対象範囲は、l(行), b(1Kブロック), c…