用于编译的 RAM 驱动器 - 有这样的东西吗?

2023-12-19

An answer https://stackoverflow.com/questions/354160/what-do-you-do-while-your-codes-compiling#354176 (see below) to one of the questions right here on Stack Overflow gave me an idea for a great little piece of software that could be invaluable to coders everywhere.

我正在想象 RAM 驱动器软件,但有一个关键的区别 - 它会镜像我的硬盘驱动器上的真实文件夹。更具体地说 - 包含我当前正在处理的项目的文件夹。这样,任何构建都几乎是瞬时的(或者至少快几个数量级)。 RAM 驱动器将仅使用空闲资源在后台将其内容与硬盘驱动器同步。

快速谷歌搜索没有发现任何结果,但也许我只是不知道如何谷歌。也许有人知道这样的软件?最好是免费的,但合理的费用也可以。

Added:有人建议了一些解决方案,但我一开始就放弃了。它们将是(排名不分先后):

  • 购买更快的硬盘驱动器(SSD http://en.wikipedia.org/wiki/Solid-state_drive也许或 10K RPM)。我不需要硬件解决方案。软件不仅有可能变得更便宜(免费软件,有人吗?),而且还可以在硬件修改不受欢迎甚至不可能的环境中使用 - 例如,在办公室。
  • 让操作系统/HDD 进行缓存 - 它更知道如何使用您的空闲 RAM。操作系统/硬盘具有通用缓存算法,可以缓存所有内容并尝试预测将来最需要哪些数据。他们不知道对我来说优先事项是我的项目文件夹。众所周知,他们并没有真正缓存太多数据。 ;)
  • 周围有大量的 RAM 驱动器;使用其中之一。抱歉,这样就太鲁莽了。只要有一点空闲时间,我就需要将数据同步回硬盘。如果发生停电,我可以忍受失去最后五分钟的工作,但不能忍受失去上次签到以来的所有工作。

Added 2:出现的一个想法 - 使用普通 RAM 驱动器加上后台文件夹同步器(但我的意思是背景)。有这样的事吗?

Added 3:有趣的。我刚刚在工作中尝试了一个简单的 RAM 驱动器。重建时间从约 14 秒下降到约 7 秒(不错),但增量构建仍为约 5 秒 - 就像在 HDD 上一样。有什么想法吗?它用aspnet_compiler and aspnet_merge。也许他们在其他地方对其他临时文件做了什么?

Added 4:哦,很好的新答案! :) 好的,我为所有反对者提供了更多信息。 :)

这个想法的主要原因之一不是上述软件(14 秒的构建时间),而是另一个我当时无法访问的软件。这个其他应用程序有 100 MB 的代码库,其完整构建大约需要 5 分钟。啊,是的,它在Delphi 5 http://en.wikipedia.org/wiki/Embarcadero_Delphi,所以编译器并不太先进。 :) 将源代码放在 RAM 驱动器上会产生很大的差异。我想我不到一分钟就明白了。我没有测量过。因此,对于所有说操作系统可以更好地缓存内容的人来说,我不敢苟同。

相关问题:

用于加速 IDE 的 RAM 磁盘 https://stackoverflow.com/questions/501718/ram-disk-for-speed-up-ide

第一个链接的注意事项:它链接到的问题已被删除,因为它是重复的。它问:

编译代码时你会做什么?

答案是德米特里·涅斯特鲁克 https://stackoverflow.com/users/9476/dmitri-nesteruk我链接到的是:

我几乎立即编译。部分是因为我的项目很小,部分是因为使用了 RAM 磁盘。


在 Linux 中(你从未提到过你所在的操作系统,所以这个could相关)您可以从 RAM 创建块设备并像任何其他块设备(即 HDD)一样安装它们。

然后,您可以创建在启动/关闭时以及定期复制到该驱动器或从该驱动器复制的脚本。

