2013年4月10日水曜日

どこで変更したか調べるgit-log -Sとか、ソースコード眺めながら使えるgit-brameとか

  • git-blame
  • Show what revision and author last modified each line of a file ファイルの各行に最後に修正したリビジョンと著者(コミットログ作った人)を表示する。 blameは非難するとかそんな意味らしいです。(高校英語 プログラムとの相性は抜群で、だれだif(a=b)とかしたやつは!とかに使うんだと思います。
  • git-log -S "string"
  • Look for differences that introduce or remove an instance of . Note that this is different than the string simply appearing in diff output; see the pickaxe entry in gitdiffcore(7) for more details. 多分、Searchの略。イメージ的にはgit-log -pをキーワード検索したような感じです。

英文はmanから引用しました

2013年4月9日火曜日

Linux でWake on LAN 起動させるには(Ubuntuで送信)

Ubuntuなら
wakeonlanコマンドを導入する。

自分の場合、複数のNICを刺しているせいか、iオプションを使わないと起動してくれなかった。
wakeonlan -i "MACアドレス"

追記
こちらの法則の通りにRecepiがあったので、リンクします。
Ubuntu Weekly Recipe - 第135回 PowerWakeとgWakeOnLanでWake-on-LAN
レシピやくろまく本でもpowerwakeコマンドが使われています。
どっち使えばいいのかというと、どっちでもいいです。
powerwakeの方が現在進行形で開発されていているようで、機能も多機能?
https://launchpad.net/powernap

2013年4月5日金曜日

U-boot のコマンド一覧や基本的なところ

正式名はDas U-Boot
http://www.denx.de/wiki/U-Boot
それぞれでカスタマイズされていることもあるので、鵜呑みにしないほうが良い…
この記事は2013年4月に書かれたものです。

基本的なところ

とにかく多機能。組み込み系のブートローダーだから高速だとか軽量だとか機能不足だとか安易に決め込まないほうがいい。
簡単なハードのデバッグならこれだけでいけることも多い。
The DENX U-Boot and Linux Guide (DULG) for canyonlands
u-boot shell - Emacsライクな操作ができる。何も入力しないでEnterを叩くと直前のコマンドを再実行する。
helpと叩けばとりあえず何かはでてくるはず



コマンドリスト

  • run $env
  • 変数を実行する
  • bootm $kernel_addr $init_addr
  • 指定した番地に格納されているカーネルとinitを起動させる
  • tftp $load_addr $file_name
  • tftpを使って$file_nameを$load_addrに展開する
  • fatload
  • print $env
  • 変数$envを表示する。ちなみに、printとだけ打つと全部の変数が出てくる。
  • setenv $env "hoge= $foo"
  • 変数を$envをセットする。スペース付きの場合は囲いが必要。 シェルスクリプトのように変数を入れることもできる。逆に適切にバックスラッシュとかを付けないと思わぬことになるかもしれない。 さらにパーサーに問題があって思わぬ展開になっていることがあるかもしれない。 ちなみに、setenv hogeのように中身を空っぽにしてコマンドを実行するとその変数が削除される。
  • saveenv
  • setenvで内容を書き換えても揮発する。これでFlash ROMなどに値が保存される 実際のセーブ先はソースコードを見る。
  • bubt ($file_name)
  • u-bootを更新するときに使う。仕組みはtftpで$file_nameのイメージファイルを取得しFlash ROMなど適切なところにオーバライドする。 予めネットワークの設定が必要 Burn an image on the Boot Nand Flash らしい。
  • メモリ操作系
  • mm $addr /li>
    アドレス番地を指定した後に、ライトしたい内容を16進でかく<
  • md $addr
  • Memory Display 指定したアドレスの内容を表示する
  • mw
  • nm mmと同じだが、同じアドレスを終了するまで何回も変更できる。GPIOレジスタを指定して次々値を変化させるなどで便利。

特別な意味を持つ変数

  • stdin
  • stdout
  • stderr
  • bootcmd
  • 起動時に自動で実行されるコマンドを入れておく変数。 tftp $kernel_addr uImage; tftp $initrd_addr initramfs: bootm $kernel_addr $initrd_addr などと書いておけば、tftpして起動する。
  • ipaddr
  • 自身のIPアドレス
  • netmask
  • 255.255.255.0でスラッシュ24と同じ意味
  • serverip
  • tftpなどで使われるアクセス先のアドレス



2013年4月1日月曜日

zsh on ubuntu でプログラムはまだインストールされませんを出す方法

くろまく本では、command_not_found拡張とか書かれていたような気がします。

UbuntuのBashはデフォルトでなんか便利ですよね。
でも、新年度だしzshを使い始めた人も多いと思います。
APTでサクッと入れて、漢のzshコピって 、chshして…
でも…
zsh% tig
zsh: command not found: tig
なんか、冷たいzshさん。bashさんはこんな感じでした。
bash$ tig
プログラム 'tig' はまだインストールされていません。  次のように入力することでインストールできます:
sudo apt-get install tig
実はあの優しさは一行で戻ってきます。
sudo echo "source /etc/zsh_command_not_found" >> /etc/zsh/zshrc

ちなみに、私はBashのエイリアスなどもコピーして使っています。
grep色つきとかalias ll='ls -alF'とか超絶便利なので。

9,500円のパワフルなARMボード、Wandboard mainline in u-boot

Wandboard - Freescale i.MX6 ARM Cortex-A9 Opensource Community Development Board

Ubuntu Weekly Topics - 2012年10月5日号
$69のi.MX61ボード“Wandboard”
日本でも購入できます。
エヌ・エム・アール - Wandboard
購入検討されている方は、迷うこと無くDualをチョイスするべきでしょう。


UbuntuやAndroid...というか、Linaroなイメージが動くのかな?(全く未調査)
ちゃんとOpenGLとかはいってますよ!(重要
ちょっと前に、U-bootがメインライン化したようです。
http://git.denx.de/?p=u-boot/u-boot-imx.git;a=commitdiff;h=e2d282a1b468559c5f7e847db75eeca99644148a;hp=209b5710649cb855abe362268348df91bede6565