免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5972 | 回复: 16
打印 上一主题 下一主题

c/c++怎么不受linux下文件大小限制 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-03-22 10:41 |只看该作者 |倒序浏览
linux文件限制是2GB吧,怎么在c/c++创建不受linux下文件大小限制的文件,大约几百GB

论坛徽章:
0
2 [报告]
发表于 2005-03-22 19:47 |只看该作者

c/c++怎么不受linux下文件大小限制

文件系统支持如此大的文件?

论坛徽章:
0
3 [报告]
发表于 2005-03-23 09:49 |只看该作者

c/c++怎么不受linux下文件大小限制

支持!!!!!!!!!!!!!!!!!!!!!

dd of=hd.img bs=1024 seek=200000000 count=0

看看是不是生成了一个200GB的文件hd.img

论坛徽章:
0
4 [报告]
发表于 2005-03-23 21:03 |只看该作者

c/c++怎么不受linux下文件大小限制

help

论坛徽章:
0
5 [报告]
发表于 2005-03-23 21:29 |只看该作者

c/c++怎么不受linux下文件大小限制

RAW DEVICE?

如果是文件, 那必然要受到文件系统的限制, 除非自己改写内核

论坛徽章:
0
6 [报告]
发表于 2005-03-23 21:46 |只看该作者

c/c++怎么不受linux下文件大小限制

dd of=hd.img bs=1024 seek=200000000 count=0
可以生成200GB的文件啊

论坛徽章:
0
7 [报告]
发表于 2005-03-24 06:47 |只看该作者

c/c++怎么不受linux下文件大小限制

原帖由 "galphy" 发表:
dd of=hd.img bs=1024 seek=200000000 count=0
可以生成200GB的文件啊


好象新的Linux内核文件大小限制已经提高了

另外修改inode使文件看起来很大也是一个好方法哈

论坛徽章:
0
8 [报告]
发表于 2005-03-24 09:48 |只看该作者

c/c++怎么不受linux下文件大小限制

现在的linux内核可以支持64-bit的文件指针
也就说它最大可以可以支持 2^64 / 2 ^30 = 2 ^ 34 (G)这么大的文件

论坛徽章:
0
9 [报告]
发表于 2005-03-25 15:41 |只看该作者

c/c++怎么不受linux下文件大小限制

大哥我不是想知道能不能生成200GB大文件
我是想知道怎么用c/c++生成

[code]char data[1024];
memset(data,0x00,1024);
FILE *fp;
fp=fopen("aaa" , "w+";
for(;{
    fwrite( fp , data , sizeof(data));
}[/code]

过一会程序down
文件大约为2G的时候
并且报告错误信息“文件超出限制”

论坛徽章:
0
10 [报告]
发表于 2005-03-25 15:55 |只看该作者

c/c++怎么不受linux下文件大小限制



  1. FSEEKO(3)                  Linux Programmer's Manual                 FSEEKO(3)

  2. NAME
  3.        fseeko, ftello - seek to or report file position

  4. SYNOPSIS
  5.        #include <stdio.h>;

  6.        int fseeko(FILE *stream, off_t offset, int whence);

  7.        off_t ftello(FILE *stream);

  8. DESCRIPTION
  9.        The  fseeko()  and  ftello()  functions  are  identical  to fseek() and
  10.        ftell() (see fseek(3)), respectively, except that the  offset  argument
  11.        of  fseeko()  and the return value of ftello() is of type off_t instead
  12.        of long.

  13.        On many architectures both off_t and long are 32-bit types, but  compi-
  14.        lation with
  15.               #define _FILE_OFFSET_BITS 64
  16.        will turn off_t into a 64-bit type.

  17. NOTES
  18.        These  functions  are found on SysV-like systems.  They are not present
  19.        in libc4, libc5, glibc 2.0 but available since glibc 2.1.

  20. CONFORMING TO
  21.        The fseeko and ftello functions conform to SUSv2.

  22. SEE ALSO
  23.        fseek(3)

复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP