driver.c

来自「虚地址空间基于文件OS内核源代码和文件」· C语言 代码 · 共 31 行

C
31
字号

#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;
};

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?