例如,您可以将其设置为~/code and ~/code-real。你的 RAM 块被安装在~/code启动时,然后一切都从~/code-real(位于您的标准硬盘驱动器上)被复制。关闭时所有内容都会被复制(rsync http://en.wikipedia.org/wiki/Rsync会更快)从回来~/code to ~/code-real。您可能还希望该脚本定期运行,这样在发生电源故障等情况时您就不会丢失太多工作。

我不再这样做了(我用过它Opera http://en.wikipedia.org/wiki/Opera_%28web_browser%29当 9.5 beta 很慢时,就不再需要了)。

以下是如何在 Linux 中创建 RAM 磁盘。 http://www.vanemery.com/Linux/Ramdisk/ramdisk.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用于编译的 RAM 驱动器 - 有这样的东西吗? 的相关文章

  • 如何使用 Git 跟踪目录而不是文件?

    我最近开始使用 Git 但只有一件事遇到了麻烦 如何在不跟踪目录内容的情况下跟踪目录 例如 我正在开发的网站允许上传 我想跟踪上传目录 以便在分支等时创建它 但显然不是其中的文件 在开发分支中的测试文件或主控中的真实文件 在我的 gitig
  • 无法在 Windows 上使用 Gnustep 编译 Objective C

    嗨 我是初学者 学习目标c 我发现错误 hello m 1 34 Foundation Foundation h 没有这样的文件或目录 我开始知道我需要制作一个 make 文件 我可以知道如何制作 make 文件吗 无需创建 makefil
  • 如何使用pyinstaller?

    好吧 我是一个完全的编程菜鸟 我正在尝试编译一个我编写的简单程序 该程序接受一个字符串并以莫尔斯电码打印该字符串 它被称为 morse py 我使用安装 pyinstaller pip install pyinstaller 我正在尝试使用
  • 在我的 index.php 中加载 CSS 和 JS 等资源时出现错误 403

    我使用的是 Linux Elementary OS 并在 opt 中安装了 lampp My CSS and JS won t load When I inspect my page through browser The console
  • 从目录中读取所有文件内容 - php

    这实际上是一个简单的任务 我想显示指定文件夹中所有文件的内容 我正在传递目录名称 echo a href row qname a 在第二页上 我正在迭代目录内容 while entryname readdir myDirectory if
  • 通过 HTML 或 JavaScript 禁用 Web 表单上的自动填充?

    有没有办法通过 HTML 或 JavaScript 禁用 Chrome 和其他浏览器中表单字段的自动填充 我不希望浏览器自动填写该浏览器以前用户的表单上的答案 我知道我可以清除缓存 但我不能依赖重复清除缓存 您可以在 HTML 的输入级别添
  • 返回导航缓存 - IE

    当我在 IE 11 上运行 Web 应用程序时 收到如下警告消息 DOM7011 此页面上的代码禁用了后退和前进缓存 为了 更多信息 请参阅 http go microsoft com fwlink LinkID 291337 http g
  • 如何在Python中重命名virtualenv?

    我拼错了名字virtualenv使用以下方法初始化它 virtualenv vnev 我实际上打算创建一个名为的环境venv 尝试重命名后vnev文件夹到venv 我发现这并没有提供太多帮助 激活环境的名称仍然重命名旧的vnev mv vn
  • 在 python 上获取大目录文件列表的最佳方法?

    我有一个疯狂的大目录 我需要通过 python 获取文件列表 在代码中我需要获取迭代器 而不是列表 所以这不起作用 os listdir glob glob uses listdir os walk 我找不到任何好的库 帮助 也许是c li
  • ASP.NET MVC 3 文件夹结构

    在了解了传统 ASP NET Webform 的背景后 我正在学习 MVC 框架 我正在开发一个典型的示例电子商务网站 该网站具有公共域 然后能够注册提供对安全会员区域的访问的服务 我有几个问题 在 ASP NET 中 私有成员页面通常与公
  • 将 ffmpeg 编译为独立二进制文件

    我正在尝试编译ffmpeg作为独立的二进制文件 因为我想在 AWS lambda 中使用它 我可以让事情在我正在编译的服务器上正常工作 但是如果我复制二进制文件并从另一台服务器运行它 我会得到 ffmpeg error while load
  • 在 TypeScript 中使用最新的 JavaScript 功能,例如 ES2018

    我尝试搜索有关其配置的 TypeScript 文档 但似乎找不到这个简单问题的答案 简单地说 如何配置 TypeScript 编译器以便它知道我们正在使用哪些 JavaScript 功能集 例如 ES2019 发布了 我想 哦 想给我一些
  • Zend_Cache_Backend_Sqlite 与 Zend_Cache_Backend_File

    目前我正在使用 Zend Cache Backend File 来缓存我的项目 尤其是来自外部 Web 服务的响应 我在想是否能找到将结构迁移到 Zend Cache Backend Sqlite 的一些好处 可能的优点是 文件系统有序 缓
  • 集群环境下如何管理spring缓存

    我正在尝试使用 spring 为我的应用程序构建缓存服务 缓存需要从数据库填充 我的应用程序在三个节点上运行 并希望所有三个节点都与缓存同步 如果一个节点在缓存中获得更新的值 它应该通知其他节点 我在看Spring 缓存抽象 http do
  • “%d”需要“int”类型的参数,但参数 2 的类型为“long unsigned int”[-Wformat=] [重复]

    这个问题在这里已经有答案了 我不断收到编译警告 但我不知道如何解决它 d expects argument of type int but argument 2 has type long unsigned int 程序运行良好 但我仍然收
  • 让 Doctrine 默认使用结果缓存

    我正在将 Memcache 绑定到 Doctrine 看来我必须这样做useResultCache明确地在每个查询中 是否可以做到true默认情况下 能够useResultCache false 哪里不需要 创建一个显式设置的包装类 函数u
  • Django 不显示更新的 css 文件

    因此 我使用 sass 来更新我的 Django 站点 并使用 git 来对整个内容进行版本控制 我最近对 CSS 文件进行了更新 其中存在一些严重错误 Sass 编译了更改 然后我将新版本推送到服务器 我查看了服务器 新的 css 文件实
  • 为什么Eclipse不需要我配置JDK?

    我最近将 Eclipse 下载到 Windows 7 计算机上 该机器已经有 JRE 但我注意到它没有 JDK 我担心我必须下载 JDK 然后将 Eclipse 连接到它 当我能够在 Eclipse 中直接进行编码 编译和运行时 我感到 愉
  • 使用 RSpec 进行 Rails 片段缓存测试

    我觉得这是一个没有太多记录的主题 至少我在这里找到最佳实践时遇到了很多麻烦 我使用 cache key 在视图中进行片段缓存 tbody employees each do employee cache employee do tr emp
  • ChangeState 之后重置/卸载控制器(调用注销)。 AngularJS

    我正在创建一个应用程序 用户可以从 Facebook 或 Twitter 登录 登录后 用户将被定向到某个主页 在这里 控制器加载并调用我的初始函数 该函数加载特定于该用户的数据 当用户单击 注销 时 令牌将被清除 用户将被定向到登录页面

随机推荐

  • OR 在自定义条件格式公式中

    在 Google 表格中 我有一个这样的表格 A B C D B color color none none color 我想为包含的单元格的背景着色A or B 有没有任何自定义公式可以帮助解决这个问题 假设相关行是第一行 请选择它并尝试
  • 什么是进程的实时优先级

    ps o p 还提供 rtprio 和 prio 有什么不同 如果您正在使用实时调度程序 这意味着如果进程由实时调度程序控制运行 那么 rtprio 可能是相关的 prio 与默认调度程序 sched 相关 通常 RT 进程默认具有系统范围
  • 如何允许用户从Android的内部和外部存储器中仅选择pdf文件

    由于我可以打开 下载 文件夹 但 PDF 看起来已禁用 因此我无法选择 PDF 文件 还有其他方法可以实现这一目标吗 这是按钮点击的代码 case R id pdf Upload Intent intent new Intent inten
  • 用于 Xcode 4.x 的 CS106B 库

    是否有 CS106B 的斯坦福 C 库版本可与 Xcode 4 x 一起使用 iTunes U 视频已有大约 4 年历史 讲义中提到的库与 Xcode 4 x 10 7 3 不兼容 我已经尝试安装 Xcode 3 但它在启动时崩溃 因此这不
  • 动态宽度 DIV 位于静态宽度 DIV 旁边

    一切都在标题中 我试图将页面左侧的 div 设置为静态宽度 170px 这很好用 我遇到的问题是在它旁边添加一个 div 它会缩放以适应剩余的宽度 我可以在这里使用一个简单的方法吗 在右侧 div 上 只需设置边距 style margin
  • 在段落定界符非标准的段落上拆分文本

    如果我的文本具有标准段落格式 空行后跟缩进 例如文本 1 则可以很容易地使用 text split n n 提取段落 Text 1 Lorem ipsum dolor sit amet consectetur adipiscing elit
  • Android - 活动与视图

    我正在开发一个 Android 应用程序 该应用程序有多个屏幕 用户需要在多个屏幕之间导航 我很好奇在这些屏幕之间切换时的最佳实践是什么 我在为每个屏幕创建一个新的 Activity 和简单地更改视图 setContentView R la
  • ruby、sinatra 和 haml 中的联系表

    我对这三个方面都是新手 我正在尝试为网站编写一个简单的联系表格 我想出的代码如下 但我知道它存在一些基本问题 由于我对 sinatra 缺乏经验 任何帮助完成这项工作的帮助将不胜感激 我似乎无法弄清楚 找到这类事情的文档 联系页面的 ham
  • //! [0] Qt源代码中

    的含义是什么 n n 0 1 2 Qt 示例项目中 C QML 源代码中的标记 例如 0 GLWidget GLWidget Helper helper QWidget parent QGLWidget QGLFormat QGL Samp
  • GrabCut 算法的 OpenCV Python 绑定

    我一直在尝试通过 Python 绑定使用 OpenCV 实现抓取剪切方法 我尝试过在 cv 和 cv2 中使用该版本 但我无法找到正确的参数来使该方法正确运行 我尝试了几种参数排列 但似乎没有任何效果 基本上是我在 Github 上看到的每
  • 我可以从 R 中访问 Mac Numbers (.num) 文档吗?

    我知道我可以使用 RODBC 库从 Windows 中访问 excel xls 文档 但是 iWorks 附带的 Numbers 程序是否有类似的功能 如果没有 还有哪些其他解决方案可以轻松编辑电子表格 如查找表 并在 R 中访问它 我知道
  • 如何用Java发现文件的创建时间?

    有没有一种简单的方法可以用Java发现文件的创建时间 File 类只有一个方法来获取 最后修改 时间 根据我在 Google 上找到的一些资源 File 类不提供 getCreationTime 方法 因为并非所有文件系统都支持创建时间的概
  • wp_kses_post 函数中允许使用哪些 HTML?

    我需要清理 admin notices 的输出 它使用某些东西 例如 a id href title strong 使用是个好主意吗wp kses post功能 阅读文档我不确定允许哪些 HTML 标签https developer wor
  • 将 XML 字符串转换为对象

    我正在通过套接字接收 XML 字符串 并希望将它们转换为 C 对象 消息的形式如下
  • 让 Python 的 `assert` 抛出一个我选择的异常

    我可以做吗assert抛出一个我选择的异常AssertionError UPDATE 我将解释我的动机 到目前为止 我已经进行了断言式测试 这些测试引发了我自己的异常 例如 当您创建一个Node具有某些参数的对象 它会检查参数是否适合创建节
  • 沿着一系列 CGPoint 移动图像

    我将路径存储在 CGPoints 数组中 我想沿着它移动图像 这是我到目前为止的一般代码 void movePic id sender for int i 0 i lt self array count i CGPoint location
  • Android - 应用程序在棒棒糖之前的设备上崩溃

    我的应用程序在 Lollipop 设备上运行良好 但在 Lollipop 之前的版本上一直崩溃 我只是通过谷歌文档使用以下代码在我的应用程序中实现了横幅添加 Request for Ads AdRequest adRequest new A
  • 将带有模板参数的方法传递给宏

    我无法使用 Google 测试ASSERT THROW 宏与多个模板参数相结合 考虑到我想确保Matrix lt 5 1 gt throws ASSERT THROW Matrix lt 5 1 gt std runtime error 这
  • 如何将 Joomla 参数传递到 iframe(包装器)页面?

    我尝试使用 getUser 函数和位于 Joomla iframe 包装器 中的 php 脚本来获取我的用户信息 似乎将参数传递给 iframe 代码时出现问题 我捕获用户信息的唯一方法是将代码插入到基本文章 不是 iframe 中 var
  • 用于编译的 RAM 驱动器 - 有这样的东西吗?

    An answer https stackoverflow com questions 354160 what do you do while your codes compiling 354176 see below to one of