草庐IT

磁盘、

全部标签

.net - 是否值得同步 I/O 密集型线程以提高总体磁盘性能?

我们的Windows.NET应用程序有几个I/O密集型线程,它们不断地写入磁盘(旋转媒体)。来自一个线程的写操作是在不知道另一个线程的写操作的情况下完成的,因此这意味着写请求以与执行调用相同的顺序命中WindowsI/O管理器。在我们的项目中已经讨论过这是否是正确的方法,或者我们是否可以通过同步写操作来获得一些性能,以便只有一个(或几个)线程执行写操作同时到磁盘(可能通过共享锁)。从理论上讲,这会减轻CPU的压力,并为我们提供更好的吞吐量(请注意,我们已经在所有操作中使用异步I/O)。我对整个想法有点怀疑,因为我认为我们将完成操作系统最初设计要解决的部分工作。现在已经进行了一些实验,它

c++ - GetFreeDiskSpaceEx 如何返回(看似)错误的磁盘空间量?

所以我在一个输出大图像(从30MB到2GB+的任何地方)的设备上工作。在我们开始创建这些图像之一之前,我们通过GetDiskFreeSpaceEx检查是否有足够的磁盘空间。通常(在这种情况下)我们正在写入同一网络上的共享文件夹。磁盘空间没有用户配额。昨晚,为了准备演示,我们开始了试运行。在运行过程中,我们遇到了失败。我们需要327391776字节,但被告知我们只有186580992可用。GetDiskFreeSpaceEx中的数字是:Userfreespaceavailable:186580992Totalfreespaceavailable:186580992那些对应于GetDisk

c++ - 计算可用磁盘空间

仅使用C++计算可用磁盘空间的最佳方法是什么。我的目标平台是WinCE,但大部分文件操作与普通Windows相同。 最佳答案 你的意思是剩余多少空间?然后尝试GetDiskFreeSpace()或者你的意思是,读/写/当前打开文件的数量、速度等? 关于c++-计算可用磁盘空间,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2835094/

c# - 用于远程 Web 服务的 Windows 虚拟磁盘

我需要实现一个Windows虚拟磁盘,它在Windows资源管理器中作为一个单独的磁盘设备可见,并将所有文件/目录来回传输到远程Web服务-就像DropBox一样。我必须实现/使用内核驱动程序SDK吗?或者是否可以只使用shell扩展?我需要的是拦截该磁盘上的所有文件/目录操作并将它们映射到相应的WebService调用(文件创建/删除/移动/编辑和数据传输)。谢谢 最佳答案 为此,您需要结合使用内核模式驱动程序和Windows服务/应用程序:http://dokan-dev.net/en/(免费)http://www.eldos.

python - 如何检查磁盘是否在使用 python 的驱动器中?

假设我想操作软盘驱动器或USB读卡器上的一些文件。如何检查有问题的驱动器是否准备就绪?(即物理插入磁盘。)驱动器盘符存在,因此在这种情况下os.exists()将始终返回True。此外,在这个过程中,我还不知道任何文件名,因此检查给定文件是否存在也不起作用。一些澄清:这里的问题是异常处理。大多数有问题的win32API调用只是在您尝试访问未就绪的驱动器时抛出异常。通常,这会很好地工作-寻找类似可用空间的东西,然后捕获引发的异常并假设这意味着不存在磁盘。然而,即使我捕捉到所有异常,我仍然会收到来自Windows的异常对话框,告诉我软盘/读卡器尚未准备好。所以,我想真正的问题是-如何抑制W

Linux下新加新磁盘分区及挂载

文章目录一:新插入磁盘查看法1:$sudofdisk-l法2:$sudolsblk二:磁盘分区及格式化1:分区2:格式化三:磁盘分区挂载1:手动挂载2:开机自启挂载四:相关操作的shell自动化一:新插入磁盘查看查看插入磁盘法1:$sudofdisk-l法2:$sudolsblk二:磁盘分区及格式化1:分区$sudofdisk/dev/nvme0n1进入分区工具后,我们可以输入m看指令说明:Command(mforhelp):n>>Partitiontypepprimary(0,primary,0extended,4free)eextended(containerforlogicalparti

java - IOException 在访问 Citrix 安装的驱动器时磁盘空间不足

我遇到了一个非常奇怪的问题。我正在尝试下载一些文件并存储。我的代码相对简单明了(见下文)并且在我的本地机器上运行良好。但它旨在运行在通过Citrix和VPN访问的Windows终端服务器上。该文件将保存到已安装的网络驱动器中。此挂载是通过CitrixVPN挂载的本地C:\驱动器,因此可能会有一些滞后。不幸的是,我没有关于整个基础设施究竟是如何设置的内部细节......现在我的问题是,当尝试执行write()调用时,下面的代码抛出IOException告诉我磁盘上没有剩余空间。目录结构已正确创建并创建了一个零字节文件,但内容从未写入。驱动器上有超过1GB的可用空间,Citrix客户端已获

windows - 谁能推荐适用于 Windows 的磁盘 I/O 基准测试软件?

我想测试文件系统在不同条件下的性能。具体来说,我想在“普通硬盘”和USB磁盘上测试无压缩和有压缩的Windows虚拟机的性能,因为如果能确切地了解它们之间的区别会很有趣。我需要的是一个程序,它可以测试文件系统的不同方面(随机访问、顺序读/写等),并制作与我的博客相得益彰的漂亮图表。最好应用程序应该是自动化的,这样我就可以将它添加到启动中,这样每次运行的时间都是相同的,我可以重复运行以进行验证。当我开始测试时,我可以在此处发布指向结果的链接。目前还处于规划阶段。 最佳答案 Iometer是I/O测量工具。而且是免费的。来自网站:Iom

windows - 如何使用 Get-PSDrive 仅列出有效的已安装磁盘分区?

我昨天才发现PowerShell,我喜欢它。我正在尝试列出所有有效挂载的分区,这样我就可以将它们设为变量并在它们上运行chkdsk。问题是我不想检测机器上的备份分区。我用来编写和测试此脚本的计算机没有任何备份/未安装的分区。我正在仔细阅读get-helpget-psdrives但我不了解这些选项是否可以满足我的需要(或者他们是否已经在这样做)。 最佳答案 这将为您提供所有可以运行chkdsk的驱动器:Get-PSDrive-PSProviderFileSystem编辑:这将为您提供已安装的驱动器LocalDisks(3)orremo

c++ - 如何写入文件然后读回以验证其内容,确保您获得的是磁盘上的内容而不是缓存

我在Windows上使用native/C++/Win32/MFC代码通过MFC序列化保存文档文件。我在写入过程中插入了我自己的CFile派生类,使我可以在写入数据时访问数据。这使我能够在数据输出到文件时计算数据的校验和(或哈希等)。保存文件后,我想允许验证文件的选项。这个想法是重新打开文件并通读它以验证校验和/哈希/等。不过,我想知道是否有可能在刚刚写入文件后,当我立即读回文件时,操作系统可能会给我未写入的数据。在这种情况下,测试并没有真正告诉我文件在磁盘上看起来不错。我的担忧是否成立?如果是这样,有什么办法可以避免这个问题吗? 最佳答案