東京大学 - 「鏡の左右逆転 1種類ではなかった」を読んで。
鏡に映ったモノが「左右」反転していると感じるのはなぜか?
に東大の先生が挑んだ(で、解けた)とのことですが、プレスリリース見ても良くわからんな…。
私も過去にも何度か(2006年1月13日の日記、2007年1月8日の日記参照)考えては見たものの、前後逆転をなぜ左右逆転と感じるのか、結局良くわからないままでした。
メモ: 技術系の話はFacebookから転記しておくことにした。
自作エミュレータでDebianのarmel Versatile向けNetbootイメージを実行させたらクラッシュしました。
なぜかコプロセッサ14番(cp14)にアクセスしに来ますが、そんなもん実装してません。cp14ってARM11のデバッグハブじゃなかったっけ?何に使ってるんだろう…わかんねー…。
参考: Debian armel版Versatile向けNetbootイメージ
ちなみにarmhf版もダメでした。序盤からARMv6の命令を叩き込んでくるので、エミュレータが未実装例外をスローして死にます。
最近のARM向けバイナリは大抵ARMv7-A(Cortex-Aシリーズ)用なので、動かそうと思ったら、
という遠い道のりを行かないとなりません。
サンデープログラマにはキツイぜ…。
メモ: 技術系の話はFacebookから転記しておくことにした。
Mentor Graphics(旧CodeSourcery)のARM向けGCC無料版の提供が終わったので、LinaroのARM向けGCC(Linaro Toolchain for Cortex-A)を使ってみたら、コンパイラと一緒に入っていたglibcが自作エミュレータでは動きませんでした。
原因はglibcに含まれるThumb-2命令(※)です。自作エミュレータはThumb-2どころかThumbすら未対応なので、最低でもThumbとThumb-2に対応しないと、busyboxのmain関数に辿り着けません。道のりはかなり遠いですねえ…orz
ちなみにLinaroにはCortex-M向けGCC(Bare-metal toolchain for Cortex-R/M)もありますが、glibcが含まれておらずbusyboxをコンパイルできません。うぎぎぎ…。
(※)32bit長のARM命令、16bit長のThumb命令に続いて作られた、16 or 32bit長という変則的な命令セットです。
メモ: 技術系の話はFacebookから転記しておくことにした。
< | 2015 | > | ||||
<< | < | 07 | > | >> | ||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
- | - | - | 1 | 2 | 3 | 4 |
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 | - |
合計:
本日: