问题标签 [platform-independence]
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.
java - 以独立于平台的方式将环境变量传递给 JVM
我正在开发一个在 Windows Vista 机器上的 JBoss 中运行的 J2EE 应用程序,但该应用程序最终会在 Linux 机器上运行。有没有办法以独立于平台的方式传递环境变量的值?
我认为(但我不确定)平台敏感的方式是:
并从那里我将访问值(在Java中)使用
- 那是对的吗?
Javadoc forSystem.getenv(String name)
似乎暗示该方法依赖于平台,但我不清楚这一点。我是否可以完全跳过将变量传递到 JVM,并getenv()
在使用操作系统设置环境变量的值后使用?
operating-system - 程序如何执行?操作系统在哪里发挥作用?
程序从某种语言编译为 ASM --> 机器代码(直接可执行)。当人们说这取决于平台时,意味着形成的二进制文件将(正确)仅在具有相同指令集架构(如 x86、x86-64)的 CPU 上运行。由于 ISA 的不同,它可能(错误地)/可能(根本不)在其他进程上运行。正确的?
现在,二进制文件的概念让我感到困惑。一切都与“机器语言代码”和“CPU”有关。操作系统在哪里发挥作用?我的意思是编译后的二进制文件在加载到内存时有直接的 CPU 指令。& CPU 一次执行一条指令。除了进程管理链接文本之外,我在任何地方都看不到操作系统的作用。无论操作系统如何,它都应该在相同 ISA 的 CPU 上运行。正确的?
然而事实并非如此。如果我在 Windows 机器上构建 x86 的代码。它不会在 Mac x86 机器或 Linux x86 机器上运行。
我在这里遗漏了一些东西。请清除我的困惑。
java - 按文件类型触发外部应用程序/帮助程序的平台独立方式?
例如,我正在开发的一个应用程序将 PDF 文件存储到数据库中,然后可以将它们拉回显示。我在那里接到一个电话,使用 Runtime.exec 执行“cmd /c start”加上 PDF 文件名。适用于 Windows。虽然我们也在 Solaris 和 Mac 上运行该软件,但更愿意找到一种独立于平台的方式(试图避免使用各种操作系统的替代方法检测操作系统)来做到这一点。
c++ - 不改变框架的平台独立并行化?
我希望标题没有误导你。
我的问题如下:目前我尝试加速光线追踪器,这是在显卡的帮助下完成的。尽管它因此变慢了,但它工作正常。:)
这是因为我在显卡(我的“跟踪服务器”)上一次在整个几何图形上跟踪一条光线,然后获取结果,这非常慢,所以我必须收集一些光线并计算它们并一起获取结果以加快速度。
下一个问题是,我不允许重写对这种并行化一无所知或最不可能知道的周围框架。
所以这是我的方法:我考虑过使用多个线程,每个线程都获取一条射线并请求我的“跟踪服务器”计算交叉点。然后线程停止,直到收集到足够的光线来计算显卡上的交点并有效地返回结果。这意味着每个线程都将等待,直到获取结果。
你看我已经有一些计划但是我不知道:
- 我应该采用哪个线程框架独立于平台?
- 我应该使用固定大小的线程池还是根据需要创建它们?
- 任何给定的线程库都可以处理至少 1000 个等待线程(因为这将是我需要收集的数量才能使我的 fetch 有效)?
但我也可以想象用一个线程来做这件事
- 将其负载(新光线)转储到“跟踪服务器”并获取下一个负载,直到
- 有足够的获取结果。
- 然后线程将一一获取结果,进行进一步的计算,直到处理完所有结果,然后返回到第一步,直到完成所有光线。
另外,如果您对如何并行化有更好的想法,请告诉我。
问候,
没有人
PS 如果您需要此信息:我要使用的两个平台是 Linux 和 Windows。
java - Java中与系统无关的机器关闭
可能重复:
使用 Java 关闭计算机
我正在制作一个个人程序,该程序将在一定时间或特定时间/日期后关闭我的计算机。但是,我正在运行多个操作系统,并希望使用一个简单的 Java 程序来完成此操作。有没有办法在不使用任何外部库的情况下在 Java 中发送与系统无关的机器关闭请求?我知道你可以java.awt.Desktop.getDesktop().browse(new URI("shutdown /s"));
在 Windows 中使用,但是,我想要系统独立。
java - Can I find out what variable java.library.path maps to on the current platform?
So far I've learned the following about the java.library.path property:
- It's used when loading native libraries, as opposed to java classes
- Its default value depends on the operating system:
- On Windows, it maps to PATH
- On Linux, it maps to LD_LIBRARY_PATH
- On OS X, it maps to DYLD_LIBRARY_PATH
(Please correct me if I've misunderstood any of the above)
My motivation:
I want to modify the value of java.library.path seen by a Java application from the framework I've set up to invoke the Java application. I want to do this not by setting the java.library.path property directly, but instead by modifying the system path variable that it maps to. I'd like a clean way to do this that doesn't have ugly OS-specific code or leave out edge cases if possible.
My question:
Is there a way to ask the local Java implementation what environment variable java.library.path maps to?
Then, in a shell script, I'd be able to write something along the lines of:
java - 有多少 Java 支持的平台?
我正在设计一个将使用本机代码的库,但我计划使其跨平台。我想知道我必须编写多少个不同的版本来支持每个本机实现,例如 windows、linux、mac osx。
c++ - 独立于平台的延迟计时器
问题
我最初发布了这个问题,这显然不符合我的客户规范。因此,我正在重新定义问题:
为了更深入地理解这个问题,可以使用原帖上的时序图。延迟器需要独立于平台。准确地说,我运行了一个作业调度程序,显然我当前的延迟器不会与它兼容。我坚持的是延迟器的“独立”位。我已经使用Probe
(采样时间探针)和Variable Integer Delay
块在 SIMULINK 中敲掉了一个延迟器。然而,在我们的验收阶段,我们意识到调度程序不符合这样的配置,需要更内在和基本的东西——比如在 C/C++ 应用程序中运行的 while 循环。
初步解决方案
我能想到的解决方案如下:
定义一个名为 的全局静态时间片变量
tslc
。基本上,这是调度程序运行的频率。单位可以是秒定义一个具有以下主体的函数:
/li>
请用户原谅我糟糕的函数编码技能,但我只是想提出一个解决方案。如果人们在这里为我提供一些建议,我将不胜感激!
计算平台 Windows 2000 服务器
目标计算平台 嵌入式系统卡 - 类似于现代图形卡或声卡,位于 PCI 插槽之一。我们在测试平台上进行测试,最后在嵌入式系统卡上实施解决方案。
python - 使用 Python 快速查找文件的独立于操作系统的方法
使用 Python,如何快速搜索目录(包括子目录)中的文件?
如果在 Linux 下工作,这里的标准答案 use os.walk()
,这比 call 慢。find /path -iname "*string*"
是否有一种干净的独立于平台的方式来实现更好的速度?
java - 本机方法和平台独立性
public static native long currentTimeMillis()
这是从Java类方法的源代码中提取的注释java.lang.System
。
从这个评论中很明显,这个本地方法的行为是平台相关的。如果是这种情况,我们是否应该避免在 Java 中编写真正独立于平台的代码的本地方法调用?