タグ

ブックマーク / blog.yuuk.io (2)

  • Go言語によるCLIツール開発とUNIX哲学について - ゆううきブログ

    この記事ははてなエンジニアアドベントカレンダー2014の8日目です。 今回は、Go言語でサーバ管理ツール Mackerel のコマンドラインツールmkr を作るときに調べたこと、考えたこと、やったことについて紹介します。(mkr は現時点では開発版での提供になります。) コマンドラインツールについて コマンドラインツールを作るにあたって、@deeeet さんの YAPC Asia 2014 での発表資料が非常に参考になります。 書籍 UNIXという考え方ーその思想と哲学 の内容をベースに、コマンドラインツールはどうあるべきかということが丁寧に説明されています。 上記資料から引用させていただくと、コマンドラインツールにおいて重要なポイントは以下の7つであるとされています。 1つのことに集中している 直感的に使える 他のツールと連携できる 利用を助けてくれる 適切なデフォルト値を持ち設定もでき

    Go言語によるCLIツール開発とUNIX哲学について - ゆううきブログ
  • Linuxカーネルにおけるネットワークスタック周りのChangeLog勉強メモ (2.6.0 ~ 2.6.20) - ゆううきブログ

    最近,OSのネットワークスタックに興味があって,Linuxカーネルのネットワークスタック実装の変遷について調べてみた. 変更内容の粒度は割りと適当. TCPとかFireWallとかNIC周りは興味があるのでだいたい書いてる. Wireless系は興味ないので全部削ってる. ネットワークスタック周りだけでもかなり量が多かったので,とりあえず2.6.0から2.6.20までをまとめた. Linux 2.6.x 2.6.5 (2004/04/04) http://kernelnewbies.org/Linux_2_6_5 Netpoll infrastructure Netpollが導入された. Netpollは,I/Oシステムとネットワークシステムが完全には利用できないみたいな不安定な環境でカーネルがパケットを送受信できる仕組みのこと.受信したパケットがnetpoll宛かどうかをTCP/IPのヘ

    Linuxカーネルにおけるネットワークスタック周りのChangeLog勉強メモ (2.6.0 ~ 2.6.20) - ゆううきブログ
  • 1