タグ

ブックマーク / moriwaka.blogspot.com (4)

  • freeの出力が大幅改善された話

    最近freeコマンドを叩くとこんな感じで出力されます。 $ free total used free shared buff/cache available Mem: 20209620 3859396 6594188 502492 9756036 15323144 Swap: 32767996 0 32767996 availableってなんでしょう? そして -/+ buffers/cache の行がなくなっています。 その背景をちらっと紹介します。 最近linuxの3.14で/proc/meminfo に MemAvailable というフィールドが追加されました。RHEL7.0や6.6にもバックポートされています。(RHEL6.6では互換性に配慮してデフォルトではdisableされています) http://git.kernel.org/cgit/linux/kernel/git/to

  • 元号の処理がどこで行われているか探してみる

    この記事はLinux Advent Calendar 2016の4日目の記事です。 わりとマイナーな機能ですが、linuxでja_JP.utf8のlocaleで以下のようにコマンドを叩くと、元号をちゃんと処理して表示してくれたりします。 $ LC_TIME=C date +'%EY' 2016 $ LC_TIME=ja_JP.utf8 date +'%EY' 平成28年 ちょっと前に国の象徴のおじいさん(82)が「退位したい」みたいなこと言ってましたし、いいかげん年なのでしんどかろうと思います。法律の要件とかはわかりませんが退位が行われれば元号が変わるでしょうから、庶民の我々も少なくともこのコードを修正しないといけないわけです。 これはどこからきているのかを探りましょう。 $ ldd `which date` linux-vdso.so.1 (0x00007ffd14593000) lib

    mapk0y
    mapk0y 2016/12/04
  • 最近のCPUでは乱数生成がはやい話

    Ivy Bridge以降のCPUではCPU内に乱数生成器が含まれています。それに対応した最近のrngdをつかうとそれなりに乱数生成が速くてしあわせになれます。 linuxでは乱数を取得するために /dev/random と /dev/urandom の2種類のデバイスがあります。それぞれの説明は man 4 random にみっちり書いてありますが、かいつまんで言うと: random: カーネルがあつめてきたノイズを元に品質の高い疑似乱数を生成します。ノイズが不足するとblockします。 urandom: カーネルがあつめてきたノイズを元にそこそこの品質の疑似乱数を生成します。品質はそこそこですがblockしないので速いです。 ためしにcat /dev/random とかすると1kとか4kくらい乱数が出力されて止まってしまう。これでは割と足りないので選択肢が2種類。1) 品質をあきらめてu

  • RHELに機能拡張リクエストをだすためのノウハウ

    RHELは当たり前のようにサポート窓口で機能拡張リクエストを受け付けるんですが、あまりそういうノウハウとか知られてない気がするのでメモ ポリシー的に機能拡張が入れられるProduction 1の製品にリクエストを出す(今からならRHEL7)。 RHELにはライフサイクルポリシーがあります。この内機能拡張を入れることができるのはProduction 1とよばれる最初の4.5年間だけ。 今でているバージョンの次(時期によっては次の次)のバージョンがどのフェーズにあたるか確認すると無駄になりません。 Production 2以降では重大なバグの修正ならいいのですが機能拡張はポリシー上対応できません。 RHEL6のProduction1は2016年第2四半期におわるので、今から新規の機能をいれてと言うとほんとうにギリギリ。今からリクエストするならRHEL7が狙い目です。 できるだけ何をどうすればい

    mapk0y
    mapk0y 2015/03/09
  • 1