2010-01-01から1年間の記事一覧

Adding your own module to anaconda.

I am interested in anaconda so I wrote really simple "Hello World" module in the anaconda stage2 for my studying. That module doesn't do any important job. It only shows "Hello World" onto the screen. However, it was easier than as I expec…

Setup Dual monitor.

I mainly use a laptop, also I used to use a desktop PC. so I have a monitor but I haven't used it for a year because dual monitor need enough space to put the monitor :( However, I update my laptop today, and noticed gnome-desktop package …

Voted F15's release name.

When I was reading planet fedora, I remembered Fedora 15 release name election has been started, so I went to voting system and did voting. This election will finish 2010-11-01 23:59:59 UTC, if you haven't done yet, Let's vote:)btw, I'm ha…

Participate F14 Desktop validation testing.

I participated F14 Desktop validation testing Fedora 14 Final TC1, and fill those reports. * Bug 643416 - F14 TC1.1 LXDE Spin: Unable to input any character to text box in User Manager screen. * Bug 643388 - [abrt] lxpanel-0.5.6-1.fc14: IA…

I hadn't known some commands until today.

When I did an updates-testing today, I found some commands which I've never used before. Those are bellow. * /usr/bin/peekfd * /usr/bin/prtstat These commands are in the psmisc package. From their man pages * peekfd - peek at file descript…

Hello world from Fedora 14.

I upgraded my laptop from Fedora 13 to Fedora 14 by preupgrad command. I've been using F14 in virtual environment and I pretty sure upgrading my laptop won't have serious problem because of upgrading. Although, it's quite big to upgrade be…

Python memo: urlgrabber.

When I was reading test scripts of AutoQA, I saw a module which seems to be useful. That is urlgrabber. of course, Fedora provides that package. Anyway, this module helps you to download files also it has progress meter feature. It's good …

Installing F14 Beta RC2 LXDE version on eeepc 4G.

I've installed F14 Beta RC LXDE version on my eeepc 4G. Install process succeeded, but I haven't tested desktop features yet. This eeepc has 4GB flash memory, memory card slot and wifi. I used to use F14 Alpha LEXD version as NFS server an…

Fedora AutoQAを動かす

FedoraではAutoQAというテストフレームワークがあってそれで自動テストが走っているのでそれを試してみました。忘れそうなので自分用メモの意味で書いてるのでほとんど俺得なだけだと思いますが… もし試したい人はリンク先からAutoQAのWikiに行ってそこから…

Fedora 14 Betaをnetinst.isoでインストール

Fedora14のベータ版のテストが始まったので、F14のインストールの紹介でも。2010/9/11ではインストールは成功しますが、その後のGDMのログイン画面にバグがあってログインできません>< なので、インストールの流れだけ簡単に紹介したいと思います。 自分が…

Variable Code Byte.

c++

最近買った「大規模サービス技術入門」でVariable Code Byteが説明されてたので、本に乗ってた擬似コード見つつ書いてみました。だいたいこんな感じでしょうか? #include <iostream> #include <vector> #include <cstdlib> #include <ctime> #include <climits> #include <assert.h> using namespace std; typedef</assert.h></climits></ctime></cstdlib></vector></iostream>…

Fedora Test Day for OpenSCAP

昨日はTest Day:2010-08-26 OpenSCAPに参加してました。参加と言ってもIRCで連絡しつつテストを実行って感じですが。 FedoraのTest Dayというのは、次のリリースに向けてテストのテーマを決めてそのテストを参加できる人がやる日です。Fedora14のスケジュー…

pythonメモ

Fedoraプロジェクトで使用している自動テストのフレームワークにAutoQAというのがあって、これはLinuxカーネルのテストで使われているAuotestを利用して作られているんですが、これのcontrolファイルでちょっと疑問に思った書き方があったので調べてみました…

x86のret命令

OS

コンテキストスイッチを理解するにあたって、アセンブラのret命令の動きを試してみます。実験環境はx86(qemu)のFC13です。 ret命令は、スタックからEIPを読んでそこに制御を移します。ということは、スタックに適当なアドレスを積んでおけばそこに制御が行…

gccのインラインアセンブラ

linux2.6.34のswitch_to()を見てたら、インラインアセンブラで見慣れない記述があったので、ちょっと確認してみた。test1()は通常通りに0番目、1番目って感じで変数を使ってるパターンで、test2()は名前を付けてアクセスする方法。こんなやり方って前からあ…

Fedoraでテスト

