C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[14]: リムーバブルメディアとHDDの違い


(過去ログ 33 を表示中)

[トピック内 37 記事 (1 - 20 表示)]  << 0 | 1 >>

■16264 / inTopicNo.1)  リムーバブルメディアとHDDの違い
  
□投稿者/ れい (453回)-(2008/04/02(Wed) 10:52:36)

分類:[Windows 全般] 

OSのリムーバブルメディアとHDDに対する振る舞いの違いついて質問があります。

HDD上のファイルをExplorer上で削除するとリネームされてゴミ箱(Recycled+or+Recycler)内に移動されます。
一方、USBメモリ・フロッピーなどのリムーバブルメディアでは、ファイルを削除する際にゴミ箱に送られません。
Explorerがリムーバブルメディアかどうか判断しているのだと思います。

このように、リムーバブルメディアと固定メディアで違う振る舞いをするのは、
他にどのような場合・状況があるのでしょうか?
対象OSはWindowsです。

私が挙げられるのは、
・削除時の振る舞い。(上記ゴミ箱の話)
・書込みキャッシュ(LazyWriter)の規定の設定。(規定でLazyWriteが無効になっている)
・エクスプローラー上での分類が違う。(リムーバブル記憶域が…に分類される)
の3点だけでした。

どんな些細な違いでも構いません。
教えてください。
引用返信 編集キー/
■16267 / inTopicNo.2)  Re[1]: リムーバブルメディアとHDDの違い
□投稿者/ シャノン (352回)-(2008/04/02(Wed) 11:25:57)
No16264 (れい さん) に返信

HDD で Autorun ってできましたっけ?
引用返信 編集キー/
■16268 / inTopicNo.3)  Re[2]: リムーバブルメディアとHDDの違い
□投稿者/ 774RR (146回)-(2008/04/02(Wed) 11:29:45)
たとえば外付けハードディスクを USB でつなぐときには
りむーばぶる(右下通知領域にsafe-unplugが表示される)+はーどでぃすくなわけですが
そういうことを訊きたい?
引用返信 編集キー/
■16269 / inTopicNo.4)  Re[1]: リムーバブルメディアとHDDの違い
□投稿者/ シャノン (353回)-(2008/04/02(Wed) 11:30:18)
No16264 (れい さん) に返信

あと、使えるファイルシステムとか。
XP だと、リムーバブルメディアは FAT か NTFS(ただし NTFS はクイック削除のための最適化をしていない場合に限る)。
Vista だと、リムーバブルメディアでも普通に NTFS が使えたんじゃないかな。
Vista SP1 以降ではリムーバブルメディアで exFAT っていうのも使えます。XP SP3 でも使えるのかな?

…exFAT は外付け HDD でも使えたような気がする。
USB 外付け HDD は HDD なのかリムーバブルなのかという問題もありそう。
引用返信 編集キー/
■16271 / inTopicNo.5)  Re[2]: リムーバブルメディアとHDDの違い
□投稿者/ れい (454回)-(2008/04/02(Wed) 12:00:51)
返信ありがとうございます。

No16267 (シャノン さん) に返信
> HDD で Autorun ってできましたっけ?

お。気づきませんでした。
これもシェルの機能かしら。

No16268 (774RR さん) に返信
> たとえば外付けハードディスクを USB でつなぐときには
> りむーばぶる(右下通知領域にsafe-unplugが表示される)+はーどでぃすくなわけですが

それもあった!

> そういうことを訊きたい?

はい。そうです。
ユーザーから見える違いでも、見えない違いでも、
シェルレベルでも、ファイルシステムレベルでも、ハードウェアレベルでの違いでも、
何でもいいので、列挙したいのです。

なので、「リムーバブル」の定義も問題になるとは思いますが…、
あらゆる「リムーバブル」を対象にしてるということでお願いします。

No16269 (シャノン さん) に返信
> あと、使えるファイルシステムとか。
> XP だと、リムーバブルメディアは FAT か NTFS(ただし NTFS はクイック削除のための最適化をしていない場合に限る)。
> Vista だと、リムーバブルメディアでも普通に NTFS が使えたんじゃないかな。
> Vista SP1 以降ではリムーバブルメディアで exFAT っていうのも使えます。XP SP3 でも使えるのかな?

なるほど。
それもありました。

それで思い出しましたが、
パーティションの問題もあったような気がします。
パーティションを切ることのできる記憶域とできない記憶域は
リムーバブル/非リムーバブルと関連しているのでしょうか?
それともデバイス特有なのでしょうか?
識者がいたら教えていただければ。

> …exFAT は外付け HDD でも使えたような気がする。
> USB 外付け HDD は HDD なのかリムーバブルなのかという問題もありそう

