タグ

linuxとProgrammingに関するyokochieのブックマーク (19)

  • Linuxプログラミングインタフェース

    Linuxのmanページプロジェクト主催者によるLinuxプログラマ必携のリファレンス。Linux開発者(主にシステムプログラマとアプリケーションプログラマ)にとって、プログラミングする上で必要な情報を一冊で網羅。書で扱う内容は広範囲にわたり一冊でLinuxプログラミングのほぼすべての情報を知ることができます。Linux/UNIX開発者のバイブルとなる一冊です。 正誤表 ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の年月は、正誤表を作成し、増刷書籍を印刷した月です。お手持ちの書籍では、すでに修正が施されている場合がありますので、書籍最終ページの奥付でお手持ちの書籍の刷版、刷り年月日をご確認の上、ご利用ください。 第3刷正誤表 1270ページ、「59.6 inet_pton() とinet_ntop()」1行目 【誤】 inet_p

    Linuxプログラミングインタフェース
  • 第(1+1)回 六本木 Linux カーネル読書会 (2012/08/01 19:30〜)

    Linux Kernel のソースコード(MUST)glibc のソースコード(MUST)ソースコードを快適に閲覧できるデバイス(MUST)読み書きに不自由しないだけのC言語の知識と経験(MUST)Linux カーネル 2.6 解読室(OPTIONAL)

    第(1+1)回 六本木 Linux カーネル読書会 (2012/08/01 19:30〜)
  • Man page of MQ_OVERVIEW

    バージョン Linux では POSIX メッセージキューはカーネル 2.6.6 以降でサポートされている。 glibc ではバージョン 2.3.4 以降でサポートされている。 カーネルの設定 POSIX メッセージキューのサポートは、カーネルの設定 (configuration) オプション CONFIG_POSIX_MQUEUE で設定可能である。このオプションはデフォルトでは有効である。 持続性 POSIX メッセージキューはカーネル内で保持される。 mq_unlink(3) で削除されなければ、メッセージキューは システムがシャットダウンされるまで存在し続ける。 リンク POSIX メッセージキュー API を使用したプログラムは cc -lrt でコンパイルし、リアルタイムライブラリ librt とリンクしなければならない。 /proc インターフェース 以下のインターフェースを

  • @IT:全貌を現したLinuxカーネル2.6[第1章](3/3) - AIO

    ファイルI/Oの効率化 ■Multi page block I/O カーネル2.4は、ページキャッシュ層からブロックI/O層へリクエストを渡す際、複数ページから成るバッファをそのまま渡すことができず、いったんブロックサイズに分割したバッファをブロックI/O層で再びつなぎ合わせるという無駄な処理を行っていた。 カーネル2.6では、複数ページから成るバッファに対するI/Oを効率的に行うため、bioと呼ばれる構造体が新設された。これは従来のBuffer headに相当するものだが、ページの配列を持つようになっており、複数のページをまとめてブロックI/O層へ渡すことができる。また、これに合わせた各デバイスドライバの修正も行われた。これに伴い、Direct I/Oのコードもbioを使用するように大幅に書き直された。 カーネル2.6にも従来のBuffer headは残されているが、その処理はbioを使

    @IT:全貌を現したLinuxカーネル2.6[第1章](3/3) - AIO
  • Ubuntu ではじめる「7つの言語 7つの世界」 « blog.udzura.jp

    最近、微妙に身内な感じで、プログラマ風の人たちで集まり『7つの言語 7つの世界』の読書会などをやっている。 で、僕はとりあえず一通り読み終わって、今後は読書会の場などで手を動かしながら、サンプルコードを写経などしながら、課題を解いていったりする段階だと思ったので、先日 Ubuntu Natty マシンを用意してセットアップを行った。その際の作業メモ。某勉強会界隈はどうせみんな Mac でしかも Book Air なので、 Lion / homebrew 版の手順書を誰か作っていただけると幸甚です。 処理系を入れる Io 以外は一気に入れることができる。 apt 最高!!!!

  • 32bit/64bit 両対応な printf の書き方 - pyopyopyo - Linuxとかプログラミングの覚え書き -

    32bit/64bit両対応のコードを書いていると,よく printf() で引っかかります."%d"のような"書式"がややこしいからです. というわけで,変数の"型"と"書式"の対応を,表で整理してみました. 型 書式 注意事項 ssize_t %zd size_t %zu intmax_t %jd uintmax_t %ju ptrdiff_t %t signed char %hhd unsigned char %hhu short int %hd unsigned short int %hu int %d unsigned int %u long int %ld unsigned long int %lu long long int %lld unsigned long long int %llu int32_t %PRId32 以下,#include が必要(下記参照) uint3

    32bit/64bit 両対応な printf の書き方 - pyopyopyo - Linuxとかプログラミングの覚え書き -
  • Debian、自動コード解析プロジェクト「DACA」を発表 | OSDN Magazine

    Debian開発者は12月16日、バグの検出と修正を支援するコード解析プロジェクト「Debian’s Automated Code Analysis(DACA)」を発表した。現在、「cppcheck」など2つのコード分析ツールがリストされている。 DACAは、Debianがディストリビューションするソフトウェアの品質を改善するためのツールを提供するプロジェクト。ソースコードに含まれる問題の検出や修正を支援すると同時に、ツール開発者には試験用のテストベッドを提供するとしている。 現在、C/C++向けの静的解析ツールのcppcheckと「checkbashisms」がある。プロジェクトを開始したRaphael Geissert氏によると、今後は他のツールの評価を進める計画で、ツールは最終的に20以上になる見通しだという。また、ツールの多くがCPUのリソースを消費するCPUバウンド型であるため、

    Debian、自動コード解析プロジェクト「DACA」を発表 | OSDN Magazine
  • Charming Python: Functional programming in Python, Part 3

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    Charming Python: Functional programming in Python, Part 3
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • Google PerftoolsのtcmallocでLinuxアプリを高速化してみた (blog@browncat.org)

    blog@browncat.org Web, Linux, Ubuntu, Mac, PDA, 携帯電話, プログラミング, ソフトウェア&落書き Google Perftoolsはパフォーマンス測定用のプロファイラで有名ですが、その中にはTCMalloc(Thread Caching Malloc)という高速なmallocライブラリが含まれています。 google-perftools - Google Code TCMalloc : Thread-Caching Malloc TCMallocのページを見ると例として通常のmalloc 300nsに対して50nsで実行が終わるとあります。特にマルチスレッドで効果を発揮し、速度とメモリを節約するとあります。 mallocはユーザランドの根幹をなす重要なライブラリの一つなので入れ換えは恐いといえば恐いですが、それだけに効果もあることが予想され

  • Linuxにおけるメモリ・プログラミング - Informatik-Wiki

    Linuxにおけるメモリ・プログラミング #weblog

    Linuxにおけるメモリ・プログラミング - Informatik-Wiki
  • ファイルディスクリプタについて(1) ~ファイルディスクリプタの概要

    ファイルディスクリプタは、プログラムの外部との入出力を行う抽象的なインタフェースです。Unix/Linuxのファイルディスクリプタは、一般的なファイルだけでなくデバイスやソケットやパイプも対象としています。当連載は、ファイルディスクリプタの機能や管理方法などを提示します。第1回では、ファイルディスクリプタの概要を紹介します。 はじめに ファイルディスクリプタ(Windowsではファイルハンドル)は、プロセスや実行ファイルにとって外部の資源にアクセスしたりアクセスされたりする際に使用される抽象的なインターフェースです。 今日のプログラムは必ずと言っていいほど外部とのインターフェースを持っていますが、新しいディスクリプタや効率的な使い方がそれほど明確ではなかったりします。 当連載では、ファイルディスクリプタに関する調査・試行錯誤した結果、新しいディスクリプタを使用した感想や効率的な管理方法など

    ファイルディスクリプタについて(1) ~ファイルディスクリプタの概要
  • UNIXデーモンの作り方

    A Wealth of Information at Your Fingertips Store and Bookmark Documents Share Documents Privately Reach Millions of People

  • ロケスタの新サービス「ナナピ」で使った技術を紹介してみるよ - UNIX的なアレ

    http://nanapi.jp 日2009年9月1日、株式会社ロケットスタートの新サービス「ナナピ」をリリースしました。 「ナナピ」はライフレシピと呼ばれる生活の便利な知恵や、ノウハウをみんなに共有してしまおう!というサービスです。 なんとか予定通り9/1にリリースをすることができました。すでに投稿数が160ほどあり、生活に便利な内容が投稿されています。 http://r.nanapi.jp/162/%E3%81%82%E3%81%8F%E3%81%B3%E3%82%92%E6%AD%A2%E3%82%81%E3%82%8B%E6%96%B9%E6%B3%95/ http://r.nanapi.jp/158/%E3%83%AC%E3%83%99%E3%83%AB%E3%81%8C%E4%B8%8A%E3%81%8C%E3%82%8B%E6%8C%A8%E6%8B%B6%E3%81%AE

    ロケスタの新サービス「ナナピ」で使った技術を紹介してみるよ - UNIX的なアレ
  • ウノウラボ Unoh Labs: UNIXデーモンを作ろう

    20070405コードレビュー posted by (C)フォト蔵 尾藤正人です 先日ウノウの勉強会でUNIXデーモンの作り方についてプレゼンしました。 UNIXのデーモンの仕組みはWebサービスの開発にあたって直接関係の深いトピックではないかもしれませんが、知っておいて損はないと思います。 発表資料と動画を公開しますので、よかったらご覧下さい。 普段は気にしないUNIXデーモンが裏で何をやってるのか、少しでも身近に感じていただければと思います。 発表資料の公開にはちまたで話題のScribdを使ってみました。 プレゼン資料はKeynoteで作ったのですが、PowerPoint形式に変換してアップロードする簡単にできました。 デモ用に実際に動く簡単なデーモンプログラム ccho(シコー) を作成しました。 ccho は前々回の勉強会で行ったGnu Autotoolsで作った bat プログラ

  • Geekなぺーじ:UNIX哲学の基本原則

    「Basics of the Unix Philosophy」でUNIX哲学の基原則がまとめられています。 UNIXの設計思想として紹介されていますが、多くは普通のソフトウェアを設計する場合にもあてはまると思われます。 1. Rule of Modularity(モジュール性): きれいなインターフェースで接続された、簡潔な部品を書きましょう。 2. Rule of Clarity(明瞭さ): 明瞭さは賢さよりも良いです。 3. Rule of Composition(構成): 他のプログラムと接続できるようにプログラムを設計しましょう。 4. Rule of Separation(分離): ポリシーとメカニズムを分離しましょう。エンジンとインターフェースを分離しましょう。 5. Rule of Simplicity(単純性): 単純化された設計をしましょう。複雑さは必要な時だけ追加しま

  • Six Apart - Tech Talk Blog: とある TypePad エンジニアの開発環境『使ってます。vim と ack 。』

    2006年08月31日 とある TypePad エンジニアの開発環境『使ってます。vim と ack 。』 TypePad エンジニアの せきむら です。Development Environment Conference の参加申込みがトイレに行っている間に埋まってしまったようですので、腹いせに代わりに自分の開発環境の話の一部をご紹介します。 概略。開発環境は Linux のサーバで手元の ThinkPad から putty を使って login しています。 shell は bash 。screen を使って複数の仮想端末を操作しコードの編集は Vim を使っています。 screen screen は最近のタブ付き terminal software を使っている場合は必要ないという人もいますが、セッションを保存できるところが一番の魅力です。「帰ろう」と思ったときに ThinkPad

  • memccpy() で文字列をコピーする - bkブログ

    memccpy() で文字列をコピーする 詳解Unixプログラミングを読んでいたところ、標準入出力ライブラリの章に「この例からわかることは、行単位の関数は memccpy(3) を用いて実装されていることである」という記述がありました。 一瞬、memcpy(3) の誤植かと思いましたが、調べてみると 4.3 BSD で追加された関数ということがわかりました。 glibc に入っているので Linux でも使えます。 マニュアル によると memccpy() は次のような関数です。 書式 void *memccpy(void *dest, const void *src, int c, size_t n); 説明 memccpy() はメモリ領域src からメモリ領域dest に最大でnバイトコピーする。nバイトコピーする前に文字 c が見つかると、そこでコピーを中止する。 返り値 memc

  • GTK+プログラミング:プレゼンテーション支援ツールの開発:CodeZine

    はじめに デュアルディスプレイを備えたノートPC向けのプレゼンテーションツールには、外部ディスプレイにスライドを表示する一方で、ノートPCの内蔵画面にはアンチョコを表示させる機能を持つものがあります。この機能は、急なプレゼンや外国語での発表などで非常に重宝することがあります。 しかし残念ながら、Linuxやその他のオープンソースOSで動作するプレゼンテーションツールで、そのような機能をサポートしているものは今のところありません。そこで、イメージとメモを表示するだけのシンプルなものですが、外部ディスプレイにはスライドを表示し、手元のディスプレイにはノートや次のスライドを表示させるツール「Prompter」を作りました。稿では、その実装を例題に、GTK+プログラミングの概略を紹介します。対象読者 GTK+プログラミングに興味がある方。もしくはPCを2台使ったプレゼンテーションをやってみたい人

  • 1