void pic_init(void);
// pipe.c
-int pipe_alloc(struct file**, struct file**);
-void pipe_close(struct pipe*, int);
-int pipe_read(struct pipe*, char*, int);
-int pipe_write(struct pipe*, char*, int);
+int pipealloc(struct file**, struct file**);
+void pipeclose(struct pipe*, int);
+int piperead(struct pipe*, char*, int);
+int pipewrite(struct pipe*, char*, int);
// proc.c
struct proc* copyproc(struct proc*);
release(&file_table_lock);
if(ff.type == FD_PIPE)
- pipe_close(ff.pipe, ff.writable);
+ pipeclose(ff.pipe, ff.writable);
else if(ff.type == FD_INODE)
iput(ff.ip);
else
if(f->readable == 0)
return -1;
if(f->type == FD_PIPE)
- return pipe_read(f->pipe, addr, n);
+ return piperead(f->pipe, addr, n);
if(f->type == FD_INODE){
ilock(f->ip);
if((r = readi(f->ip, addr, f->off, n)) > 0)
if(f->writable == 0)
return -1;
if(f->type == FD_PIPE)
- return pipe_write(f->pipe, addr, n);
+ return pipewrite(f->pipe, addr, n);
if(f->type == FD_INODE){
ilock(f->ip);
if((r = writei(f->ip, addr, f->off, n)) > 0)
};
int
-pipe_alloc(struct file **f0, struct file **f1)
+pipealloc(struct file **f0, struct file **f1)
{
struct pipe *p;
}
void
-pipe_close(struct pipe *p, int writable)
+pipeclose(struct pipe *p, int writable)
{
acquire(&p->lock);
if(writable){
//PAGEBREAK: 20
int
-pipe_write(struct pipe *p, char *addr, int n)
+pipewrite(struct pipe *p, char *addr, int n)
{
int i;
}
int
-pipe_read(struct pipe *p, char *addr, int n)
+piperead(struct pipe *p, char *addr, int n)
{
int i;
if(argptr(0, (void*)&fd, 2*sizeof(fd[0])) < 0)
return -1;
- if(pipe_alloc(&rf, &wf) < 0)
+ if(pipealloc(&rf, &wf) < 0)
return -1;
fd0 = -1;
if((fd0 = fdalloc(rf)) < 0 || (fd1 = fdalloc(wf)) < 0){