2 qq 36146774 qq_36146774 于 2016.09.16 13:12 提问

快速创建1G文件,对其写入的问题。 50C

快速创建一个1G的文件,对其进行写入,关闭文件读取,若为乱序读取(每次随机读取一定字节,共读完1G),计算所需的时间。

请问这道题的思路是怎样啊? 为什么是随机读取? 不是从头读到尾吗

3个回答

caozhy
caozhy   Ds   Rxr 2016.09.17 02:45

这个要看你的题目的背景,在真实条件下,这个时间估算是很复杂的,涉及存储器的物理构造、操作系统、文件系统等等。不确定因素太多。

qq_36146774
qq_36146774   2016.09.18 15:21

那快速创建1G是用命令创建嘛?

caozhy
caozhy 直接移动文件指针,然后关闭文件,就可以了。ntfs文件系统秒创建。
接近 2 年之前 回复
u011606457
u011606457   2016.09.18 15:29

随机存取文件的行为类似存储在文件系统中的一个大型字节数组。存在指向该隐含数组的光标或索引,称为文件指针;输入操作从文件指针开始读取字节,并随着对字节的读取而前移此文件指针。如果随机存取文件以读取/写入模式创建,则输出操作也可用;输出操作从文件指针开始写入字节,并随着对字节的写入而前移此文件指针。写入隐含数组的当前末尾之后的输出操作导致该数组扩展。
为什么是随机读取? 估计是为了更加考验程序的性能吧

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Windows上快速创建一个1G以上的大文件
利用fsutil命令fsutil file createnew e:\b.txt 1073741824以上命令就是在e盘创建一个1G的b.txt文件
文件操作——linux快速创建大文件的方法
还记得去年在准备某公司的笔试时遇到了一道题目,题目中要求”快速创建1G的大文件“,后面的要求这里暂且就省略了。如何快速创建指定大小的大文件呢?可能有很多种办法,这里提供两种办法。1、利用dd命令操作创建文件//结合C语言,可以使用system函数调用shell命令 char *shell = "dd if=/dev/zero of=test.txt bs=1K count=1024"; system
linux快速生成大文件
dd命令可以轻易实现创建指定大小的文件,如 dd if=/dev/zero of=test bs=1M count=1000 会生成一个1000M的test文件,文件内容为全0(因从/dev/zero中读取,/dev/zero为0源)。 但是这样为实际写入硬盘,文件产生速度取决于硬盘读写速度,如果欲产生超大文件,速度很慢。 在某种场景下,我们只想让文件系统认为存在一个超大文
用CMD命令行快速创建一个4G大小的文件
首先点击开始——运行——CMD回车——打开命令提示符 现在开始创建 fsutil file createnew d:LOVE.txt 4000000000 然后回车即可 解释一下这个命令 fsutil file createnew这部分是命令的主语不能更改的, d:这个是盘符,如果要在E盘创建就输入E:或者C盘就输入C: LOVE.txt这个是文件名字,你可以自己更改  .txt是
海量数据排序——如果有1TB的数据需要排序,但只有32GB的内存如何排序处理?
1、外排序   传统的排序算法一般指内排序算法,针对的是数据可以一次全部载入内存中的情况。但是面对海量数据,即数据不可能一次全部载入内存,需要用到外排序的方法。外排序采用分块的方法(分而治之),首先将数据分块,对块内数据按选择一种高效的内排序策略进行排序。然后采用归并排序的思想对于所有的块进行排序,得到所有数据的一个有序序列。  例如,考虑一个1G文件,可用内存100M的排序方法。首先将文件分成
Linux生成指定大小文件的方法
# dd if=/dev/zero of=50M.file bs=1M count=50 在当前目录下生成一个50M的文件 ————————————分隔线——————————————– 如果你想了解更多,请看下面的扩展阅读 虚拟块设备文件更通用的名称是硬盘镜像文件(Hard Disk Image),但不是所有的硬盘镜像文件都是虚拟块设备文件,例如,目前Ghost的G
fcntl函数锁的功能
fcntl 函数语法要点 所需头文件 #include #include #include 函数原型 int fcnt1(int fd, int cmd, struct flock *lock) 函数传入值 fd: 文件描述符 c
windows 快速创建大文件
一、使用内存映射文件: CreateFileMapping的参数可以设置最大长度,当实际文件的长度小于设置的最大长度时,系统自动扩展。注意:在CreateFile的时候要加写权限。 HANDLE hFile; HANDLE hMapFile; hFile = CreateFile( "D://LargeFile.dat", GENERIC_WR
Java 创建大文件
package com.example.testmemoryenouth; import java.io.File; import java.io.FileOutputStream; import java.io.RandomAccessFile; import android.util.Log; public class FileUtil {//这个最好 public static St
mac系统下快速创建大文件
转载自:http://www.macx.cn/thread-2093355-1-1.html mkfile -n size[b|k|m|g] 文件名 Safari 6.0.4 Mac OS X 10.8.3 本帖最后由 luciiferre 于 13-6-1 04:19 编辑 大容量空白文件有时很有