标签: disk

如何在C#中清空/刷新Windows READ磁盘缓存?

如果我试图确定驱动器的读取速度,我可以编写例程来将文件写入文件系统然后再读取这些文件.不幸的是,由于Windows执行磁盘读取缓存,因此无法提供准确的读取速度.

有没有办法在C#/ .Net(或者可能使用Win32 API调用)中刷新驱动器的磁盘读取缓存,以便我可以直接从驱动器读取文件而不缓存它们?

.net c# caching disk flush

7
推荐指数
3
解决办法
1万
查看次数

从损坏的介质中读取数据

是否有可能读取损坏的媒体(cd,hdd,dvd,...)即使Windows资源管理器炸弹了?

我的意思是,是否有一组API或者某些东西能够以非常低的级别访问磁盘(在资源管理器下面?)并读取任何可以检索的东西,即使它只是部分的,特别是如果你仍然可以看到该文件来自资源管理器,但无法对它做任何事情,因为它以某种方式损坏(在CD上刮擦等)?

recovery file disk

7
推荐指数
1
解决办法
1269
查看次数

Windows中的直接磁盘访问(C#)

我希望能够直接从磁盘读取和写入数据(即在扇区/集群级别),但我还没有找到适合在Windows下执行此操作的工具.

我一直试图弄清楚如何在C#中编写自己的文档,但我发现的文档很少,只处理C++ API.

什么是直接在C#中读取/写入驱动器的最佳方式?(或者任何人都可以向我推荐一种允许我直接从驱动器读/写的工具?)

c# disk

7
推荐指数
1
解决办法
1万
查看次数

如何在iOS上快速将ALAsset映像保存到磁盘?

我正在使用ALAsset来检索这样的图像:

[[asset defaultRepresentation] fullResolutionImage]]
Run Code Online (Sandbox Code Playgroud)

这返回CGImageRef,我想尽快保存到磁盘...

解决方案1:

UIImage *currentImage = [UIImage imageWithCGImage:[[asset defaultRepresentation] fullResolutionImage]];
NSData *currentImageData = UIImagePNGRepresentation(currentImage);
[currentImageData writeToFile:filePath atomically:YES];
Run Code Online (Sandbox Code Playgroud)

解决方案2:

CFURLRef url = (__bridge CFURLRef)[NSURL fileURLWithPath:filePath];
CGImageDestinationRef destination = CGImageDestinationCreateWithURL(url, kUTTypePNG, 1, NULL);
CGImageDestinationAddImage(destination, [[asset defaultRepresentation] fullResolutionImage], nil);
CGImageDestinationFinalize(destination);
Run Code Online (Sandbox Code Playgroud)

问题是两种方法在设备上的执行速度都很慢.每张图像大约需要2秒才能执行此操作.这绝对是长久的.

问题:如何加快图像保存过程?或许还有更好的解决方案吗?

更新: 两种解决方案中性能的最佳改进是将图像保存为JPEG格式而不是PNG.所以对于解决方案1已经取代UIImagePNGRepresentationUIImageJPEGRepresentation.对于解决方案2已经取代kUTTypePNGkUTTypeJPEG.

另外值得注意的是,第二种解决方案比第一种解决方案更有效.

image disk save ios alasset

7
推荐指数
2
解决办法
4996
查看次数

如何确定给定磁盘的SATA通道?

使用DISKPART命令行实用程序,我可以得到一个称为"位置路径"的东西,它似乎能够提供我需要的东西,您可以detail disk在选择其中一个磁盘后使用该命令查看diskpart.

看来我可以通过这个类以编程方式获取此信息:MSFT_Disk

我不确定如何获得这个类的实例.我有几个使用ManagementObjectSearcherfor WMI类的例子但是这个方法对我不起作用,我也不确定MSFT_DiskWindows 7中的可用性,因为该页面提到这是针对Windows 8的.

有谁知道获得SATA通道信息或磁盘"位置路径"的好方法?

.net c# disk sata hard-drive

