問題タブ [tmpfs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1900 参照

linux - Linux のプロセス間の write(2)/read(2) アトミック性

同じファイルに作用する 2 つのプロセスがある場合があります。1 つはライターとして、もう 1 つはリーダーです。ファイルは 1 行のテキスト ファイルで、ライターはループ内でその行を書き直します。リーダーは行を読み取ります。擬似コードは次のようになります。

ライター プロセス

読者のプロセス

readbuf両方のプロセスをしばらく実行した後、 が または のいずれかxxxxxxxxxxxxxxxxyyであることがわかりましたyyyyyyyyyyyyyyyyxx

私の理解では、書き込みは最大 512 バイトのサイズでアトミックになるということでした。しかし、私の実験では、アトミック性は 16 バイトのみのようです。

man ページには、通常のファイルのアトミック性については何も記載されていません。512 バイトのパイプのアトミック性についてのみ言及されています。

tmpfs と ext4 でこれを試しましたが、結果は同じです。を使用するとO_SYNC、ext4 の書き込みがアトミックになり、ディスクにヒットするまで書き込みが返されないため、理解できO_SYNCますが、tmpfs ( /dev/shm) には役立ちません。

0 投票する
1 に答える
669 参照

lua - 実行後に Lua tmpfile を保持する

tmpfile() として表されるファイルをアップロードし、削除してスクリプトを終了します。tmpfile を削除した後、このファイルをハードリンクしてコンテンツを保持する方法は?

ハンドルでファイルの名前を取得する方法は?

このファイルは大きすぎて、別のファイルにバイト単位でコピーできません。

0 投票する
0 に答える
455 参照

linux - docker コンテナのディスク容量の使用状況を理解する方法は?

ホストのディスク容量の使用状況は次のとおりです。

Docker コンテナーを起動した後、このコンテナーのディスク使用量は次のようになります。

2コンテナ ディスクの使用について質問が あります。

(1) コンテナ内のtmpfs/dev/mapper/rhel-rootは、ホストと同じディスク/メモリ空間を直接共有していますか?

(2)rootfsコンテナの場合、このファイルシステムはどこにありますか? 印刷されている99Gように、 があるので、すべての99Gディスク容量を使用できますか?

0 投票する
0 に答える
248 参照

mysql - Vagrant で MySQL に tmpfs を使用しようとするとエラーが発生する

Symfony を実行するための Vagrant マシンがあり、MySQL データベースと多くの対話を行います。少し高速化するために、データディレクトリに tmpfs ファイルシステムを使用することを考えました。データディレクトリは /var/lib/mysql にあるので、私が試したのは次のとおりです。

1) mysql サービスを停止します。sudo service mysql stop

2) tmpfs をマウントします。sudo mount -t tmpfs -o size=512M tmpfs /var/lib/mysql

3) mysql を起動します。sudo service mysql start

そして、次のエラーが表示されます。

systemctl status mysql.service出力は次のとおりです。

あまりにも多くの情報を提供しない...これをデバッグする方法または私が間違っていることについてのアイデアはありますか? ありがとう!

0 投票する
1 に答える
100 参照

filesystems - tmpfs で Linux ドライバーのコード セグメントを見つける方法は? (リアルタイム)

私はdrv1というキャラクタードライバーを持っており、ユーザーアプリケーションはioctlそれと通信するために使用し、パラメーターを送信しますstruct file *filpdrv1のコード セグメントのアドレスを知りたいのですが、いくつかの問題に遭遇しました。

最初はstruct file *filp便利かもしれないと思ってソースコードの定義を見て、ポインタを見つけましたstruct inode *f_inode; /* cached value */。そこでざっくりと定義を調べてみましたstruct inode(tmpfsのときは詳しくないので正しいかどうかわかりませんが); struct address_space *i_mappingという名前のポインターが必要なようです。しかし、深く掘り下げて行き詰まる方法がわかりません。には、次のような複雑なデータ構造がいくつかありますstruct address_space

ドライバdrv1のデータは、という形で整理されているということradix_tree_rootでしょうか。それとも、何か他のものを見逃したということですか?

0 投票する
1 に答える
4999 参照

python - python: IOError: [Errno 36] ファイル名が長すぎます:

次のように(CentOS 6.5の下で)tmpfs内にファイルを作成したい:

しかし、IOError: [Errno 36] File name too long: ...エラーが発生しました。どうすれば修正できますか?