タグ

2006年4月24日のブックマーク (2件)

  • X51.ORG : 情況の囚人 ― 1971年”スタンフォード監獄実験”とは

    【SPE】1971年、米海軍は海兵隊刑務所で相次ぐ問題解決の為に、ある実験を準備し、資金を調達した。実験はスタンフォード大学の心理学者フィリップ・G・ジンバルド博士を中心に組織され、同大学の講堂を刑務所に仕立て、模擬的な刑務所シュミレーションを行うというものだった。新聞広告によって集められた心身共に健全な被験者らは、無作為に囚人と看守に分けられ、実際の刑務所とほぼ同じ環境の中で、二週間を過ごすことが予定された。しかしこのとき、まさかこの実験が後々まで問題となる大きな事件になろうとは、その時、被験者も研究者も、誰一人想像だにしなかったのである。(写真上はこの事件をモチーフにした映画「es[エス]DAS EXPERIMENT」より。以下は当時撮影された実際の写真) 実験に参加した被験者は皆楽観的な気分だった。単に囚人、看守の服に着替えて刑務所風の質素な生活をし、報酬までもらえるユニークな実験と

  • C#でbyte列を構造体にキャスト

    今日は、byteなどを仮想streamとみなして、その一部をstructとしてアクセスする方法を説明する。しばらく悩んでいたのだが、id:akirameiさんの多大なる協力を得てこのたび完成した。 ・必要となる背景 例えば、メモリ上にzip headerをbyte[ ]として読み込むとする。この一部の範囲をあるstructとみなして、ZipHeader->CompressSizeのようにしてアクセスしたい。しかし、可能ならば、byte からstructへのまるごとコピーなどは発生して欲しくない。 ・解決法 1. GCHandle.Allocを使って、メモリをGCのcompactionの対象から外す。 2. Marshal.UnsafeAddrOfPinnedArrayElementで、pinningされたIntPtrを取得。 3. そのIntPtrをunsafe文脈で、castして使用する

    C#でbyte列を構造体にキャスト