7
推荐指数
1
解决办法
2341
查看次数

Directory Stats命令行界面?

Windirstat/Kdirstat/Disk Inventory X在文件管理方面一直是革命性的.为什么没有纯文本命令行等效?我需要它来管理我的文件服务器.

我们有所有的构建块:du,tree等.

有吗?为什么不?有人可以写一个吗?:)

编辑:du几乎完成我想要的.我想要的是按大小(而不是完整路径)和缩进对每个子目录进行排序,以便更容易避免重复计算.杜会给我这个:

cd a
du . -h

1G  b
2G  c
1K  c/d
1K  c/e
2G  c/f
Run Code Online (Sandbox Code Playgroud)

c和c/f重叠并不是很明显.我想要的是这个:

cd a
dir_stats .

1G  b
2G  c
    |
    +---- 2G  f
    |
    +---- 1K  d
    |
    +---- 1K  e
Run Code Online (Sandbox Code Playgroud)

很明显f的2G是因为c的2G.我可以更容易地找到与c无关的所有信息(即只扫描第一列).

linux statistics disk command-line-interface du

7
推荐指数
2
解决办法
4212
查看次数

PostgreSQL 9.0.13执行pg_restore但没有证据表明正在使用磁盘空间

我正在尝试从另一台服务器恢复使用此命令获取的pg_dump.

sudo -u postgres pg_dump --verbose --format=custom --file=pg-backup.sql -U postgres salesDB
Run Code Online (Sandbox Code Playgroud)

复制pg-backup.sql文件后,我正在尝试使用此命令进行恢复

sudo -u postgres pg_restore --verbose --jobs=`nproc` -f pg-backup.sql
Run Code Online (Sandbox Code Playgroud)

pg-backup.sql文件是13GB.pg-restore已经运行了4个小时,一直在我的屏幕上滚动数据.没有错误.

但是当我从psql会话中执行此语句时

SELECT pg_size_pretty(pg_database_size('salesDB'));
Run Code Online (Sandbox Code Playgroud)

我的大小为5377 kB.什么?它至少应该是1GB.我完全迷失了.所有这些数据都在我的屏幕上滚动,我无法证明它会在任何地方.没有磁盘使用.

救命

postgresql space pg-dump disk pg-restore

7
推荐指数
2
解决办法
3427
查看次数

如何将任意Ruby对象保存到磁盘并在必要时将其读回?

我想将Ruby集或散列保存到磁盘,并在必要时从文件中返回.我怎样才能做到这一点?

ruby file disk object save

7
推荐指数
2
解决办法
4419
查看次数

使用Windows API写入和读取可用磁盘空间

是否可以使用Windows API写入磁盘上的可用群集或从中读取数据?我发现了Defrag API:https//docs.microsoft.com/en-gb/windows/desktop/FileIO/defragmenting-files

FSCTL_GET_VOLUME_BITMAP可用于获取每个群集的分配状态,FSCTL_MOVE_FILE可用于在群集之间移动。但是我找不到从自由集群读取数据或向其写入数据的方法。

更新:想到的解决方法之一是创建一个新的小文件,向其中写入一些数据,然后将其重新放置到所需位置并删除该文件(数据将保留在释放的群集中)。但这仍然不能解决阅读问题。

我想做的是某种透明的缓存,因此用户仍然可以照常使用他的NTFS分区,并且仍然将这些群集视为可用空间,但是我可以在其中存储一些数据。数据安全性无关紧要,它可以被用户操作覆盖,并且当群集再次释放时稍后将重新生成/重新下载。

windows filesystems winapi diskspace disk

7
推荐指数
1
解决办法
208
查看次数

PostgreSQL:列磁盘使用情况

我的数据库上有一个大表,但每列上都有很多空字段,并且我\xc2\xb4d想知道每列使用了多少。

\n\n

有什么方法可以知道每个表列使用了多少磁盘空间?

\n

database postgresql disk

7
推荐指数
1
解决办法
2233
查看次数