タグ

LinuxとProgrammingに関するjitsu102のブックマーク (4)

  • カーネルハッカー・小崎資広の「コードを読む技術」 | サイボウズ式

    サイボウズ・ラボの西尾 泰和さんが「エンジニアの学び方」について探求していく連載の第2回(毎週火曜日に掲載、これまでの連載一覧)。「WEB+DB PRESS Vol.80」(2014年4月24日発売)に執筆した「エンジニアの学び方──効率的に知識を得て,成果に結び付ける」の続編です。(編集部) 文:西尾 泰和 イラスト:歌工房 この連載では「エンジニアの学び方」をテーマにインタビューを行い、どういう「学び方」をしているのか探求していきたいと思っています。第1弾は、富士通エンジニアとしてLinuxカーネルの開発に参加されている小崎資広さんです。 Linuxカーネルは、ソースファイルだけで3万5000個以上、行数にして1500万行を超える、巨大ソフトウェアです。小崎さんが、どうやってこの巨大なソースコードと戦っているかは、きっと「エンジニアの学び方」の参考になるはずです。

    カーネルハッカー・小崎資広の「コードを読む技術」 | サイボウズ式
    jitsu102
    jitsu102 2014/08/12
    「毎日やる」「飽きないでやる」が一番重要です/生の情報は最適化されていないんです/Gitの履歴を追いかけまくる
  • 【コンピュータサイエンス名言紹介 vol.1】:Linus... | DERiVE コンピュータビジョン ブログ

    このサイトについて DERiVEはコンピュータビジョン、画像認識が専門のMasaki Hayashiがお送りしている、コンピュータビジョン(Computer Vision)を中心としたITエンジニア、研究向けのブログです。※「DERiVE メルマガ別館」は2015/9月で廃刊致しました、 4月からのブログ、メルマガのリニューアルによる対象内容拡大の1つとして、「コンピュータサイエンスの名言紹介」というシリーズを始めます。 コンピュータサイエンス、IT技術というものは、まだまだ歴史が浅い、20世紀以降の技術分野です。私も含めてみなさんは「歴史」や「先人の考え」について意外と無知であったりします。しかし、我々が単独で成し遂げた技術など、絶対にありえることがなく、どれだけ新規性が高いアイデアでも、先人が積み立ててくれてきた研究開発の上に成り立っているものだと思います。別にコンピュータサイエンスに

  • ソースコードリーディング(killコマンド編)

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、オペレーション統括部(Yahooショッピング担当)の吉野です。 前回お話しさせていただいたlsコマンドをハックしてみようの公開後、多くの方からご意見をいただきました。 その中で目に付いたのは、「ソースコードリーディングはしてみたいがなかなか(時間|機会)がない」というご意見でした。 そこで、今回はソースコードリーディングとして、FreeBSDで動くkillコマンドのソースコードを読んでみたいと思います。 killコマンドとは、ご存じの通りプロセスにシグナルを送るコマンドです。 trussコマンドでトレースしてみても、killシステムコールしか使っていません。 $ truss /bin/kill 12345 kill(

    ソースコードリーディング(killコマンド編)
  • ユメのチカラ: カーネルにおけるリグレッションの特定

    例えば、2.6.17では問題ないのに、2.6.18だとなぜか問題が発生するとする。linux kernel は git というソースコード管理システムによって、全ての変更が管理されているので、その機能を利用して問題を発生させたパッチを特定する事ができる。 基的な考え方は、コミットしたパッチを問題を発生させた組と、発生しない組にわけていって、問題を絞り込む。2分検索だ。 例えば、1000個分の変更がコミットされていたとする。これを問題が発生しない状況から一個一個順ぐりにあてていき、問題が発生したら、最後にあてたパッチが原因だということがわかる。この順ぐりにあてていく場合、最悪1000回試行錯誤しなくてはいけない。 2分検索の場合、まづ、500個分あてた状態で(gitで簡単にそのような状況をつくれる)試験をし、仮に問題が発生しなければ、残りの500個に問題があるので、さらに、その半分250個

  • 1