如何在MATLAB中確定操作系統是x64還是x86?確定是否在MATLAB中運行x64或x86操作系統
注意:我找到computer
函數,但有人提到,如果x32 MATLAB在x64 OS上運行,那麼它將返回x32(而不是x64),所以此函數不會執行此操作。
如何在MATLAB中確定操作系統是x64還是x86?確定是否在MATLAB中運行x64或x86操作系統
注意:我找到computer
函數,但有人提到,如果x32 MATLAB在x64 OS上運行,那麼它將返回x32(而不是x64),所以此函數不會執行此操作。
從您的評論,我假設你正在運行Windows。
查看環境變量PROCESSOR_ARCHITECTURE和PROCESSOR_ARCHITEW6432。他們的存在和價值的組合將告訴你你正在運行什麼。
在x64的Windows x64的Matlab的:
PROCESSOR_ARCHITECTURE = AMD6486 Matlab的基於x86的Windows:
PROCESSOR_ARCHITECTURE = 8686 Matlab的在x64的Windows:
PROCESSOR_ARCHITECTURE = 86
PROCESSOR_ARCHITEW6432 = AMD64
然後,您可以使用環境變量PROGRAMFILES,PROGRAMFILES(X86)和PROGRAMW6432來查找正確的「程序文件」路徑來啓動您的外部應用程序,如果它安裝在傳統位置。
有關Windows x64和x86環境如何交互的更多信息,請參見Google「WoW64」。
在Windows上,您可以嘗試解析dos('systeminfo')
的輸出,但它不是很快。在Linux上,您可以嘗試解析unix('uname -a')
的輸出。
謝謝,這可能是一個解決方案。我正在運行x64 Win 7,並在「系統類型」下返回「基於x64的PC」。如果我在x64硬件上運行x32 Win,會不會是「基於x32的PC」? – niels
在MATLAB'winqueryreg('HKEY_LOCAL_MACHINE','HARDWARE \ DESCRIPTION \ System \ CentralProcessor \ 0','Identifier')'試試這個。我得到了「Intel64 Family 6 Model 23 Stepping 10」作爲迴應,顯然我運行的是x64操作系統。那些可以運行命令並編寫反饋(您正在運行的操作系統,如果您的硬件支持x64體系結構) – niels
我打算建議'getenv('PROCESSOR_ARCHITECTURE')',但這似乎在32位MATLAB中返回'x86'。 – Nzbuu
你爲什麼需要這個?如果你使用的是matlab擴展,它必須被編譯爲matlab版本(x32或x64)...... –
@FooBah:我需要明確地知道這一點,所以我可以在dos(thecorrectfile.bat)的基礎上, (x32/x64)我正在運行 – niels