#include "apue.h"
#include <fcntl.h>
char buf1[]= "abcdefghij";
char buf2[]= "ABCDEFGHIJ";
int main(void)
{
int fd;
if((fd = creat("file.hole",FILE_MODE)) <0)
err_sys("creat error");
/* offset now 10 */
if(write(fd,buf1,10) !=10)
err_sys("buf1 write error");
/* offset now 16384 */
if(lseek(fd,16384,SEEK_SET) == -1)
err_sys("lseek error");
if(write(fd,buf2,10) != 10)
err_sys("buf2 write error");
/* offset now 16394 */
exit(0);
}
文件偏移量可以大于文件的当前长度,在这种情况下,对该文件的下一次写将加长该文件,并在文件中构成空洞,这一点是允许的。位于文件中但没有写过的字节都被读为0。
文件中的空洞并不要求在磁盘上占用存储区。具体处理方式与文件系统的实现有关,当定位到超出文件尾端之后写时,对于新写的数据需要分配磁盘块,但是对于原文件尾端和新开始写位置之间的部分则不需要分配磁盘块。
分享到:
相关推荐
这里包含一个示例 shell 文件 (neper_example.sh),可用于在 Neper 中创建具有以下功能的合成微结构: 具有 300 粒的单位体积 RVE。 由欧拉角定义的指定角度 从 Neper 提取信息输出 可以从 Neper 生成的文件“.tess...
因此,管理好密码文件,对于控制授权用户从远端或本机登录Oracle数据库系统,执行数据库管理工作,具有重要的意义。本文在总结Oracle数据库安全管理工作的基础上,对Oracle数据库系统密码文件的创建、使用和维护作了...
通过一个简单多用户文件系统的设计,加深理解文件系统的内部功能及内部实现。 实验要求: 为linux系统设计一个简单的二级文件系统。要求做到以下几点: (1)可以实现下列几条命令(至少4条); login 用户登陆 ...
xcopy 命令创建具有存档属姓设置的文件,无论源文件中是否设定了此属姓。有关文件属姓和 attrib 的详细信息,请参阅“”。 比较 xcopy 和 diskcopy 如果磁盘的子目录中包含文件,要将其复制到具有不同格式的磁盘中...
用DOS批处理文件实现oracle自动备份,具有动态创建备份目录功能
采用dup/dup2/fcntl复制一个新的文件描述符,通过新文件描述符向文件写入“class_name”字符串; //3.通过原有的文件描述符读取文件中的内容,并且打印显示; 1.输入文件名称,能够判断文件类型,判断实际用户对...
设计一个较实用的用户界面,方便用户使用。要求提供以下相关文件操作: (1)具有login (用户登录) (2)系统初始化(建文件卷、提供登录模块) (3)文件的创建:create (4)文件的打开:open (5)文件的读:read...
1. 在内存中开辟一个虚拟磁盘空间作为文件存储器,在其上实现一个多用户多目录的文件系统。 2. 文件物理结构可采用显式链接或其他方法。 3. 磁盘空闲空间的管理可选择位示图或其他方法。如果采用位示图来管理文件...
AstroZip是一款非常实用的软件,该软件绿色小巧,使用起来简单方便。...您使用“保持单独的文件”选项,并为每一个源文件夹中的文件会自动压缩文件(但具有相同名称的文件将在一个共同的压缩文件放入),输出是在目
请设计一个具有目录管理功能和磁盘空间管理功能的简单文件系统,以实现对存放在该磁盘上的文件进行简单管理(假设文件名长度是固定的,用14个字符表示),并以创建一个文件和删除一个文件为例,简要说明你所设计的...
模拟和实现一个小型文件系统,文件系统包括磁盘、目录和文件三个部分。 2.具有获取和显示系统逻辑磁盘驱动器的类型、空间信息的功能; 3.具有创建目录、重命名目录、删除目录和选择目录的功能,目录描述包括...
在用户程序中可使用文件系统提供的一整套文件操作(文件类系统调用),这类操作一般包括“打开文件”、“关闭文件”、“读文件”、“写文件”和“撤消文件”等。本实习模拟文件操作的实现,通过实习了解各文件操作的...
stm32读写sd卡,并具有文件操作系统,可完成文件读写创建等工作
dotDesktop.desktop具有bash和zenity的文件创建器创建桌面文件不是一件容易的事,但是我们可以在这里和那里看到一堆没有.desktop文件的应用程序,每次创建一个新文件都会有些无聊。 这个bash文件是一个简单的解决...
“以前的某个程序安装已在安装计算机上创建挂起的文件操作。安装程序前必须重新启动计算机”,安装数据库2000时有这个提示,如何解决呢,请看此文档
1.在内存中开辟一个虚拟磁盘空间作为文件存储器,在其上实现一个多用户多目录的文件系统。 2.文件物理结构可采用显式链接或其他方法。 3.磁盘空闲空间的管理可选择位示图或其他方法。如果采用位示图来管理文件...
今天小编就为大家分享一篇python判断文件是否存在,不存在就创建一个的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
OpenPDF是一个用LGPL和MPL开源许可证创建和编辑PDF文件的Java库。openpdf是itext的lgpl/mpl开源后续版本,它基于itext 4 svn标记的fork、fork和svn标记。我们欢迎其他开发者的贡献。请随时向这个github存储库提交...
(1)多用户 :usr1,usr2 (2个用户) (2)多级目录:具有树形目录结构; (3)具有login (用户登录)和用户身份认证功能; (4)文件的创建: create (5)文件的打开:open (6)文件的读:read (7)文件的写:...
10. 将一个文件内容附加到另一个文件尾部:append 11. 文件关闭:close 12. 删除文件:delete 13. 创建目录(建立子目录):mkdir 14. 改变当前目录:cd 15. 列出文件目录:dir(包括文件属性) 16. 删除目录:rmdir...