リムーバブルと非リムーバブルを対比するのが正確だと思いますので、
外付けHDDはリムーバブル属性+HDDでいいと思うのですが、
それも話題にする層で変わってきそうです。

とりあえず手元の環境では、右下に通知もでますし、Explorerの中ではリムーバブルになっています。

eSATAもリムーバブルなのかしら…。

むー。知らない/わからないことだらけです。
引用返信 編集キー/
■16272 / inTopicNo.6)  Re[3]: リムーバブルメディアとHDDの違い
□投稿者/ ネタ好き (18回)-(2008/04/02(Wed) 12:27:33)
■16264 (れい さん) に返信
あまり役に立たない情報かもしれませんが一応書きます。
取り外し可能な媒体やリモートストレージのコードは、ユーザモードに実装されているそうです。
従って、HDDはカーネルモードで、リムーバブルメディアはユーザモードで管理されている事になります。
一々モードを分けている理由はおそらく、取り外し等の操作によりOSに影響を与えないためだと思われます。
そこから連想するに、緊急時にはカーネルを壊さないためにデータを捨てる機能、
各種カーネルオブジェクトとの仲介オブジェクトが多分存在するなどの目に見えない違いもあるかと思います。
その違いにより、直接ドライブへ影響を与える動作・状況ではほぼ全て動作に違いがあると思えばいいと思います。

引用返信 編集キー/
■16276 / inTopicNo.7)  Re[1]: リムーバブルメディアとHDDの違い
□投稿者/ 渋木宏明(ひどり) (684回)-(2008/04/02(Wed) 12:46:48)
渋木宏明(ひどり) さんの Web サイト
「リムーバブルメディア」と「PnP による(デバイス、ドライブの)リムーバブル」は、結果的によく似た振る舞いをしますが、分けて考えた方が混乱しないような気がします。

とくに後者は、Windows 2000, XP, Vista で微妙に扱いが変わってきている印象があります。

引用返信 編集キー/
■16277 / inTopicNo.8)  Re[4]: リムーバブルメディアとHDDの違い
□投稿者/ 774RR (147回)-(2008/04/02(Wed) 12:59:39)
2008/04/02(Wed) 13:00:44 編集(投稿者)

「リムーバブル」という用語を「Safe-Unplug (活線除去)」が可能という意味に解釈するなら
それは対象ハードウェアには関係なくって、そのブツを駆動するデバイスドライバー次第
というか、デバイスドライバーが当該デバイスインスタンスに対して返すフラグ次第
ディスクドライブのプロパティ→DevNodeフラグ→DN_DISABLEABLE
# DN_REMOVABLE とどう違うのか微妙、求む詳細

USB で接続されている SD/CF Card-Reader や USB FlashDisk や外付けハードディスクは
ほとんどすべてが Windows 標準の USB Mass-storage デバイスドライバーで駆動されるので
自動的に活線着脱可能メディアとして扱われてしまう

eSATA はウチ帰れば玄箱があるので見てみます

ウィルス対策ソフトが定期フルスキャンの対象にしないとか、そういう違いもありそう・・・

「てにをは」訂正
引用返信 編集キー/
■16279 / inTopicNo.9)  Re[2]: リムーバブルメディアとHDDの違い
□投稿者/ ネタ好き (20回)-(2008/04/02(Wed) 13:33:49)
2008/04/02(Wed) 13:42:25 編集(投稿者)

ふっと気になったのですが、Windowsでのリムーバブルディスクのデータは、
即時書き込みでしょうか、それとも、メモリキャッシュして適切なタイミングで、
データをデバイスに書き込むのでしょうか?
その辺も考慮せねばならないと思います。

追記
そのタイミングがHDDとリムーバブルディスクで違うかもしれません。
引用返信 編集キー/
■16280 / inTopicNo.10)  Re[5]: リムーバブルメディアとHDDの違い
□投稿者/ 渋木宏明(ひどり) (685回)-(2008/04/02(Wed) 13:35:46)
渋木宏明(ひどり) さんの Web サイト
2008/04/02(Wed) 13:55:32 編集(投稿者)

> ディスクドライブのプロパティ→DevNodeフラグ→DN_DISABLEABLE
> # DN_REMOVABLE とどう違うのか微妙、求む詳細

後者が「取り外し可能(&ホットプラグ可能)な機器」を、後者が「交換可能な記録媒体を扱う機器」を示す属性じゃないのかな?

> eSATA はウチ帰れば玄箱があるので見てみます