FedoraプロジェクトではQAチームがいて、色々テストしたりしているわけなんですが、その中でもProven Testersというグループがあります。先日(2010/07/07)に、このグループのメンバーになりました( ゜Д゜ノノ"☆パチパチパチパチ それはさておき、このグル…

DebianからFedoraに移行してみた。

思い立って、メインPCのOSをDebianからFedoraに移行して早三週間位。Debianの時も多少はDebianプロジェクトで開発に参加してたんですが、Fedoraに移行したし、Fedoraでも開発参加しようと思って、主にテストしたりバグレポート書いたりしてます。Fedoraネタ…

LXDEで壁紙の設定

ちょっと前にいつも通りDebianのsidでアップデートしたらlxdeのバージョンが上がったのは良いのですが、 壁紙の設定が効かなくなってました。。。 それで色々調べた結果、/etc/xdg/lxsession/LXDE/autostartでpcmanfmを呼んでいる部分の引数が間違っていると…

tinycoreをeglibcでリマスタリング

こんなことを思ったのでやってみました。 左側がオリジナルのtineycore(glibc版)で、右側がeglibcでリマスタリングした版です。 サイズは0.1MBほど小さくなった程度でした。EGLIBCはglibcとバイナリコンパチがあるので、Debianのtestingからlibc6パッケー…

自前でコンテキストスイッチしてスレッドの切り替えをしてみる。

ネットでスレッドの実装をするという課題を見つけたのですが、x86版のコードだったのでx86_64で動くようにしてみました。課題のコードから変えたのはスレッドを作る処理と、コンテキストスイッチの切り替え部分です。 それ以外の部分は、基本的には課題で要…

自作OSでELFの実行

この前作ったELFを読むコードを自作カーネルに移植して、ファイルシステムからバイナリを読んでそれを実行できるようにしてみました。 プロセス終了処理とかをちゃんと作って無いので一般保護例外出してますが・・・ 動作としては、"A"を表示するだけのカー…

ELFの読み込みテスト

この前作ったテスト用のバイナリを読める程度の最低限動くプログラムを書いてみました。manのELF(5)が参考資料です。 メインPC自体は64bitなのですが、作ってるカーネルは32bitなので、テスト用のバイナリも32bitでコンパイルしてます。 これを自作カーネル…

ELFを自作カーネルで実行させたいので、とりあえずテストプログラムの準備から。

OS

テスト用のプログラムはこんな感じです。単にシステムコール呼ぶだけです。 #define UNUSED __attribute__((unused)) int main(UNUSED int argc, UNUSED char **argv) { __asm__("mov $1, %eax\n\t" "int $0x80\n\t" ); return 0; } 自作カーネルは32bit用な…

this_rq()

所用でどんな感じで処理をしているのかを追いかけたのでメもです。たとえば、kernel/sched.cのnr_iowait_cpu()ですが、this_rq()でcpuごとのランキューのデータを取得できます。 unsigned long nr_iowait_cpu(void) { struct rq *this = this_rq(); このthis…

2.6.34-rc7でこんなのが出たのでめも。rc6では見なかったんだけどな。

[ 26.624246] BUG: using smp_processor_id() in preemptible [00000000] code: modprobe/1932 [ 26.624252] caller is nr_iowait_cpu+0x1a/0x30 [ 26.624255] Pid: 1932, comm: modprobe Not tainted 2.6.34-rc7-tip+ #1 [ 26.624256] Call Trace: [ 26.624…

第四回 カーネル/VM探検隊参加してきました。

運営、現地・ustで参加された皆さん、お疲れさまでした。非常に濃い話ばかりで大変勉強になりました。 最初はTwitterで知り合った@syuu1228さんに誘われて第二回の探検隊に参加し、5/7の第四回は2回目の参加でした。 第二回カーネル/VM探検隊のATNDhttp://at…

pythontでHTMLを解析したり、文字列置換などしてみる。

こんな感じのHTMLを読んで、tdタグ内のデータを出力するときに、もし文字列が{}で囲まれてたら置換して表示するようなことをやってます。 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Testcase001</title> </head> <body> <table border=1> <tr bgcolor="#00FFFF"> <td>Testcase</td> <td>Test step</td> </tr> <tr> <td>User should inp…</td></tr></table></body></html>

Minixのファイルシステムの実装

自作カーネルにMinixのファイルシステム(V2)実装できました。ソースはいつもながらこちらです。 主要な実装はfs/minix/minixfs.cの以下の関数です。 minix_get_sb():スーパーブロックを読む read_file():指定したファイルのデータを取得 find_file():フ…

minixのファイルシステムからデータを読む。

自作カーネル用にext2の実装をテストしてたんですが、inodeまわりでちょっとハマってたので、 ext2よりは簡単そうなminixのファイルシステムで実装の実験して、データを読めるようになりました。 ソースは例のごとくgithubにあります。 実装の方法は前回のex…

ext2実装の道

自作カーネルはファイルシステムにext2を使う予定で進めているのですが、ext2の構造自体よく知らないので、 まずはext2の勉強がてらLinux上のユーザランドで動くプログラムとして実装して、それを移植する方向で進めてます。 元々、自作カーネルはBochs・kvm…