mmap 写空文件时,出现段错误

news/2024/12/28 16:26:14/
ftruncate(fd, file_seek);

函数作用:给定fd文件描述符,去file_seek大小。
返回值:
                 执行成功则返回0,失败返回-1,错误原因存于errno。

ftruncate()会将参数fd指定的文件大小改为参数length指定的大小。


参数fd为已打开的文件描述词,而且必须是以写入模式打开的文件。

如果原来的文件大小比参数length大,则超过的部分会被删去。

#include <stdint.h>
#include <stdio.h>
#include <unistd.h>
#include <sys/mman.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#define FILESIZE 5 * 1024 * 1024int main(void)
{int file = open("wt.txt", O_RDWR|O_CREAT);/** @important* 在这里先将文件的大小修改一下,*/ftruncate(file, FILESIZE);char* base = (char*)mmap(NULL, FILESIZE, PROT_READ|PROT_WRITE, MAP_SHARED, file, 0);printf("base = %#x\n", base);char* poffset = base;int i = 0;while (1) {if (i == 10) i = 0;if (poffset - base >= FILESIZE) return 0;*poffset++ = i++;}munmap(base, FILESIZE);return 0;
}


http://www.ppmy.cn/news/238494.html

相关文章

信创聚焦安全,开源面向未来——湖南欧拉生态创新中心出席2023融通生态大会“信创+开源生态”分论坛

5月26日&#xff0c;2023首届国家新一代自主安全计算系统产业集群融通生态大会&#xff08;简称&#xff1a;2023融通生态大会&#xff09;在长沙召开&#xff0c;大会同期举办了“信创开源生态”分论坛。论坛以“信创聚焦安全&#xff0c;开源面向未来”为主题&#xff0c;邀请…

计算机主机开机为什么显示器不开,电脑开机显示器不显示?教你如何快速判断是显示器还是主机问题!...

当我们玩电脑的时候&#xff0c;经常遇到主机开起来了&#xff0c;显示器却不显示器的问题&#xff0c;在这里&#xff0c;我来教大家如何快速判断是显示器问题还是主机问题&#xff01; 显示器不显示&#xff0c;我们首先看显示器的电源指示灯有没有亮&#xff0c;如果亮了&am…

桌面计算机不显示桌面,电脑开机不显示桌面如何处理?电脑开机后不显示桌面的解决教程...

现在不论是学习还是工作我们都离不开电脑&#xff0c;但是电脑在长时间的使用下难免会遇到一些问题&#xff0c;例如近日就有小伙伴跟小编反映说自己的电脑就出现了电脑开机不显示桌面的情况&#xff0c;这是怎么一回事呢&#xff1f;我们又该如何去解决呢&#xff1f;下面本文…

电子计算机显示屏不亮了,电脑能开机显示器不亮最详细的处理方法

电脑是我们生活中经常使用的物品&#xff0c;但近日却有用户反映说自己的电脑出现了能开机但显示器不亮的问题&#xff0c;不知道怎么解决。没关系&#xff0c;下面小编为大家整理了电脑能开机显示器不亮最详细的处理方法&#xff0c;一起往下看吧。 解决方法如下&#xff1a; …

计算机主机开机为什么显示器不开,电脑显示屏不亮但是主机已开机怎么解决

随着科技的不断发展&#xff0c;电脑已成为我们在日常生活和工作中不可或缺的助手工具之一。也会让不懂电脑的新手小白变成会懂一些电脑的基础知识的。下面装机吧系统官网的小编整理了电脑显示屏不亮而主机已开机的处理方案。 1&#xff0c;屏幕不亮&#xff0c;先检查下屏幕上…

电子计算机 不显示,电脑开机了屏幕不显示为什么

大家好&#xff0c;我是时间财富网智能客服时间君&#xff0c;上述问题将由我为大家进行解答。 电脑开机显示器不显示的原因有&#xff1a; 1、电路不通&#xff0c;或者是电源接口或电源线接触不良或损坏&#xff1b; 2、一般是内存条松动或氧化而接触不良&#xff0c;或显示器…

计算机开机显示器不亮,电脑显示屏不亮但是主机已开机怎么办 电脑显示屏不亮解决方法【图文】...

电脑大家都应该见过吧!电脑现在被广泛地应用在我们的生活和工作之中&#xff0c;以前人们用电脑打游戏&#xff0c;随着电脑功能的不断拓展&#xff0c;现在的电脑可以进行网上购物、晚上视频。在工作方面电脑可以进行软件、程序的制作&#xff0c;所以说电脑的功能是非常多的。…

计算机桌面不能显示器,电脑显示屏亮但是主机已开机无法显示桌面

昨天电脑开机开机还是正常的,今天再次开机,发现电脑主机开机正常,而显示器是黑色的没任何反应,显示器是正常的,供电也没问题,究竟是什么问题呢?下面就说说我解决这个...对于电脑开机后不显示桌面&#xff0c;一片黑&#xff0c;什么程序都没有显示出来&#xff0c;就只有鼠标指…