内蔵の SATA と区別してないような気がします。(想像)
引用返信 編集キー/
■16295 / inTopicNo.11)  Re[3]: リムーバブルメディアとHDDの違い
□投稿者/ れい (455回)-(2008/04/02(Wed) 15:24:07)
2008/04/02(Wed) 15:48:21 編集(投稿者)

みなさんいろいろありがとうございます。
ぜんぜん理解できてない/混乱していることに気づかされます。

「リムーバブル」という用語自体がよくわかっていなかったので
明確に言わずに質問したわけですが、少し整理ができました。

No16276 (渋木宏明(ひどり) さん) に返信
> 「リムーバブルメディア」と「PnP による(デバイス、ドライブの)リムーバブル」は、結果的によく似た振る舞いをしますが、分けて考えた方が混乱しないような気がします。
No16277 (774RR さん) に返信
> 「リムーバブル」という用語を「Safe-Unplug (活線除去)」が可能という意味に解釈するなら

よくわかってない人々(∋私)の使う「リムーバブル」という用語は

・メディアが交換可能 (=狭義のリムーバブル
・デバイスが交換可能 (=ホットプラグ
・それ以外

と別けられそうです。
ぜんぜん意識せずに言葉を使っていました。
プログラムからみた「記憶域」的には「いつ無くなるかわからない」ものといってよさそうですが、
機能的にはまったく別で、しかも排他的ではないですよね。

USBメモリ = ホットプラグ
ATAPI接続のMO = リムーバブル
USB接続のZip = ホットプラグ+リムーバブル

> 取り外し可能な媒体やリモートストレージのコードは、ユーザモードに実装されているそうです。

ファイルシステムもその下のストレージデバイスも、カーネルモードで動きます。
メディアがリムーバブルなのか、デバイスがPnPなのかは関係ありません。
#今作ってる最中なので、間違いありません。

> ふっと気になったのですが、Windowsでのリムーバブルディスクのデータは、
> 即時書き込みでしょうか、それとも、メモリキャッシュして適切なタイミングで、
> データをデバイスに書き込むのでしょうか?

キャッシュは基本的にファイルシステム層にあります。
ただ上から「これはキャッシュしろ」とか「キャッシュなし」とか指示がきます。
何をもってそういう指示がくるのか、リムーバブルメディア・PnPの場合どうなるのか、
Undocumentedが多くて詳細がよくわかりません。

とりあえず、今まで挙げてもらった振る舞いの違いを
リムーバブル/ホットプラグに別けて調べてみます。

#が、リムーバブルなデバイスが手元にひとつもない。DVDもCDも無いとは…。

追記

MSDNなどでざっと見てみましたが、
「Removable」=「メディア交換可能」と扱っているものばかりでした。
デバイスが着脱可能な場合はメディアが交換可能でなくても記憶域が消える可能性があるので、
その辺はどうなっているのだろう…?

単純にはリムーバブル扱いにするのが楽に思いますが。
もしそうだとしたらどこでリムーバブル扱いにするのでしょうか?
引用返信 編集キー/
■16300 / inTopicNo.12)  Re[4]: リムーバブルメディアとHDDの違い
□投稿者/ 774RR (148回)-(2008/04/02(Wed) 15:48:22)
FILE_FLAG_WRITE_THROUGH とか FILE_FLAG_NO_BUFFERING とかあるから
リムーバブルとかホットプラグとかはあまり関係ない場合が容易に想定されるけど
引用返信 編集キー/
■16301 / inTopicNo.13)  Re[5]: リムーバブルメディアとHDDの違い
□投稿者/ れい (456回)-(2008/04/02(Wed) 15:59:53)
No16300 (774RR さん) に返信
> FILE_FLAG_WRITE_THROUGH とか FILE_FLAG_NO_BUFFERING とかあるから
> リムーバブルとかホットプラグとかはあまり関係ない場合が容易に想定されるけど

それらのフラグはNTFSでは使われますが、
他のファイルシステムではあまり使われていません。
実際、FastFAT実装(Fat32など)/Cdfs実装では一切参照されません。

リムーバブルだとこれらのフラグが設定されるのかと最初は思っていたのですが、
そうでもないようです。

そういった詳細を解説していただければ最高ですが、
とりあえず私の気づいていない「違い」を教えてくれるだけでもかなり助かります。

#AutoRunとか、まったく気づかなかった…
引用返信 編集キー/
■16302 / inTopicNo.14)  Re[6]: リムーバブルメディアとHDDの違い
□投稿者/ シャノン (359回)-(2008/04/02(Wed) 16:03:03)
2008/04/02(Wed) 16:04:51 編集(投稿者)
2008/04/02(Wed) 16:03:15 編集(投稿者)

