Android Tegra2での不具合 Tegra2でだけ特定のエラーメッセージが出てうまく動かないということに悩まされていました。調べてみても、日本じゃ該当なし、海外で報告があるけどよくわからないまま終了というやっかいな状態でした。 それが今回ようやく解決方法含めてわかったので、記事にしてみました。 戦っていたエラーメッセージは 、P1202: Texture's gl states do no... 2011.12.11 Android
プログラミング Load-Link/Store-Conditionalを見直した CASを持たないアーキテクチャ CAS(Compare-And-Swap)を持っていないアーキテクチャで、アトミック操作はどうやるのか調べてみました。そういう部分ではLoad-Link/Store-Conditionalという命令を使って実現するみたいです。 PowerPCでは、lwarx/stwcx という命令。 ARMでは、ldrex/strex という... 2011.12.09 プログラミング
プログラミング スレッド同期のエトセトラ 第3回 Visual C++ 2005以降のvolatileのMS拡張 さらにvolatileについて、Microsoft独自拡張がなされてる記載を見つけました。 VisualStudio使って、Windowsアプリケーションを作る上ではこのルールだけでやっていけるのかもしれません。 Visual C++ 2005 には、volatile 変数へのアクセスに関して、... 2011.12.08 プログラミング
プログラミング スレッド同期のエトセトラ 第2回 前回のvolatileの変数を同期プリミティブに、な話の第2回です。 Microsoftの文章では、AcquireバリアはRead-Acquireバリア、ReleaseバリアはWrite-Releaseバリアと表現されています。確かにメモリバリアが使用される状況を考えると、アトミック変数代入時にはすなわち書き込みなので、Write-Releaseバリアという... 2011.12.07 プログラミング
プログラミング windows.hのmin/maxについて 今日の、VisualStudio Tips。 windows.hをインクルードすると、min/maxがマクロ定義されてしまうやっかいな問題?がある。 しかしながら、実は NOMINMAX というマクロ定義をして windows.h をインクルードすることで、これらが定義されることを防ぐことができる! これは地味なようで、自作算術ライブラリとか作ってると非常に... 2011.12.06 プログラミング
プログラミング スレッド同期についてのエトセトラ 世の中には、volatile付けただけでその変数を同期プリミティブとして使用OKという誤った認識があるような気配だったので、ちょっと調べてみました。自分の認識を整理するためでもあるけど。 volatile修飾は何をしてくれるのか。まずはこれを考えてみます。 volatileはコンパイラによる最適化を抑制してくれます。これは、コンパイラによる命令の移動、メモリ... 2011.12.05 プログラミング
Android よくわからないバグ Iconia Tab A500でOpenGL ES 2.0使ったテストコードで、"P1202: Texture's gl states do not match with shader's" というエラーが出てしまい、プログラムがうまく動かなかった。 現在調査中。そんな変なコードを書いたつもりはないんだけど。 シンプルな再現コードを作るのもやっかいで、ゼロか... 2011.12.04 Androidプログラミング
Android NDK r7が出てた ついさっきみたら、Android NDKのrevision 7が出てました(android-ndk-r7)。Android 4.0 が発表された上旬ではまだでしたが、遅れて登場したようです。いくつか更新を見ていて気になったポイントを列挙してみます。マルチメディア関連の拡充。使えるのは、API Level 14以降のものっぽいですが。 ネイティブでOpenMA... 2011.11.27 Androidプログラミング
プログラミング GmailのOAuth認証 ここ最近はGmailに搭載された OAuth認証のうちの anonymous 方式のほうを調べて試行錯誤していました。 AndroidでGmailを使っているので、そのアプリに生かせたらいいなというのが最終目標です。日本語で、そしてJavaでの資料が思いの外少なくて、苦労しました。 いろいろ実験してうまくいかなくて、苦労していましたが、最終的には単純にOAu... 2011.11.20 プログラミング
Android GMailにアクセスするアプリ Androidのプログラミングとして、Gmailに保存されているデータにアクセスするアプリを書いてみようと思っていたら、なんと7月末のGmailの更新でできなくなった模様。エラーメッセージがわかりにくくて、まさか別の部分に問題があるとは思っていなかったよ・・・。 エラーメッセージはこんな感じです。 requires com.google.android.gm... 2011.11.14 Androidプログラミング