2008-01-01から1年間の記事一覧
カーネルの主な初期化処理はsys/kern/init_main.cのmain()から始まるが、この中でconfigure()が呼ばれている場所がある: /* Configure the system hardware. This will enable interrupts. */ configure(); configure()はsys/kern/subr_autoconf.cにあり、…
NetBSD-5.0BETA/i386のSMP実装がどうなっているのかについて調べてみる。 ディレクトリ構成 sys/arch/i386がi386依存のコードで、sys/arch/x86がamd64/i386共通コードになっている模様。 SMPサポート時のアナウンス http://kerneltrap.org/node/443を読むと…
ようやくx86でもelfバイナリを読み込んで制御をうつし、システムコールを受け取って処理するという一連の流れが実装できた。(mipsでは既に動いている 但し、まだ仮想メモリは無く、elfバイナリのロードはヘッダに書いてある通りの場所に読み込んでしまう、と…
$ pidgin process 26155: D-Bus library appears to be incorrectly set up; failed to read machine uuid: Failed to open "/var/db/dbus/machine-id": No such file or directory See the manual page for dbus-uuidgen to correct this issue. D-Bus not …
仕事のマシンでFreeBSD 6系を使ってるが、6.4に上げたらなんかLinuxエミュレーションがまともに動かなくなった気がする。 $ /compat/linux/bin/bash bash-3.00$ bash bash: fork: 無効な引数ですこんなんでますけどなにこれ。 Xのドライバにnvidiaのモジュー…
http://www.mainichi.jp/enta/book/kyodoInterview/archive/news/2008/20081126org00m040015000c.html ハードカバーでまだAmazonの中古が売ってないからちょっと値段が高いんだが、おもしろそう。 年末に読んでみようかなぁ。
別に興味はないのだが、正式リリースらしいのでどんな感じなのか記事を斜め読みしてみた: JavaFXによるGUIアプリケーションの作成 (1/3):CodeZine(コードジン)・・・ん?XAMLみたいにマークアップランゲージでGUI定義するんじゃないんだ。 要するにJavaS…
お昼ご飯に家の近くの洋食屋さんへ行ってみた。 二人で行って、僕は鮭のクリームソース、相方はかにクリームコロッケ。 ・・・・まずい。 なんかあまりいろいろ書こうという気が起きない感じの味だった。盛りつけとかきれいで、お店の雰囲気も悪くないんだが…
Broadcom BCM1250ってMIPS64デュアルコアなのかぁ、遊んでみたいなぁ・・・とか思って、ググッてみたらCisco 7301がヒットして、思ったとおり1,159,800円もしてショボーン(´・ω・`)としてたら、なんかエミュレータ見つけたよマニュアルがあるので、これの通…
初めてマトモに起動してるところをみた。 以下、作業記録:cvsupでcurrentをダウンロードしてくる。 supfileはこんな感じ: *default host=cvsup.jp.FreeBSD.org *default base=/home/syuu/FreeBSD *default prefix=/home/syuu/FreeBSD/cvsroot *default rel…
8259A.pdf Intel 8259 - Wikipedia http://community.osdev.info/index.php?(PIC)8259A パソコンのレガシィI/O活用大全 http://davmac.org/davpage/PIC.html 8086 Interrupt Mechanism 8259pic.pdf
ローダはとりあえずこの間簡易的に実装したものを使うことにして、とっととシステムコールを実装してみた。システムコールのテーブルは、こんな感じに void *syscall_functions[SYSCALL_MAX] = { (void *)putchar, (void *)getchar, (void *)getattr, (void …
http://hira.main.jp/wiki/pukiwiki.php?init_8259A()/linux2.6 Linux のスリープ処理、タイマ処理の詳細を見る - naoyaのはてなダイアリー 割り込み OS-OMicron.org PC/ATの割り込みコントローラについて少々調べてみた。x86 CPUには外部割込みの入力ピンが…
胃がやられてしまって調子が悪くて気分も乗らない日に、試してみたお店。 台湾料理って言ってるからよーするに中華だよなぁ、重そうだなぁ・・・ と思って入ってみたら、お粥はあるし、卵と青梗菜の炒め物はやわらかくて薄めの味付けで、胃に良く味も優しい…
安く飯を食おうと思って御苑をウロウロしてるうちにふらっと入ってみた。カレー麺ってなんだそれ?とか思いながら頼んで食べてみた。・・・マズイ。 麺は普通だ。しょうゆラーメンにすれば美味しく食えるだろう。 ルーも普通だ。カレー南蛮にすれば美味しく…
ビーフシチューを食べた時のメモ 会社の同僚の方が日記に書いていたのをみて良さそうだったので行ってみた。もう少しフレンチっぽいのかなー、とか思っていたが、割と洋食っぽいというのか何と言うのか、お箸とお味噌汁とか出てきてあれっ?と思った。 メニ…
ローダっぽいものを作ってみた。 きちんと関数定義するでもなく、ユーザランドへのメモリ割り当てはユーザランドプログラムとカーネルの双方で予め当たらないように定義(ユーザランドはコンパイル時にロード先アドレスをリンカスクリプトで設定)、カーネル…
とりあえずELFパーサの前段階としてFreeBSD上でELFヘッダをダンプするプログラムを書いている。このあたりが参考になる: ELF Format http://www.linux.or.jp/JM/html/LDP_man-pages/man5/elf.5.htmlヘッダ構造は複雑ではないからパーサはすぐ作れそうだが(…
http://pub.ne.jp/wakapon/?cat_id=49945 d1153r17.pdf http://community.osdev.info/index.php?ATA この辺を参考に、i386版のディスクドライバを簡易実装してみた。 MIPS版はgxemulのtestmachine向けのものが既にあるのでこれを流用。 昔書いたFAT32実装と…
自宅のデスクトップPCのUbuntuをアップグレードしたら、Xがあがらなくなった。 Bug #292214 “Xinerama broken since intrepid on MGA” : Bugs : xserver-xorg-video-mga package : Ubuntu どうやら、これが原因らしい。。 とりあえずXのパッケージを古いのに…
http://sankei.jp.msn.com/world/china/081112/chn0811122121009-n1.htm わざわざカメラマンの前で手錠をかける警察(=国民党)も、わざわざそれを大げさにこちらに見せるパフォーマンスをしたり殴られたとか言ってみたりする陳水扁側(=民進党)も、どち…
shiitakeでMIPSのシステムコールを受ける実装を試してみた。 でも、まだカーネル内関数をユーザモードでちょっと動かしてみただけ、というレベル。 やっぱりディスクとファイルシステムを実装してELFローダをつけるのが筋かなぁ。 しかし、仮想メモリを実装…
forkされたプロセスがどう動くのか見てみる。コンテキストスイッチが起きると、mi_switch()が呼ばれる。 /* Pick new LWP to run. */ if (newl == NULL) { newl = nextlwp(ci, spc); } nextlwp()によってforkされたプロセスが次のプロセス(newl)に選ばれる…
寒いからラーメンだー、っつってまた食いに行った。この間普通の塩ラーメンをいただいたので、今回は「情熱の赤い塩ラーメン」とかいう変わったのを頼んでみた。 ・・・味も変わっていた。うーん。普通の塩の方がおいしかったなぁ。 別にこれが美味しくない…
http://fukushimak.iza.ne.jp/blog/entry/784577/ 産経新聞の福島香織さんが田母神さんの処分について良い所を突いている。現行憲法に反する発言、政府見解に反する発言を公にすれば、不必要な対外摩擦を引き起こし、国民の憲法および政府に対する不信感をさ…
http://sankei.jp.msn.com/life/trend/081108/trd0811080327004-n1.htm http://sankei.jp.msn.com/life/trend/081109/trd0811090406000-n1.htm伊勢崎 賢治氏の武装解除は以前読んでいて、こういう仕事をやってる日本人も居るのだなと大変興味深く思ったのだ…
MIPSにはsyscallというopcodeがあって、呼び出すとSyscallExceptionを起こす。 これを使ってシステムコールを実装出来る。NetBSDでは、v0にシステムコール番号を積み、通常の関数呼び出しと同じくa0-a3へ引数を積んで渡している模様。
今日はマダンで日替わりランチの豆腐チョリムというのに挑戦。(食べたことなかった) おいしいんだが、、、甘い。 ソースがトッポギのソースそのものなのである。 これはちょっと△。豚焼肉ランチもちょっとだけ横から貰ったけど、こっちは中々美味。
ちょっとシステムコールへの理解が弱くてそもそもの動きをきちんと把握し切れてなかった(反省)。ここらへんでDebianな人が似たような所を解説していたりするが、LinuxでもBSDでも基本的に考え方は同じはずで、 forkして新しいプロセスを作る fork先プロセ…
Device Polling support for FreeBSD jpman search error