2010年10月
2010年10月21日
KZM-A9-DualボードにU-bootとLinuxカーネルを移植しています。
このような場合、同じようなチップを使うもののソースコードを持ってきて改変していくことが多いと思います。今回もチップの供給元から見本となるソースコードをもらって、そこから修正しています。
見本のボードはシリアルコンソールにUART0を使っていましたが、KZM-A9-DualボードではUART1がつながっています。これに関する修正でU-bootに関する部分のことを書きます。
2010年10月19日
KZM-A9-DualボードにU-bootとLinuxカーネルを移植中です。
で、さっそくやらかしました。
DDRの初期化をスキップしているU-bootのバイナリを間違えてブートのNORフラッシュに焼いてしまいました。これをやってしまうとJTAG-ICEも起動できなくなってしまいます。昔のFull ICEと違ってJTAG-ICEは起動時に一度リセットを解除するので、その瞬間にCPUが暴走すると接続できなくなってしまいます。困った! どうしよう ...
2010年10月14日
全てのJavaのプロセスはZygoteからforkして作られるので、Zygoteでpreloadingされたクラスは、新しいJavaのプロセスでは最初からロードされた状態から始まります。これによって、個々のJavaのプロセスの起動の高速化とシステム全体としてのメモリ使用量の削減を実現しています。
このクラスのpreloadingというのは、さぞかし特別なことをやっていると思いきや、 そのソースはとても単純なものでした。
続きを読む
2010年10月12日
今日はLinuxカーネルをビルドするときにちょっとしたTipsを紹介します。
カーネルをいじっていると、時々、同一のソースからコンフィグを少しだけ変えたものを複数作って、切り替えて交互に動作を試したいということがよくあります。
そのたびにコンフィグファイルを差し替えて再ビルドしてもよいのですが、そのコンフィグファイルごとに別々のディレクトリでビルドできると便利です。
2010年10月07日
Android on Ubuntu で、なぜか一般ユーザでsocketシステムコールがPermission deniedになってしまいます。sudo すれば大丈夫です。
この問題に気がついてはいたのですが、きっとUbuntuの新しいセキュリティの設定が何か足りないせいだろうと思っていました。しかし、Debianで動かしても同じことがおきました。
このことをたまたまtwitterでつぶやいたら、有力な情報を教えてもらったので調べてみました。