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

ARM:LDRのアドレッシング・シフタ付きレジスタ

"シフタ付きレジスタ LDR R0,[R1,R2,LSL #2]のように書きます。 これが最も曲者です。この例ならば、R2を左に2ビットシフト(4倍)してR1に加えたものがアドレスとなります。"腕の中のARM - ARM in arms - http://homepage2.nifty.com/sampodo/craft/arm…

デバックプリント(DebugPrint)のマクロ

#define PRINTD(fmt, ...) printf(fmt, __VA_ARGS__)職業としてのプログラミング 可変個引数マクロを使う http://proger.blog10.fc2.com/blog-entry-33.html --- 2013/01/10 追記 --- __VA_ARGS__がひとつも無い時にコンパイルエラーになってしまう対策とし…

Linuxカーネル中のtrace_*系関数の定義場所

trace_net_dev_xmitとかtrace_net_dev_queueとか、trace_???系の関数はソースコードをgrepしても定義が見つからない。 と思ったら、include/trace/eventsあたりにマクロで定義されていた。 ftraceで使うみたい。

LinuxからWindowsにリモートデスクトップする

linuxでリモートデスクトップ http://blog.asial.co.jp/509

QEMUでARMエミュレート&実行

arm-linux-gnu-gcc -c -mcpu=cortex-m3 -mthumb start.S arm-linux-gnu-objcopy -O binary start.o start.bin qemu-system-arm -cpu cortex-m3 -kernel start.bin -monitor telnet::4444,server,nowait

Cortex-M3のバイナリの逆アセンブル

Thumb命令です。 arm-linux-gnu-objdump -b binary -m arm -M force-thumb -D start.binELF形式からだと確実っぽい arm-linux-gnu-objdump -d start.o

ARM開発環境

Linux に GNU ARM ツールチェーンをインストールする http://www.ibm.com/developerworks/jp/linux/library/l-arm-toolchain/

TopコマンドTips

topコマンドでマルチコアなCPUの状況を確認する http://d.hatena.ne.jp/rx7/20080802/p3topコマンドの使い方・見方 | Linuxで自宅サーバ構築 http://linuxserver.jp/Linux/top%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89.php

スタートアップルーチンからフルスクラッチでHLWを出力する

組込み技術者向け「初めてのC言語」 http://www.ertl.jp/~takayuki/readings/c/index.html

manより"info"の方がたくさん情報を見つけられる

infoだと・・・ info gcc info ls etc...http://www.ertl.jp/~takayuki/readings/c/no04.html

スタートアップルーチン

http://monoist.atmarkit.co.jp/mn/articles/0612/19/news098.html

Linuxでパケットフィルタリング、QoSとか

パケット・フィルタリングとQoS機能 http://itpro.nikkeibp.co.jp/article/COLUMN/20080520/303192/[iptables] 192.168.11.1向けのTCPパケットのDSCP値を1に設定 iptables -A OUTPUT -t mangle -p tcp -d 192.168.11.1 -j DSCP --set-dscp 1