Simple question about mmap() system call

2006-06-23 Thread Dmitry Pryanishnikov
Hello! 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

Re: Simple question about mmap() system call

2006-06-23 Thread Stanislav Sedov
On Fri, 23 Jun 2006 17:47:57 +0300 (EEST) Dmitry Pryanishnikov [EMAIL PROTECTED] wrote: Hello! 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)) ==

Re: Simple question about mmap() system call

2006-06-23 Thread Dan Nelson
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

Re: Simple question about mmap() system call

2006-06-23 Thread Dmitry Pryanishnikov
Hello! On Fri, 23 Jun 2006, Konstantin Belousov wrote: if ((diskp=mmap(NULL, 512, PROT_READ | PROT_WRITE, 0, fd, 0)) == MAP_FAILED) err(EX_IOERR, Can't mmap() file); shows actual first byte of my file. But modification doesn't get written back to the disk, file