アカウント名:
パスワード:
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
あつくて寝られない時はhackしろ! 386BSD(98)はそうやってつくられましたよ? -- あるハッカー
ひとくくりのMac (スコア:2, 興味深い)
Re:ひとくくりのMac (スコア:0)
いまどきのMacのソフトは、CPUの違いを超えられるように中間コードで配布されていると聞きます。
とすると、CPUを問わずに影響があるように思いますが、どうなんでしょうか。
Re:ひとくくりのMac (スコア:0)
普通に考えてバッファーオーバーフローって
巨大なデータ突っ込んで、送りつけたデータの部分で書き潰して
特定のコードを動かす仕組みでしょう。
Macintoshの場合もそうであるように、そのマシーンのコードでしか動きません。
よって、適当に突っ込まれた出たを踏んでもエラーで止まる可能性の方が高いと思います、
>>いまどきのMacのソフトは、CPUの違いを超えられるように中間コードで配布されていると聞きます。
違いますよ、実行する前にコンパイルして実行するだけです。
それと、プログラム自身はフォルダーの中です。
正確に言えば、Macintoshのファイルはデータフォークとリソースフォークに分かれていて、
データフォークはWindowsでいうデータやファイルの部分
リソースは構造化したフォルダーのようなものです。
OSXのUNIVERSALでは両方がそのものがフォルダー形式になっていて
そのなかにPPCのコードとインテルコードがあるだけです。
ハードはOSの部分はネイティブで動いているので
プログラムだけコンパイルしてやれば実行速度はそれほど落ちないってことだと思います。
QuickTimeで言えばWindowsがターゲットになってもMacintoshそのもで何かするには
まだまだ敷居が高すぎてうまく行かないと思います。
止めるのが目的ならそれはそれで成功かもしれませんが
Re:ひとくくりのMac (スコア:2, 参考になる)
恐らく".app"ファイルの事を示しておられるのだと思いますが、
universal binary自体はひとつのバイナリファイルです。
フォルダーで分かれているのは".app"の構造であって、
universal binaryの構造では無いと思います。
実際に、Mac OS X 10.4以降のGCC-4.0.xで、
CFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc"
のようなCFLAGSを使って簡単なCコードなんかをコンパイルしてみると、
ひとつのバイナリファイルが出来ます。
ただ、このuniversal binaryそのものは
x86なバイナリとPPCなバイナリの両方がくっついたもので、
中間コードではない、という部分は仰られる通りです。
Re:ひとくくりのMac (スコア:0)
>違いますよ、実行する前にコンパイルして実行するだけです。
Rosettaトランスレータのことを言ってるようですが、この文章は中間コードの説明のように見えます。。。
#「プレビュー」のつもりが「更新」を押したらしくすべてを失ったのでAC。
#いろいろリンクとか探してたんだよう