• 締切済み

Vノードについて

UNIXのVノードについて、ネット検索でいろいろと調べましたが、わかりませんでした。 Vノードについて、教えてください。

みんなの回答

回答No.1

UNIX(に限らずたいてのOS)はいろんなタイプのファイルシステム を扱えますが、そのタイプごとにファイルに関してどのような情報 が保持されているか、そのファイルをどのように取り扱うかが異な ります。 ファイルの情報は使用中にメモリに入れておくことになりますが、 タイプによらない統一的な方法で格納するのが得策です。そこで、 どのタイプでも最小限必要となる情報をファイルごとに格納したも のが vnode です。メモリ中には vnode の表が用意されます。 vnode には、単に最小限の情報だけでなく、タイプに固有の情報の 格納場所や、タイプによって異なるファイル操作用の関数のポイン タなども保持されます。 UNIXの標準のファイルシステムでは、inode というファイルごとの 情報がファイルシステム内に保存されています。それ1種類しかファ イルシステムがないころのUNIXでは、このinodeをメモリにそのま まコピーして利用していましたが、ファイルシステムの種類が増え た時にこれを一般的に拡張してvnodeが生まれました。従って、 UNIXの系統によってはvnodeを使わない実現をしているものもあり ます。 vnodeの解説は、そこらのWEBページや学部レベルのOSの教科書では、 なかなかないかもしれません。「UNIX 4.3BSDの設計と実装」とか 「The Design and Implementation of the 4.4BSD Operating System」 あたりを読むのがいいかと思います。

enoppi
質問者

お礼

すばやい回答、ありがとうございます。 とてもわかりやすい内容で、参考文献まで紹介していただき、ありがとうございました。

関連するQ&A

  • 新しいノード

    TreeViewで新しいノードを作成した時、 その新しくできたノードを選択状態にするには どうすればいいのでしょうか? Lastノード、Nextノードを使ってみたのですが、 うまく取得できませんでした。 お願いします。 開発環境はVB.Net2003です。

  • ノードとは

    XMLの勉強をしていると ノード 【node】ということばが出てきます。 しかし解説書にはノードそのものの意味が 見つかりません。 gooの辞典では (1) 結節。節点。交点。 (2) 通信ネットワーク・物流の中継点。拠点。 と出るのですが、どれもしっくりきません。 XMLにおけるノードとはどのような意味に なるのでしょう ノード=??

  • UNIX上のアプリケーションで別ノードのDBを参照するには?

    お世話になっております。 UNIXの自ノード内OracleDBにODBCにてアクセスするアプリケーションがあるのですが、これを他ノードに移設したいと考えております。 この際、他ノードからのOracleへのアクセスに必要な設定は何がありますでしょうか?(ORACLE_SID等) アプリケーションはProCで作成したものです。 よろしくお願いします。

  • あるノードリストに、特定の名前のノードが存在するかどうか調べたい

    ある MSXML2.IXMLDOMNodeList に、特定の名前のノードが存在するかどうか調べたいのですが、 どのようにすればよいでしょうか。 全てのノードを調査すれば私の知識でもできないことはないのですが、 便利なメソッド等はないかと思いまして。。。 (「haschildnodes」って、「特定の」子ノードの存在は調べられませんよね・・・?) なお、VB.NETでコーディングしています。 ご回答よろしくお願いします。

    • 締切済み
    • XML
  • ノードの削除

    removeAllChildren()を使って子ノードを削除させたのですが、上手く削除できません。削除はされているようなのですが、repaint()を使っても親ノードから伸びる線は消えているのですが、削除したはずのノードが残っている状態です。どうしたらよいのか分かりません。 教えてください。よろしくお願いします。

    • ベストアンサー
    • Java
  • FATやNTFSのファイルにUNIX のiノード番号に相当する情報はあるでしょうか?

    お世話になります。Windows系OSの知識を深めたいと考えている者です。 FATやNTFSでどうしてもわからないことがあります。 御存知の方がおられたら教えて頂けないでしょうか。 UNIX系OS(iノードと呼ばれるファイル管理システムが用いられています)で 管理されるファイルには、iノード番号と呼ばれる情報があります。 UNIXのコマンドで ls -ali と入力すれば確認できる情報で、UNIX上にファイルを最初に作成した時に OSが割り当てるユニークな番号です。 iノード番号は通常の場合はあまり意識しませんが、 悪意のある改ざんをチェックしたりする際に用いられます。 どういうことかというと、 例えばファイルAのサイズが1KB、最終更新日時が10月4日22時22分だと仮定します。 もし悪意のある人がいて、このファイルAを改ざんしようとしたとします。 パソコンで「ファイルのサイズが1KB、最終更新日時が10月4日22時22分」だけれども ファイルの内容はUNIX上のファイルAと異なるものを作成し、 パソコンでtar等でアーカイブし、それをUNIXに転送し、解凍したものを UNIX上の本来あるべきファイルAを上書きしたとします。 このようなことを行うと、ファイルサイズやタイムスタンプからは 改ざんが行われたかどうかは確認できませんが、 iノード番号が全く別のものになってしまいます。 (上書きした時点でファイルAの iノード番号が新しいものになります。 UNIX系OS用に Tripwire等の改ざんチェックソフトもありますが、 Tripwire も自分で試したことはありませんが iノード番号をチェックしていると 教えてもらったことがあります。) 説明が長くなりましたが、 (1)FATやNTFSで管理されるファイルに、iノード番号に相当する情報はあるでしょうか? (2)もしあるなら、どのような方法(DOSコマンドや専用ツール等)で確認できるでしょうか? 以上よろしくお願いします。

  • ノードに関する問題

    以下のようなノードがあり、各ノード間の移動コストを考える。 なおノード A,Bの最小移動コストを X(A,B)と表す。 (1)全ノードの最小移動コストの平均値はいくらか。 (2)最小移動コストの平均値を最も減少させるために新たに 1 本の経路を引いた。 どのノード間に新たな経路を引けばよいか。 という問題です。 数学の問題を解く中でこの問題が出てきました。この手の問題をやったことがなくて どうやってやればいいかも分かりません。 これは情報学ですか。 この問題の解き方をご存知の方、ご指導よろしくお願いします。

  • js 親ノード

    javascriptの Node.appendChild()の使い方に親ノード、子ノードとあるのですが これは親要素、子要素とは違うのですか? 以下引用 Node.appendChild() メソッドは、特定の親ノードの子ノードリストの末尾にノードを追加します。追加しようとしたノードが既に存在していたら、それは現在の親ノードから除かれ、新しい親ノードに追加されます(他のノードに追加する前にそのノードを親ノードから削除する必要はありません)。

  • 改行がノード?(JAXP)

    xmlのノードについてですが、 <talkset> <name type="first">abc</name> <comment>hello!!</comment> </talkset> というxmlファイルがあった場合に、 JAXPでの、getNodeList()で全てのノードリストを 得ます(mynodelist=root.getNodeList())。 ここで、mynodelist.item(i)として、 上から、ノードを見ていくプログラムを作ったの ですが、 まず、最初にテキストノード(<talkset>の横の改行) 、次に<name>ノードがきて、次にテキストノード( </name>の横の改行?)が取り出されます。 この場合、本来、<name>ノードの後は属性ノードである type、次に、テキストノード(abc)そしてその後に、 改行(テキストノード)が取り出されるべきだと思う のですが、そうなりません(type属性と、abcが、 ノードとして、取り出せない)。 なにか分かる人、お願いします。

    • ベストアンサー
    • XML
  • ノードの削除

    フォームから送信した内容に対応するノードを DOMツリーから削除する方法が思いつかず困ってます。 var kekka = root.selectNodes(XPath); のようにして直接ノードリストを取得しています。 ●.removeChild(▲)を利用してノードが削除できることはわかるのですが、 今回の場合の、●▲に入る変数がまったく検討がつきません。