JM プロジェクトは、主に Linux 関連のマニュアルページの日本語ページを翻訳・公開しています。
... include < unistd.h > #include < stdlib.h > #include < pthread.h > #include < malloc.h > #include < errno.h > static size_t blockSize; static int numThreads, numBlocks; #define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); \ } while (0) static void * ... hread (including the main thread) allocates a different amount of memory */ for (int j = 0; j < numBlocks; j++) if (malloc(blockSize * (2 + tn)) == NULL) errExit("malloc-thread"); sleep(100); /* Sleep until main thread terminates */ return NULL; } int mai ... -blocks block-size [sleep-time]\n", argv[0]); exit(EXIT_FAILURE); } numThreads = atoi(argv[1]); numBlocks = atoi(argv[2]); blockSize = atoi(argv[3]); sleepTime = (argc > 4) ? atoi(argv[4]) : 0; pthread_t *thr = calloc(numThreads, sizeof(*thr)); if (thr == ... ... 指定された data_source_device が使用される。 このデバイスにはデータ・ディレクトリ・間接 (indirect) ブロックが含まれる。 -b blocksize 通常のように正しいブロックサイズを検出する動作を行わず、 指定したブロックサイズをそのファイルシステムに用いる。 -s superbl ... ap filespec filespec で指定された inode の (inode テーブルにおける) inode データ構造の場所を表示する。 init_filesys device blocksize device 上に、デバイスサイズ blocksize の ext2 ファイルシステムを作成する。 このコマンドは、すべてのデータ構造を完全に初期化 ... い。 ncheck inode_num ... 指定した inode 番号それぞれに対応するパス名のリストを表示する。 open [-w] [-e] [-f] [-i] [-c] [-b blocksize] [-s superblock] device 編集の対象とするファイルシステムをオープンする。 -f フラグをつけると、通常ではオープンできないよう ... ... い。 ファイルシステムを熟知したユーザが、ひどい状態に壊れてしまった ファイルシステムから、残りを調べるときに用いられる。 -oB blocksize ファイルシステムを調べるときに、コマンドラインから指定した ブロックサイズを用いる。このオプションは通常は必要ない。 ファイ ... ... c, char *argv[]) { #define MAX_ALLOCS 2000000 char *alloc[MAX_ALLOCS]; int numBlocks, freeBegin, freeEnd, freeStep; size_t blockSize; if (argc < 3 || strcmp(argv[1], "--help") == 0) { fprintf(stderr, "%s num-blocks block-size [free-step " "[start-free [en ... d-free]]]\n", argv[0]); exit(EXIT_FAILURE); } numBlocks = atoi(argv[1]); blockSize = atoi(argv[2]); freeStep = (argc > 3) ? atoi(argv[3]) : 1; freeBegin = (argc > 4) ? atoi(argv[4]) : 0; freeEnd = (argc > ... ; j++) { if (numBlocks >= MAX_ALLOCS) { fprintf(stderr, "Too many allocations\n"); exit(EXIT_FAILURE); } alloc[j] = malloc(blockSize); if (alloc[j] == NULL) { perror("malloc"); exit(EXIT_FAILURE); } } printf("\n============== After allocating blocks ===== ... ... はファイルシステムのチェックが終わったときに プライマリのスーパーブロックを適切な値に更新するかどうかの 確認を求める。 -B blocksize 通常 e2fsck は、 適切なブロックサイズを探すために スーパーブロックを様々なブロックサイズでサーチする。 この作業は無駄な場合 ... ... ウントオプション (注意: fat は独立したファイルシステムではなく、 msdos , umsdos , vfat 各ファイルシステムの共通部分である。) blocksize=512 / blocksize=1024 / blocksize=2048 ブロックサイズを設定する (デフォルトは 512)。 uid= value と gid= value すべてのファイ ... てもう 1 つ、loop デバイスを用いたマウントがある。 例えば以下のコマンド mount /tmp/fdimage /mnt -t msdos -o loop=/dev/loop3,blocksize=1024 は loop デバイス /dev/loop3 をファイル /tmp/fdimage に関連付け、そしてこのデバイスを /mnt にマウントする。 このタイプ ... ... ものを表します。 %s バイト単位によるファイルサイズ。 %S ファイルが「まばら」である度合い (sparseness) を表します。 この値は (BLOCKSIZE*st_blocks / st_size) として計算されます。 ある程度の大きさを持つ普通のファイルの場合、 その正確な値は、 システムによってさ ... ら」な度合いは、 普通は 1.0 未満です。 一方で、 間接ブロックを使用しているファイルの場合は、 1.0 以上になることがあります。 BLOCKSIZE に設定される値は、 システムに依存しますが、 通常は 512 バイトです。 ファイルサイズが 0 の場合、 この値は未定義として出力さ ... 日本語の文書やマニュアルを配布している個人/プロジェクトへのリンクです。