pintos/src/filesys/file.c File Reference

#include "filesys/file.h"
#include <debug.h>
#include "filesys/inode.h"
#include "threads/malloc.h"

Go to the source code of this file.

Data Structures

struct  file

Functions

struct filefile_open (struct inode *inode)
struct filefile_reopen (struct file *file)
void file_close (struct file *file)
struct inodefile_get_inode (struct file *file)
off_t file_read (struct file *file, void *buffer, off_t size)
off_t file_read_at (struct file *file, void *buffer, off_t size, off_t file_ofs)
off_t file_write (struct file *file, const void *buffer, off_t size)
off_t file_write_at (struct file *file, const void *buffer, off_t size, off_t file_ofs)
void file_deny_write (struct file *file)
void file_allow_write (struct file *file)
off_t file_length (struct file *file)
void file_seek (struct file *file, off_t new_pos)
off_t file_tell (struct file *file)


Function Documentation

void file_allow_write ( struct file file  ) 

Definition at line 134 of file file.c.

References ASSERT, file::deny_write, file::inode, inode_allow_write(), and NULL.

Referenced by file_close().

void file_close ( struct file file  ) 

Definition at line 47 of file file.c.

References file_allow_write(), free(), file::inode, inode_close(), and NULL.

Referenced by free_map_close(), fsutil_append(), fsutil_cat(), fsutil_extract(), and load().

void file_deny_write ( struct file file  ) 

Definition at line 120 of file file.c.

References ASSERT, file::deny_write, file::inode, inode_deny_write(), and NULL.

struct inode* file_get_inode ( struct file file  )  [read]

Definition at line 59 of file file.c.

References file::inode.

off_t file_length ( struct file file  ) 

Definition at line 146 of file file.c.

References ASSERT, file::inode, inode_length(), and NULL.

Referenced by fsutil_append(), load(), and validate_segment().

struct file* file_open ( struct inode inode  )  [read]

off_t file_read ( struct file file,
void *  buffer,
off_t  size 
)

Definition at line 70 of file file.c.

References file::inode, inode_read_at(), and file::pos.

Referenced by fsutil_append(), fsutil_cat(), load(), and load_segment().

off_t file_read_at ( struct file file,
void *  buffer,
off_t  size,
off_t  file_ofs 
)

Definition at line 83 of file file.c.

References file::inode, and inode_read_at().

struct file* file_reopen ( struct file file  )  [read]

Definition at line 40 of file file.c.

References file_open(), file::inode, and inode_reopen().

void file_seek ( struct file file,
off_t  new_pos 
)

Definition at line 155 of file file.c.

References ASSERT, NULL, and file::pos.

Referenced by load(), and load_segment().

off_t file_tell ( struct file file  ) 

Definition at line 165 of file file.c.

References ASSERT, NULL, and file::pos.

Referenced by fsutil_cat().

off_t file_write ( struct file file,
const void *  buffer,
off_t  size 
)

Definition at line 96 of file file.c.

References file::inode, inode_write_at(), and file::pos.

Referenced by fsutil_extract().

off_t file_write_at ( struct file file,
const void *  buffer,
off_t  size,
off_t  file_ofs 
)

Definition at line 111 of file file.c.

References file::inode, and inode_write_at().


Generated on Mon Jan 10 16:43:58 2011 for Pintos by  doxygen 1.5.6