www.pudn.com > LFYOS.zip > driver.c
#include"../memory/memory.h"
#define MAX_PAGE_SIZE (120*PAGE_SIZE)
int idle_device(struct file_system_call_parameter *par)
{
int i,*p,*p1;
extern void test(void );
switch(par->command){
case READ_FILE:
if(par->parameter.read_write.begin_rw==0)
p1=(int *)test;
else if(par->parameter.read_write.begin_rw<=MAX_PAGE_SIZE)
p1=(int *)(par->parameter.read_write.begin_rw
-PAGE_SIZE);
else
p1=(int *)MAX_PAGE_SIZE;
p=(int *)get_block_base(par->block.memory_id,
par->block.block_id);
for(i=0;i<1024;i++,p++,p1++)
*p=(*p1);
break;
case WRITE_FILE:
break;
}
return 1;
};