Linux

Linuxポッドキャスト

http://hehe2.net/linux-general/5-linux-podcasts-you-should-be-listening-to/http://www.thelinuxlink.net/

オンライン上で読める技術書

http://www.dailyartisan.com/news/open-source-e-books-for-linux/The Art of Unix Programmingなど、訳本が販売されている物も結構紹介してあります。

Protocol Buffers のテキストフォーマット入出力

Protocol Buffers のデータをエディタで修正できるように,テキストフォーマットでの入出力を試してみました. 利用したバージョンは 2.0.1 です.(補足) リビジョン32 で protoc コンパイラによるバイナリ形式データとテキスト形式データの変換がサポートさ…

問題追跡システムに何を記録するか

問題追跡システム(Redmine)によるチケット駆動開発(もどき)を行っています. 機能追加やバグ修正を解決するためには,どのように問題を定義し,システムに記録すればよいのでしょうか. また,モチベーションがあがるような記述内容はあるのでしょうか.この…

Javaの日本語フォント変更について

環境:dev-java/sun-jdk-1.6.0.06日本語フォントの変更には /opt/sun-jdk-1.6.0.06/jre/lib/fontconfig.properties を修正する必要があります. このファイルの編集時に注意する必要がありました. デフォルトの設定として *-x0208 のみが指定してあったので…

Probing the Guts of Kprobes #1

Abstract, 1. Introduction, 2. A brief history Kprobes は kernel の計測機構であり,kernel tracing,性能評価,fault-injection などに利用される. kernel の計測機構では,probe point*1 において,ユーザ定義のハンドラが実行される. Kprobes の前身…

mplus-outlie-font インストールエラーの解決

media-fonts/mplus-outline-fonts-0_pre014 のインストール時に,media-gfx/fontforge-20071210 によってエラーが発生し,インストールに失敗する. media-gfx/fontrforge-20080429 を使用することで解決した.以下,エラーメッセージ.

LinuxでWindows Mobileアプリを作成する

参考:Monoで.NET Compact Framework向けのアプリケーションをコンパイルする - ヒビノキロク コンパイルに必要なもの GAC_*.dllファイル 参考:http://www.saturn.dti.ne.jp/~npaka/dotnet/ / Emoneから持ってきた cf-cecil-patcher / DownLoad:http://eva…

sys_unshareとnamespace

2.6.24-rc*ではVPS(Virtual Private Server)/コンテナの実現のためにnsproxyを利用した改良がいくつか入っている. 例えば,nsproxy->net_nsが追加されている.このnet_nsネームスペース/コンテナを共有するプロセスは同じloopbackデバイスを用いる.net_ns…

Memory Controler 開発状況

What can we do to get ready for memory controller merge in 2.6.25

メモリ管理(glibc malloc)資料

twitter で話題になっていたので,読んでた. glibc malloc 資料 革命の日々! の kosaki さんの資料. LWN の記事で OpenBSD は malloc に mmap を使うと読んだことはあったんですが, o malloc(3) has been rewritten to use the mmap(2) system call, int…

メモリ管理(ハードウェア&ソフトウェア)資料

"What every programmer should know about memory" - the PDF version [LWN.net] Abstract ... This paper explains the structure of memory subsystems in use on modern commodity hardware, illustrating why CPU caches were developed, how they work…

/proc/pid/maps のフラグ rwxp における p とは

マッピング領域がプライベートマッピングされていることを表す. プライベートファイルマッピングでは,マッピング領域への変更はマッピング対象ファイルに影響を与えない.例えば,gnome-terminal の maps を見ると, $ cat /proc/`pgrep gnome-terminal | …

the Ninth Real-Time Linux Workshop の論文

http://www.linuxdevices.com/news/NS2574496181.html LinuxDevices has published the full text of 28 papers from the Ninth Real-Time Linux Workshop, Nov. 2-3 in Linz, Austria. ... The papers are available free, and without registration, via t…

sizeof と kobjsize

上記に関連して. uClinuxで使う mm/nommu.c 中の重要関数 do_mmap_pgoff() では, ... struct vm_area_struct *vma = NULL; ... vma = kzalloc(sizeof(struct vm_area_struct), GFP_KERNEL); ... realalloc += kobjsize(vma); askedalloc += sizeof(*vma); …

スラブオブジェクトからサイズを取得するには(メモ)

kobjsize() スラブオブジェクトのアドレス objp から,オブジェクトサイズを取得する. kobjsize(スラブオブジェクトのアドレスobjp) ↓ ksize(objp) ↓ return obj_size(virt_to_cache(objp)) virt_to_cache() スラブオブジェクトのアドレス objp から キャッ…

メモリマッピングのデマンドページング - 2.6.23-mm1

(少なくとも2.6.22では) デマンドページング時は handle_pte_fault() から mm/memory.c do_no_page() が呼ばれていたが,2.6.23-mm1 では,do_no_page() は do_linear_fault() と関数名が変更されている.また,do_file_page() はdo_nolinear_fault() となり…

リンク

Tips su で root になる時に,history ファイルをユーザ毎に分ける方法 http://gentoo-wiki.com/TIP_Use_memory_on_video_card_as_swap Kernel Lots of stable kernel updates [LWN.net] http://kerneltrap.org/Linux/Fuse_Writable_Mmap

Zim で TrackLink 的リンクを使用する方法

Zim で作業記録を書いていると,プロジェクト管理に使用している Trac へのリンクを使用する場面がしばしばあります.そこで Zim で TracLink 的リンクを使う方法を調べてみました. /usr/share/zim/doc/zim/usage/linking.txt,/usr/share/zim/urls.list を…

ML 購読方法について悩む

ML 閲覧時,購読スタイルによって異なるアプリケーション(Google Reader,Google グループ,Gmail)を使用しています.これを Thunderbird でまとめてしまいたい. 現状の問題点 Google Reader ではスレッド形式で表示できないため,流れの早い ML を追うこと…

uClinux 調査環境について

kernel-2.6.22,linux-2.6.22-uc0-big.patch について,CONFIG_MMU,nommu 文字列を含むファイル,および CONFIG_MMU 時に利用される(include,Makefileから呼ばれる)ファイルを調査対象とした.調査内容は,1) mmu 時との相違点,2) 1)が起こる理由,の二つ…

コピーオンライトについて

uClinux 調査環境について - まだ見えない先の 詳解LINUXカーネル p.414 MMU は書き込みが禁止されているページへの変更時にアクセス許可フォルトに起因する例外を発生する. 故意にページテーブルエントリを書き込み禁止にし,変更時までページの複製を遅延…

stack について

uClinux 調査環境について - まだ見えない先の 詳解LINUXカーネル p.405 Linux で使用される ELF バイナリは,fs/binfmt_elf.c load_elf_binary() にて setup_arg_pages() を呼び出して stack 領域の vma オブジェクトを生成する.vma が拡張されるのはペー…

heap について

uClinux 調査環境について - まだ見えない先の 詳解LINUXカーネルp.420 asmlinkage unsigned long sys_brk(unsigned long brk) p.421 MMU(ELFバイナリ) 時は,heap 用の vma は fs/binfmt_elf.c set_brk()にて do_brk() を呼び出すことで生成される(はず).s…

デマンドページングについて

uClinux 調査環境について - まだ見えない先の 詳解LINUXカーネル p.411 動的なメモリ割り当て手法であるデマンドページングは,ページフォルト例外までページフレーム割り当てを遅延させる. 上記で述べたように,uClinuxではページフォルトは起こらないと…

ページフォルトについて

uClinux 調査環境について - まだ見えない先の 詳解LINUXカーネル p.401 uClinux では,arch/arm/head.S にて MMU を有効にしていないためページ変換フォルトによるアボートは発生しない. ページ変換フォルトによりアボートされたアクセスがデータアクセス…

リンク

cgroups Google グループ misc http://blog.wired.com/monkeybites/2007/11/how-to-unlock-t.html Apps/Gedit/PluginsLists - GNOME Wiki!

FLAT バイナリについて

data,bss,heap,stack を含む vma について,kmalloc() で領域を確保するため,確保される実際のサイズが 2 の冪乗となる.FLAT では,一度領域を確保した後で実際のサイズが大きくなっていた場合,そのサイズで do_mremap() しなおす.また,その差分が heap…

リンク

Containers は cgroups という名称になったみたいです。 OpenVZ http://blog.linuxtoday.com/blog/archives/071112-115604.html Misc Open Source (dupe) news, trend analysis and opinion | Network World Opensource.com | Opensource.com Solving resour…

Zim desktop Wiki

日頃,作業記録をデスクトップのテキストエディタで記録しているのですが,最近 Zim を使い始めました. 以前使っていた Tomboy と同じく Wiki スタイルのエディタです.Tomboy の不満点は,キーバインディングが変更できない点でした. Zim ではキーバイン…