問題タブ [platform-independent]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - C++: プラットフォームに依存しないバイナリ ファイルを保存するには?
バイナリ ファイルに保存したい、float のベクトルのベクトルとして表される 3D ボリュームがあります。(これは、CT スキャナーからの X 線画像から再構成された密度ボリュームです。)
今、私は次の方法でこれを行うことができます:
これは基本的に機能します。ただし、これがどの程度プラットフォームに依存しないかを自問しています。作成されたシステムに関係なく、同一のファイルを作成したいと思います。そのため、Windows、Linux、または Mac を実行しているマシンがあり、それらのワード長は 32 ビットまたは 64 ビットで、バイト順はリトル エンディアンまたはビッグ エンディアンです。
私がこれを上記の方法で行った場合、これは当てはまらないと思います。どうすればこれを達成できますか?シリアル化について聞いたことがありますが、このインスタンスの具体的な解決策は見つかりませんでした。
python - Pythonは、Linuxで非Pythonプロセスを切り離しましたか?
私はランチャー アプリケーションを作成する予定でしたが、生成された Python プロセスからサブプロセスを完全に切り離す方法が見つかりませんでした。
デスクトップの(シナモンの)ランチャーでプログラムを起動すると、プロセスツリーは次のようになります。
/sbin/init-> mdm-> mdm-> cinnamon-session-> cinnamon->the-app-i-launched
私が読んだスレッドの中で、これが最も洞察に富み、役に立ちました:完全に独立したプロセスを起動します。しかし、OP が Python コードを実行しようとしているため、曖昧な回答が得られます。これは、独立したプロセスを生成するよりも、多くの通常好まれる方法で達成できることがよくあります。
デタッチされたpythonプロセスを起動する方法に答えないスタックオーバーフローからの他の投稿から:
- デーモン化されたpythonコードの実行 : python インスタンスから切り離された (別のプロセス/アプリケーションではなく) デーモンとしてのpython コード/モジュールの実行に適用されます。
- subprocess.call : プロセスは python プロセスの子として生成されます。
- os.system : プロセスは python プロセスの子として生成されます。
- close_fds : (どうやら) Windows(R) 専用のソリューションで、移植可能なソリューションが必要です (主なターゲットは Debian Linux)。Linux で使用しようとすると
close_fds=True
、プロセスは python プロセスの子として生成されます。 - creationflags : Windows(R) 専用のソリューション。Linux の場合:
ValueError: creationflags is only supported on Windows platforms
. - プレフィックス起動プロセス
nohup
: プロセスは python プロセスの子として生成されます。私の知る限り、nohup
または同等のものはすべてのプラットフォームで利用できるわけではないため、Linux のみのソリューションになっています。 - os.fork : 「デーモン化された Python コードの実行」と同じ。
- multiprocessing : 「デーモン化された python コードの実行」と同じ問題: python コード/モジュールの実行にのみ役立ちます。
- os.spawnl* + os.P_NOWAIT : 非推奨の関数を新しいコードに使用することは望ましくありません。私のテストでは、プロセスが実際に生成されたことをまったく確認できませんでした。
- os.spawnl* + os.P_DETACH : Windows(R) のみ、現在の python 2.X バージョンでは削除されているようです:
AttributeError: 'module' object has no attribute 'P_DETACH'.
- os.system + shell fork : これにより、プロセスが python プロセスから切り離されて実行されているのを実際に見ることができましたが、問題があるのではないかと心配しています:
- シェルでコマンドを実行することに依存していますが、意図的かどうかに関係なく、悪意に対してより脆弱ですか? .
- 非移植性に依存していますか?POSIX/シェル? Linux 以外のプラットフォームでは相互に浸透しない可能性のある構文。Partial Refの移植性に関する良いリファレンスを掘り下げていません。
- subprocess.Popen Alt : サブプロセスが python プロセスの子として実行されていることだけを確認しました。
executable - 実行可能ファイルが Intel と AMD の両方のプロセッサで実行できるのはなぜですか?
実行可能ファイルが AMD と Intel の両方のシステムで機能するのはどうしてですか。AMD と Intel の命令セットは違いますか? 実行可能ファイルは両方でどのように機能しますか? そのように動作するようにファイルをどのように正確にコンパイルしますか。そして、これらすべてにおけるOSの役割は正確には何ですか?
usb - Web ページから直接、またはネイティブ アプリケーションへの通信を使用して、USB ストレージ デバイスと対話します。
私はすでに、Web ページから Java アプレットの一部としてダウンロードされた Java アプリケーションを持っていました。これは、デバイスからデータを保存および取得する必要がある USB ストレージ デバイスと対話できます。
Chrome はサンドボックス外で実行するアプレットのサポートを停止したため、Web ページから USB ストレージ デバイスを操作するための新しい手法を開発する必要があります。私のアプリケーション アーキテクトは、いくつかの記事を読んで学んだオプションの 1 つである JNLP を使用して同じことを達成したくありません。
OS (オペレーティング システム) やブラウザ (ほとんどの場合、クロス ブラウザのサポート) に依存しない USB ストレージ デバイス (ペン ドライブ) にアクセスするために、私の Web ページで同じアプリケーションを使用できるように、いくつかのアプリケーションの構築を手伝っていただきたいと思います。 IE、firefox、chrome、safari で動作するはずです)。
ネイティブ (OS 依存) でビルドされたアプリケーションには問題ありませんが、そのマシンにインストールされたブラウザーからそのアプリケーションと通信する方法があるはずです。
python - os.linesep とは何ですか?
Python の os モジュールには、文字列を区切るプラットフォーム固有の行の値が含まれていますが、ドキュメントでは、ファイルへの書き込み時にそれを使用しないように明示的に述べています。
テキストモードで開いたファイルを書き込むときは、行末記号として os.linesep を使用しないでください (デフォルト)。すべてのプラットフォームで、代わりに単一の '\n' を使用してください。
前の質問では、このコンテキストで使用すべきではない理由を探りましたが、それではどのようなコンテキストに役立つのでしょうか? 行区切り記号はいつ、何のために使用する必要がありますか?