2019-01-22 23:04:43
概要grep雰囲気で使っているマンだったのでとざっくり調べてみた。l
基本grep 検索正規表現 ファイル名
ワイルドカードが使えるので、例えばカレントディレクトリ内の全ファイルを対象とした場合は、
grep "foo" ./*
といった具合にできる。
カレントディレクトリ以下のディレクトリも対象にしたい場合は、-rオプションを使う。
grep -r "foo" ./*
オプションよく使いそうなものだけピックアップした。
-i
大文字・小文字を区別しない
-v
一致しないものを対象にする
-n
検索結果で行番号を表示
-l
検索結果でファイル名を表...
OS
Linux
grep
2018-11-30 17:21:19
概要試して理解 Linuxの仕組みのメモリ管理の章を読んでいて理解の乏しい単語があったのでいくつかピックアップしてまとめる。
OOM
Out of memory
システムが物理メモリと仮想メモリを使い切ったことにより、新規にメモリを確保できない状態
OOM Killer(Out of Memory Killer)
OOMのときにプロセスを強制終了させることで空きメモリーを確保するLinuxカーネルの仕組み
仮想記憶
OSなどが物理メモリを主記憶装置に見えるように仮想化させたメモリ
物理メモリ上のバラバラのアドレスを連番でのアドレスとして扱えるようにしたもの
ハードディスク上の一部の領域を...
OS
Linux
メモリー
2018-07-19 12:56:12
概要Linuxのパーミッションについてまとめる
パーミッションの読み方ファイル種別最初の1文字は、ファイル種別を表している。
ファイルd ディレクトリl シンボリックリンク
以降3文字単位でファイルのオーナー別に権限を表している。
2~4文字目 ユーザー ファイルの所有者に対する権限5~7文字目 グループ ファイルの所有グループに対する権限8~10文字目 その他 その他に対する権限
権限の種類権限の種類は以下の3つある。
r 読み取りw 書き込みx 実行
ファイルとディレクトリのどちらかによって意味合いが変わるので注意。
ファイルの場合r 読み取り ファイルの内容を読み出すこと...
OS
Linux
パーミッション
2018-07-08 22:12:47
概要Unixコマンドのメモ。
jqJSON形式のデータを加工するコマンド。
JSONのPretty Printecho '[{"name": "Tom", "age": 20}}]' | jq .
Pretty Print以外にもオブジェクトからプロパティを指定してデータを取り出したり、オブジェクトの長さを取得したり、色々な使い方がある。
tee標準入力を標準出力とファイルの両方に出力する。sudoが使える。オプションなしで上書き、オプション-aで追記。
echo 'hello world' | sud...
OS
unixコマンド
jq
tee
2018-06-25 01:20:02
概要プロセスとスレッドの違いについてまとめる
プロセスとは
プログラムの実行単位
CPU上で実行される
リソースの共有はできない
専用のメモリ領域を使用
仮想アドレス空間を保持している
プロセスの切り替えには仮想アドレスと物理アドレスのマッピング必要
プロセスの保持するデータ構造プロセスがメモリに保持しているデータ構造は2つのセグメントに分かれている。
テキストセグメント
プログラムの命令列(実行されるプログラム自体)
読み取りだけ
データセグメント
PDA(Processor Data Area)
プロセッサの情報やプロセス管理用のデータなど
スタックポインタやプログラ...
OS
os
スレッド
プロセス
スタック
ヒープ
2018-05-24 12:35:03
概要シンボリックリンクとハードリンクの違いについてまとめる
前提
inode
データ構造
ファイルシステム上の属性情報(作成者、グループ、作成日時など)をデータとして持つ
ls -i1 /またはstat /でinode番号を確認できる
シンボリックリンクとは
元のファイルまたはディレクトリのパスを参照するディレクトリエントリを追加
実験touch a.md
ln -s a.md a_symbolic_link.md // シンボリックリンクを作成
ls -i1 a.md a_symbolic_link.md // inodeが違うことが確認できる
元ファイルを移動すると参照不可
元ファ...
OS
シンボリックリンク
ハードリンク
2018-05-12 13:08:23
概要OS周りの勉強をしている時に調べたこと。
swapメモリが足りない時にメモリの中身をハードディスクに移す機能のこと
ページキャッシュとは
CPUはストレージからデータを直接読み込みができない
データは一旦メモリに読み込む必要がある
メモリに読み込まれたデータはページキャッシュとして再利用できる
ファイル単位でアクセスする時に使用されるキャッシュ
バッファキャッシュ
ブロックデバイスを直接アクセスする時に使用されるキャッシュ
slabキャッシュ
ディレクトリのメタデータ情報を格納するdentryやファイルのメタデータ情報を格納するinode構造体などをキャッシュしているカーネル内のメモリ...
OS
os