Re: Simple question about mmap() system call
- From: Dan Nelson <dnelson@xxxxxxxxxxxxxxx>
- Date: Fri, 23 Jun 2006 10:18:09 -0500
In the last episode (Jun 23), Dmitry Pryanishnikov said:
I'm writing an utility that should examine some bytes of a large
file and modify them - that't all. I've decided to mmap() the file:
void *diskp;
if ((fd=open(argv[1], O_RDWR)) == -1)
err(EX_NOINPUT, "Can't open %s for readind and writing", argv[1]);
if ((diskp=mmap(NULL, 512,
PROT_READ | PROT_WRITE, 0, fd, 0)) == MAP_FAILED)
err(EX_IOERR, "Can't mmap() file");
Try adding MAP_SHARED. mmap defaults to private mappings, which means
you changes don't get synched back to disk.
I wonder how many programs would break if the mmap syscall returned an
error if neither MAP_PRIVATE or MAP_SHARED were set...
--
Dan Nelson
dnelson@xxxxxxxxxxxxxxx
_______________________________________________
freebsd-hackers@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@xxxxxxxxxxx"
- References:
- Simple question about mmap() system call
- From: Dmitry Pryanishnikov
- Simple question about mmap() system call
- Prev by Date: Buses, devices and modules
- Next by Date: Re: Simple question about mmap() system call
- Previous by thread: Re: Simple question about mmap() system call
- Next by thread: Re: Simple question about mmap() system call
- Index(es):
Relevant Pages
|