예제 #1
0
파일: mkfs.c 프로젝트: anuragpeshne/minix
/* Write a block. */
void
put_block(block_t n, void *buf)
{

  (void) read_and_set(n);

  mkfs_seek(mul64u(n, block_size), SEEK_SET);
  mkfs_write(buf, block_size);
}
예제 #2
0
파일: mkfs.c 프로젝트: Hooman3/minix
/* Write a block. */
void
put_block(block_t n, void *buf)
{

  (void) read_and_set(n);

  mkfs_seek((uint64_t)(n) * block_size, SEEK_SET);
  mkfs_write(buf, block_size);
}
예제 #3
0
파일: mkfs.c 프로젝트: kl07/minix
/* Write a block. */
void
put_block(block_t n, void *buf)
{

  (void) read_and_set(n);

  if (lseek64(fd, mul64u(n, block_size), SEEK_SET, NULL) == (off_t) -1)
	pexit("put_block couldn't seek");
  if (write(fd, buf, block_size)!= block_size)
	pexit("put_block couldn't write block #%u", (unsigned)n);
}
예제 #4
0
파일: mkfs.c 프로젝트: anuragpeshne/minix
/* Read a block. */
void
get_block(block_t n, void *buf)
{
  ssize_t k;

  /* First access returns a zero block */
  if (read_and_set(n) == 0) {
	memcpy(buf, zero, block_size);
	return;
  }
  mkfs_seek(mul64u(n, block_size), SEEK_SET);
  k = read(fd, buf, block_size);
  if (k != block_size)
	pexit("get_block couldn't read block #%u", (unsigned)n);
}
예제 #5
0
파일: mkfs.c 프로젝트: kl07/minix
/* Read a block. */
void
get_block(block_t n, void *buf)
{
  ssize_t k;

  /* First access returns a zero block */
  if (read_and_set(n) == 0) {
	memcpy(buf, zero, block_size);
	return;
  }
  if (lseek64(fd, mul64u(n, block_size), SEEK_SET, NULL) == (off_t)(-1))
	pexit("get_block couldn't seek");
  k = read(fd, buf, block_size);
  if (k != block_size)
	pexit("get_block couldn't read block #%u", (unsigned)n);
}