0

在 Windows 上的 Java 6 中,我有兴趣执行以下任务,但真的不知道如何去做。

  1. 我想要一个 zip 文件
  2. 将其内容解压缩到内存/RAM 中的某个位置
  3. 创建一个 Java 进程,该进程将运行该 ZIP 文件中存在的 .EXE 文件
  4. 该 .EXE 必须在当前工作目录是 RAM 中的那个位置时运行
  5. 然后,我需要将另一个文件放入 RAM 中相同的“当前工作目录”位置空间。

我知道这听起来很奇怪,但这样做实际上会让事情变得更有效率,所以如果可能的话,很高兴知道。

4

1 回答 1

0

听起来很难,而且肯定需要很多纯 Java 做不到的东西。

在 Linux 上,我认为您需要执行以下操作:

创建“ram disk”文件系统的命令将是特定于操作系统的,并且可能需要 root / 管理员权限。


目前尚不清楚这样做是否会比在文件系统中使用临时目录更有效。除非明确证明需要更有效的解决方案,否则我不会尝试这样做;即除非您尝试使用临时目录并发现它太慢。

请记住:

  • 解压缩 ZIP 文件的大部分(可能是大部分)工作都必须以您的方式完成,并且

  • 在常规情况下,您的 .exe可能会从操作系统的内存磁盘块缓存(在 Linux 上)中读取扩展 ZIP 中的文件。

于 2013-08-01T01:17:23.433 回答