No16301 (れい さん) に返信
> それらのフラグはNTFSでは使われますが、
> 他のファイルシステムではあまり使われていません。
> 実際、FastFAT実装(Fat32など)/Cdfs実装では一切参照されません。
>
> リムーバブルだとこれらのフラグが設定されるのかと最初は思っていたのですが、
> そうでもないようです。
>
> そういった詳細を解説していただければ最高ですが、
> とりあえず私の気づいていない「違い」を教えてくれるだけでもかなり助かります。

NyaRuRuさんとか降臨してくれないかなー。
http://d.hatena.ne.jp/NyaRuRu/20080318
http://d.hatena.ne.jp/NyaRuRu/20080324/p6
引用返信 編集キー/
■16303 / inTopicNo.15)  Re[6]: リムーバブルメディアとHDDの違い
□投稿者/ ネタ好き (25回)-(2008/04/02(Wed) 16:03:34)
>ファイルシステムもその下のストレージデバイスも、カーネルモードで動きます。

なんと!インサイドWindowsも当てになりませんね。

引用返信 編集キー/
■16304 / inTopicNo.16)  Re[6]: リムーバブルメディアとHDDの違い
□投稿者/ シャノン (360回)-(2008/04/02(Wed) 16:06:27)
No16301 (れい さん) に返信
> それらのフラグはNTFSでは使われますが、
> 他のファイルシステムではあまり使われていません。
> 実際、FastFAT実装(Fat32など)/Cdfs実装では一切参照されません。
>
> リムーバブルだとこれらのフラグが設定されるのかと最初は思っていたのですが、
> そうでもないようです。

最近はフロッピーなんか使わなくなりましたけど(今の俺のマシンには FDD がない)、フロッピーは書き込んだファイルをすぐに読み込むとやたら速かった覚えがありますね。
そのため、ちゃんと書き込めているかどうか、一旦抜いて入れなおしてチェックしていました。
引用返信 編集キー/
■16307 / inTopicNo.17)  Re[6]: リムーバブルメディアとHDDの違い
□投稿者/ 渋木宏明(ひどり) (686回)-(2008/04/02(Wed) 16:14:20)
渋木宏明(ひどり) さんの Web サイト
> リムーバブルだとこれらのフラグが設定されるのかと最初は思っていたのですが、
> そうでもないようです。

基本、CreateFile() にヒント的な意味合いでプログラマが与えるフラグなので、システムが勝手に追加したりはしなさそー

> #AutoRunとか、まったく気づかなかった…

AutoRun はシェルの機能です。
AutoRun を取り上げるなら、AutoRun の後継である AutoPlay も無視できないでしょう。

あと、シェル関係つったら、シェルのファイルコピーは USB メモリが相手の時など、状況に応じてかなり異なる手順でコピーを実行します。
引用返信 編集キー/
■16308 / inTopicNo.18)  Re[7]: リムーバブルメディアとHDDの違い
□投稿者/ れい (457回)-(2008/04/02(Wed) 16:17:54)
No16303 (ネタ好き さん) に返信
> なんと!インサイドWindowsも当てになりませんね。

いやいや。
Inside Windowsにも書かれています。
SMBとかネットワーク系もかなりのコードがカーネルモードです。

#よく動いてるなぁと…。
#カーネルモードで文字列とかネットワーク扱うなんて。

No16304 (シャノン さん) に返信
> 最近はフロッピーなんか使わなくなりましたけど(今の俺のマシンには FDD がない)、

光学ドライブも磁気ドライブも無い…、という時代がすぐそこです:D
引用返信 編集キー/
■16310 / inTopicNo.19)  Re[8]: リムーバブルメディアとHDDの違い
□投稿者/ シャノン (361回)-(2008/04/02(Wed) 16:22:01)
No16308 (れい さん) に返信
> 光学ドライブも磁気ドライブも無い…、という時代がすぐそこです:D

そんなのやだ!
「ローカルコンピュータの復権」運動でもやろうかな。
# 俺はアンチ SaaS です。
引用返信 編集キー/
■16311 / inTopicNo.20)  Re[7]: リムーバブルメディアとHDDの違い
 
□投稿者/ 774RR (149回)-(2008/04/02(Wed) 16:22:37)
autorun.inf は微妙に有効な記憶があったので試してみるテスト
# マルウェアの被害症状で見かけた覚えが http://www.higaitaisaku.com/
---autorun.inf---
[autorun]
ICON=MYICON.EXE,1
と MYICON.EXE を D:\ において再起動!
エクスプローラのドライブアイコンが想定どおりに変わりましたがこれって効いてる、ってことでおk?
OPEN= は怖いので試しておりません。

引用返信 編集キー/

次の20件>
トピック内ページ移動 / << 0 | 1 >>

管理者用

- Child Tree -