7-2. バイナリ処理sizeコマンドの仲間たち 今回もsizeコマンド。 お気に入りのsizeコマンドですが、周辺についても知りたくなりました。 sizeコマンドはどのパッケージに含まれるのでしょうか。 binutilsのようです。そういえば、binutilsって、... 2018.08.237-2. バイナリ処理
7-2. バイナリ処理さてと、truncate本物と比較するか マイtruncateが一応動くようになったので、本物truncateコマンドと処理時間比較していきます。 timeで計測します。 新規バイナリデータ生成。100000000サイズのオール0バイナリを生成します。 まずは、マイtru... 2018.04.247-2. バイナリ処理
7-2. バイナリ処理マイtruncateを作る(その4) statを使ったファイルサイズの取得方法を覚えたところで、まだまだしょぼい自作truncateのプログラムを改造します。 これが先回作ったtruncateプログラムです。 statを使うためのヘッダを追加 変更前 ... 2018.04.187-2. バイナリ処理
7-2. バイナリ処理読み込みバッファサイズ readを使った読み込みではバッファサイズを多めにしていたのでfgetcよりも早くファイルが読めました。サイズをいろいろ変えて時間を確認してみます。 このプログラムを使います。 ついでにtest.datが1Gは大きすぎて待ち時間... 2018.04.127-2. バイナリ処理
7-2. バイナリ処理fopenとfgetcとfputcとfcloseを使う 前回はシステムコールを使ってファイル読み出しをしたので、 今回はライブラリ関数を使ってファイル読み出ししてみます。 man 3でそれぞれ型の確認。 ではプログラムです。バッファがいらない分、すっ... 2018.04.117-2. バイナリ処理
7-2. バイナリ処理openとreadとwriteとcloseを使う 前回確認したtruncateソースではopen、closeを直接使ってました。今回はopen、read、write、closeを使ってファイル読み込みをしたいと思います。 各関数の使い方はman 2 ~で確認しておきます。 ... 2018.04.107-2. バイナリ処理
7-2. バイナリ処理マイtruncateを作る(その2) 今回は、-sオプションで元ファイルよりもサイズを小さく指定した場合の、切り詰めする処理を作ります。 前回のプログラム。 元ファイルのデータを保存する場所としてtmp配列を追加します。 使用するときの制約として元ファイルが1... 2018.04.087-2. バイナリ処理