
FreeBSD 11.0で/dev/fullが利用可能に 52
ストーリー by hylom
ほかのOSにも普及するか 部門より
ほかのOSにも普及するか 部門より
insiderman 曰く、
FreeBSD 11.0-CURRENTに、/dev/fullというデバイスファイルが実装されたそうだ(マイナビニュース)。
このデバイスは、アクセスすると常に「ENOSPC」、つまり「ディスクの空き容量なし」エラーを返すというもの。ディスクフルの状態で書き込みを行おうとした際のソフトウェアの動作検証などに利用できるとのこと。なお、このデバイスファイルから読み出しを行うと常に0x00(NULL)が返るという仕様になっているそうだ。
いろいろあるといいですね (スコア:3)
書けるけど揮発しちゃうのとか、ランダムに欠損していくのとか、フロッピー並以下のえらい遅いのとか
Re:いろいろあるといいですね (スコア:1, おもしろおかしい)
/dev/hylom
Re:いろいろあるといいですね (スコア:1)
本当はもうdisk fullだけど、writeでエラー返さないってもの
中華USBメモリでありましたね。
マウント先は、/dev/zull で。
Re: (スコア:0)
コロコロフォーマット
Re: (スコア:0)
configurableなデバイスがいいなぁ
Re: (スコア:0)
gnop(8)で確率的な書込み/読出しの失敗はシミュレートできます。
/dev/nullが実装されてないなんておかしいなぁ (スコア:2, おもしろおかしい)
と思ったが本文を読んで疑問を持ち、20分後にやっと空目したことに気付いた。
私の頭の中がnullだったらしい。
頭の上がnullだったから、fullだと言うことに気づけなかったということでないと信じたい。
Re: (スコア:0)
ちなみにソースは/dev/nullと/dev/fullと/dev/zeroで一部共用してるらしいぞ。
Re: (スコア:0)
書き込み時
full : 空き容量なしを返す
null : 消える
zero : 消える
読み込み時
full : ゼロ
null : EOF
zero : ゼロ
Fullってカツラなんじゃなかろうか。
Nullの方がマシな気がしてきた。
ふと気になった (スコア:2)
dd if=/dev/full of=/dev/null
したらどれくらいCPUを使うんだろうか?
# 門外漢なのでかなり変なことを言っているかも
Re:ふと気になった (スコア:1)
dd if=/dev/zero of=/dev/null
と, ほぼ同条件なので, それで確認すると大体1core分を100%使いますね(FreeBSD-10stableで確認). うち, ユーザ時間がおおよそ14%, システム時間が86%でしたから, CPUスケジューリングのアーキテクチャ(今回は標準のSCHED_ULEを使用)によっては, もっと別の値になるかも.
Re:ふと気になった (スコア:1)
確認ありがとうございます( ..)_
やはり1core使い切ってしまうんですね…参考になりました。
手元にすぐ検証できる環境がない(全部Win7機)ので、
単にぶんまわるだけだろうと勝手に想像していたのですが、
スケジューリングという視点までは至ってませんでした。
まぁでも、他のアーキテクチャと比較したところで、やることは
CPU&労力の無駄遣いなので深追い厳禁ですね^^;
# そのうちddベンチなるものが…出るわけがない。
Re:ふと気になった (スコア:1)
マルチコアが利用できる機器(それがクラウド上だったり)で空いているコアにやれとスケジューリングさせるためにベンチマークとかならありかも。
クラウド マルチコア スイッチング [google.com]とおもいつきで検索したけど隠し味の小道具くらいになれるんじゃないだろか?
Re: (スコア:0)
パケットを作るけど転送するデータがないのでそのまま終了
結構昔から軽口には登場してましたが (スコア:1)
本当に実装されたのですね。
/dev/null どうでもいい、やらなくてもいい、誰も必要としない有象無象をまとめて叩き込むスペシャルデバイス。
/dev/full よりによって締切間際になって、どうしてもごまかしたり、先送りができない案件が止めどなく湧いてくるスペシャルデバイス。
とかだったかな?
帰る? (スコア:0)
どこに?
0x00(NULL)が「返る」だと思うけど…。
Re: (スコア:0)
こっそり修正される点も含めて、hylom氏クオリティ…?
Re: (スコア:0)
いつもは最初のほうの指摘されていても、修正されてないことが多いのでちょっと違う
Re:帰る? (スコア:1)
たぶん、今回のは本当の間違いだったんじゃない?
Re: (スコア:0)
じゃあいつもは何なのww
Re: (スコア:0)
コメント稼ぎの釣り餌。
Re: (スコア:0)
そりゃあ、毎回毎回指摘されるのにイラッときた氏がtypoはミスではない!と言い張るためにわざとやっていたに決まっているでしょう(笑)
Re: (スコア:0)
引用部分だし、タレコんだ人から依頼があったのかな。
放置よりは、こっそり直すんでも全然いい。編集履歴が残るシステムになってればもっといいけど。おつかれ。
Re: (スコア:0)
gistサイコー
Re: (スコア:0)
トピック文の質が低いのは再三指摘されているのに一向に改善しないよね。
複数の編集者でダブルチェックくらいすればいいのにね。
#ダブルチェックしててこの状態なら、編集者でのチェックは諦めて読者にチェックしてもらうとか。
かわいそうに (スコア:0)
どんなご飯やおかずを与えられても「もう満腹です」としか言えないなんて。
Re:かわいそうに (スコア:5, おもしろおかしい)
それじゃデブにならない。
Re: (スコア:0)
そうか、表の口ではもう食べれないとか言って、裏の口でバクバク食べる二口女なんだ。
Re: (スコア:0)
上の口は嫌がってるけど下の口は(18禁
似てるなぁ。 (スコア:0)
/dev/full と打とうとして誤って打ち慣れた /dev/null と誤爆する事案がオレの中で多発しそう。
無意味 (スコア:0)
普通に小さいRAMディスクかLVMデバイス作っていっぱいにすればいいだけのような。何かそれではいけない理由があるんだろうか?
Re: (スコア:0)
テストプログラムが書きやすくなります。
Re: (スコア:0)
>普通に小さいRAMディスクかLVMデバイス作っていっぱいにすれば
普通に小さいRAMディスクかLVMデバイス作っていっぱいにするのがめんどくさい
Re: (スコア:0)
make testの際に、内部でそんなことするなんてやってられない、ってことでは。
それだけのためにroot権限が必要になってしまうし
Re: (スコア:0)
> 普通に小さいRAMディスクかLVMデバイス作っていっぱいにすればいいだけのような。何かそれではいけない理由があるんだろうか?
これからは /dev/full を使うだけで済みますね.便利ですやん.
Re: (スコア:0)
/dev/fullはこれ以前よりLinuxなどで実装されているので、そのあたりを対象に決め打ちで作られたスクリプトの移植性向上に役立つ、という見方もできるのではないでしょうか。
つぎはなにができるかな? (スコア:0)
/dev/pull ...とか?
#なにをひっぱってくるんだ
Re:つぎはなにができるかな? (スコア:2)
/dev/nullnull
嗚呼、全てが融け合って行く…
-------- tear straight across --------
Re: (スコア:0)
/dev/dull はどうですか。何も返さないわけではないが、返すのが非常に遅い超高負荷状態をエミューレートしてくれます。
Re: (スコア:0)
/dev/kill
消したい誰かの名前を書き込むと結果を返す
読み込むと最後の瞬間の映像が…
#映画化希望
Re:つぎはなにができるかな? (スコア:1)
請負人:「まず、あんたの名前を聞こうか」
PM:「プロジェクトもいけますか?」
使用者:「あ、typo。」
だが待って欲しい (スコア:0)
/dev/full があるドライブが本当に空き容量無しだった場合、どちらのエラーか識別出来るのだろうか。
できた所で使い道が思いつかないんですけどね・・・
Re: (スコア:0)
/dev/full は、ファイルではなくて、デバイスファイルだから、
そもそもドライブとかその空き容量は関係ありません。
Re: (スコア:0)
なるほど、実ドライブへのアクセスは一切無いものなのですね。
ありがとうございました。
Re: (スコア:0)
デバイスファイルはファイルではないの?
# 言わんとすることは理解できるが。レギュラーファイルって言えばいいのかな?
ありそうで無かったデバイス (スコア:0)
いろいろ夢がひろがりんぐですね(^^)
ちょっとした嫌がらせ (スコア:0)
/dev/null を削除して /dev/full に置き換えるとか
Linuxだと (スコア:0)
full (4) の Man Pageが2007年には既にあるみたいだけど
これはFreeBSDだからニュースなのかしら?
Re: (スコア:0)
FreeBSD にも 8.1 からそれはあるみたい [freebsd.org]だよ。
Re: (スコア:0)
元々 Linuxと互換性を提供していた lindevモジュールで唯一の残っていた機能で、「これBaseで利用できたら便利じゃね?」ということで、lindevを廃止する代わりに Baseに取り込まれた様です。
最近FreeBSDネタが少ないから採用されたのかも...
# 一応 FreeBSD大好き人間