この投稿の範囲を超えた理由で、コンピューター言語のベンチマークゲームと同様の外部(ユーザーが送信した)コードを実行したいと思います。明らかに、これは制限された環境で行う必要があります。これが私の制限要件です:
- 現在の作業ディレクトリに対してのみ読み取り/書き込みが可能です(大きなtempdirになります)
- 外部アクセスなし(インターネットなど)
私がおそらく気にしない他の何か(例えば、プロセッサ/メモリ使用量など)。
私自身、いくつかの制限があります。標準の*nix機能(具体的にはRHEL 5.x)を使用するソリューションが推奨されます。これにより、バックエンドにクラスターを使用できるようになります。また、そこにソフトウェアをインストールするのは難しいので、基本ディストリビューションの何かが最適です。
さて、質問:
- これは、外部でコンパイルされたバイナリでも実行できますか?それは可能かもしれないが、それはただ絶望的かもしれないようにも思えます。
- コード自体を強制的に送信し、自分でコンパイルするとどうなるでしょうか。それは問題をより簡単にしますか、それとも難しくしますか?
- ホームディレクトリの保護をあきらめて、VM /ロールバックを使用する必要がありますか?外部通信をブロックするのはどうですか(VMは通常ブリッジLAN接続を介して通信されませんか?)
- 私が逃した何か?
おそらく有用なアイデア:
- rssh。コンパイルされたコードには役立ちませんが
- コードの終了後にロールバックを使用してVMを使用する(ローカルブリッジはあるがWANブリッジがないようにネットワークを構成できますか?)。クラスタでは動作しません。