問題タブ [ext4]
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.
linux - フォーマットせずにext4パーティションを縮小する方法は?
最近、Ubuntu 13.04 をインストールし、20 GB を割り当てました。システムのインストール済みスペースが 10 GB 未満である。では、フォーマットせずに 10 GB に縮小できますか? つまり、パーティションに大きな空きスペースを作りたくないのです。
java - Ubuntu デスクトップで Java がこのファイルを作成できないのはなぜですか?
ファイル システム (ext4 を使用する Ubuntu 12.04 デスクトップ) に次の既存のディレクトリ構造があります。
...そして次のJavaコード:
...それは次の例外を投げかけています:
ここで何が起こっているのですか?「そのようなファイルまたはディレクトリはありません」と表示されますが、それはcreateNewFile()
私のためにすべきことではありませんか? 前もって感謝します!
linux - ext4 を操作してディレクトリ ループを作成する
学術目的で、いくつかのファイルシステムをいじっています。私の目標の 1 つは、各ファイル システム内にディレクトリ ループを作成することです。現在、何らかの理由で他のように機能しないext4に固執しています。
「top」と「bottom」の 2 つのフォルダーを作成し、ext4 のディスク上の構造を操作して、下から上に戻る何らかのハード リンクを作成しようとした結果、無限ループが発生しました。
問題は、ファイルシステムを でブラウズするとls
、両方のフォルダーが表示されないか (下のフォルダーのみを操作した場合)、または上に表示されるが、上に表示されるディレクトリ リストが次のように壊れていることです。
これまでに行った手順は次のとおりです。
- トップの i ノード (エントリ 12) の i ノード テーブル エントリを見つけ、ブロック 3510 を指していることを確認します。
- 次の i ノード テーブル エントリは下部 (エントリ 13) です。ブロック 3511 を指していることを確認してください。
- ブロック 3510 に進みます。そして..そのままですが、一番下のiノード番号を12に変更します
ls
-> Errorでディレクトリにアクセスしてみてください- ブロック 3511 に進み、 を変更します。inode 12 へ、.. inode 2 へ (ルートディレクトリ用)
ls
-> Errorでディレクトリにアクセスしてみてください- i ノード テーブルの i ノード エントリ 13 を変更し、ブロック 3510 を指すようにします。
- いつもと同じエラー
i ノードと i ノード エントリ内のエクステント ツリーにハッシュサムがあることは認識していますが、ステップ 1 から 3 によってこれらのハッシュ値が無効になるべきではないことを理解しています。の内部動作に関する私の理解は、ls
ここで何が間違っているのかを見つけるにはおそらく低すぎます。
私が間違っていることを誰かが知っていますか、それとも私がやろうとしていることを達成するためのより良いアプローチがありますか? 学士論文のためにそのループが必要なので、助けていただければ幸いです。
android - Android バイナリ実行ファイル
実行可能ファイルを電話機にプッシュしようとしています。ファイルは によってコンパイルされましたNDK
。しかし、ファイルをデバイスにコピーした後、彼らは許可を失いました (実行不可になりました)。
この問題 (権限の喪失) を修正するために Android のカーネル ソースやその他のソースを修正する解決策はありますか? 問題になる可能性があることは確かです ext4
...
chmod
注:毎回使用したくありません。
linux - Linux の NTFS パーティションに Subversion (svn) リポジトリがありますか?
Linux で svn を使用する場合、NTFS パーティションで svn リポジトリを作成して使用できますか? つまり、NTFS パーティション上のリポジトリと、EXT4 パーティションとの間のチェックアウトとコミットです。
Linux での NTFS サポートは制限されており、アクセス許可やシンボリック リンクなどはサポートされていません。それ、またはその他の制限により、問題が発生しますか?
私が質問している理由は、1) リポジトリを Dropbox フォルダ (NTFS パーティション上にある) に移動するか、2) リポジトリをメモリ スティック (NTFS パーティションである可能性がある) に移動することを考えているためです。
私の使用例は非常に単純です。リポジトリを使用しているのは私だけです。現在、私のリポジトリは EXT4 にあり、リポジトリが配置されているのと同じマシンから、または svn+ssh:// を介して 2 番目のマシンからアクセスします。ただし、上記のオプションのいずれかを選択した場合、アクセス戦略は明らかに変わります。
linux - アップロードされたファイルをサブディレクトリに配布するには、どの方法が良いですか?
2 桁の 16 進数で名前が付けられた 1 つのレベルのサブディレクトリがあり、その中に 3 桁の 16 進数で名前が付けられた別のレベル (またはその逆) があり、ファイルがハッシュ関数を使用してかなり均一に分散されているとします。
だから、それはこのように見えるはずです
または多分このように
数学的には、256x4096 と 4096x256 は、ファイルの配布用に最終的に同じ数のフォルダーを提供します。ファイルシステムのパフォーマンスに関して、違いはありますか?
ありがとうございました!
編集: 問題のファイルシステムは ext4 です
c++ - Linux AIO: 不十分なスケーリング
Linux 非同期 I/O システム コールを使用するライブラリを作成していますio_submit
が、ext4 ファイル システムで関数のスケーリングが不十分な理由を知りたいです。可能であれば、io_submit
大きな IO 要求サイズでブロックされないようにするにはどうすればよいですか? 私はすでに次のことを行っています(ここで説明されているように):
- を使用し
O_DIRECT
ます。 - IO バッファーを 512 バイト境界に合わせます。
- バッファー サイズをページ サイズの倍数に設定します。
カーネルが でどれくらいの時間を費やすかを観察するために、 と を使用しio_submit
て 1 Gb のテスト ファイルを作成し、システム キャッシュ ( ) を繰り返しドロップして、ファイルのより大きな部分を読み取るというテストを実行しました。反復ごとに、読み取り要求が完了するまでにかかった時間と待機に費やされた時間を出力しました。カーネル バージョン 3.11 の Arch Linux を実行している x86-64 システムで、次の実験を実行しました。マシンには SSD と Core i7 CPU が搭載されています。最初のグラフは、読み取られたページ数と終了までの待機時間の関係を示しています。2 番目のグラフは、読み取り要求が完了するまでの待機に費やされた時間を表示します。時間は秒単位で測定されます。dd
/dev/urandom
sync; echo 1 > /proc/sys/vm/drop_caches
io_submit
io_submit
比較のために、 を使用して同期 IO を使用する同様のテストを作成しましたpread
。結果は次のとおりです。
非同期 IO は、約 20,000 ページの要求サイズまで期待どおりに機能しているようです。後はio_submit
ブロック。これらの観察は、次の疑問につながります。
- の実行時間が
io_submit
一定でないのはなぜですか? - この不適切なスケーリング動作の原因は何ですか?
- ext4 ファイル システム上のすべての読み取り要求を、それぞれのサイズが 20,000 ページ未満の複数の要求に分割する必要がありますか?
- この「魔法の」値である 20,000 はどこから来たのでしょうか? 自分のプログラムを別の Linux システムで実行する場合、スケーリング動作が低下することなく、使用する最大 IO 要求サイズを決定するにはどうすればよいですか?
非同期 IO のテストに使用されるコードは次のとおりです。関連があると思われる場合は、他の情報源のリストを追加できますが、関連があると思われる詳細のみを投稿しようとしました.
javascript - Ext4.2.1 別のブラウザ タブから内部にウィジェットを含む新しいブラウザ タブを開く方法
アプリケーションwindow.open()
からのように、新しいブラウザ タブでウィジェットを開くにはどうすればよいですか。Ext4.2.1
「最大化」ツールと同様に、新しいブラウザー タブでウィジェットを開くことができる必要がありますが、すべてを新しいタブ ウィンドウで開くことができます。 open(url) を使用して、ウィジェットをウィンドウに渡します。しかし、難しいのはウィジェットを渡すことです。渡すウィジェットがたくさんある可能性があるため、ページにウィジェットをハードコードすることはできません。
どんなアイデアでも役に立ちます。