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

OpenBSD/sgi(IP32, O2) works on gxemul

NetBSD/sgimipsが動いてOpenBSDが動かぬハズが無いとおもって試してみたらあっさり動いた。 が、これだけでは何の面白みもないな。まぁしいて言えばOpenBSD/sgiマシンを用意しなくても使えるという事くらいか。以下、やり方。 $ wget http://gxemul.sourcefo…

第三回カーネル/VM探検隊を開催します

カーネルや仮想マシンなど、低レイヤー話でわいわい盛り上がるマニアックな会です。日時 : 2010/02/23 16:00 定員 : 40 人 会場 : 神保町三井ビル 17F 株式会社インターネットイニシアティブ(IIJ) 大会議室2 (東京都千代田区神田神保町1-105) 今回の発表内…

OpenBSDとはどんなOSか?各地で開かれているBSDConの映像を見て勉強してみよう。

一応誤解の無いように書いておくと、あなたが映像を見て勉強して下さいという意味ではなく、私が映像を見て勉強しますという意味です。 何も分かってないので一切解説は書きません ;-)この辺に色々動画が上がっているので、OpenBSD関係のモノをまとめてみま…

AsiaBSDCon 2010のcall for paper通っちった

やべ、送ったら本当に通っちった。final paperの締切間に合わねぇよどおすんだ>俺 (> つーか英語が、、、英語が、、、、、ぁぅぁぅ…という訳で、3/11-14に東京理科大にて行われるAsiaBSDCon 2010にて"SMP Implementation for OpenBSD/sgi"と題して発表を行…

Brainfuck VMとか作ってみた

BrainfuckやOokのソースコードをバイトコードにコンパイルするコンパイラ、バイトコードを実行するインタプリタ、バイトコードを機械語にコンパイルして実行するJITの三種類のプログラムを作ってみた。 GitHub - syuu1228/bfvm: Brainfuck VM使い方は以下の…

アセンブリコードをマトモに書き直す

配列プログラミング - かーねる・う゛いえむにっきのアセンブリコードをマトモに書き直した。 ただ、最短なアセンブリコードの実行時間が最短かというと、そんな事も無いかもしれない。メモリアクセスとか色々あるので、ある特定のインストラクションは遅い…

配列プログラミング

Brainfuckで+を65回実行してから.する時のアセンブリを配列上に書いてみる。 ちなみにアセンブリが無駄だらけなのは手書きで失敗したからCで書いて最適化無しで機械語に落としたものをそのまま展開しているからなので、ご容赦願いたい。 これをベースに最適…

ヒープメモリに実行権限を与える件

最近の(※要出典)LinuxやらMac OS Xやらでは素直に配列やmallocした領域を実行しようとしてもエラーになるようです。 mprotectでEXECビットを有効にしてやれば動く模様。 #include <stdio.h> #include <unistd.h> #include <sys/mman.h> #include <stdlib.h> int main(void) { char *addr; size_t psi</stdlib.h></sys/mman.h></unistd.h></stdio.h>…

TheoからTシャツ届いたよー。

この間のHardware Hackathonの時に数が足りなくて貰えなかったTシャツだけど、Theoがカナダから郵送してくれました。ようやく届いた!