📄 touch_block.c
字号:
#include"memory.h"
int touch_block(int memory_process_number,int physical_block_number,
int sleep_semaphore)
{
struct physical_block *b;
struct file_window *f;
b=physical_block_number+memory_body->physical_block;
for(;;)
switch(b->state){
case MODIFIED_BLOCK:
case NOT_MODIFIED_BLOCK:
f=memory_body->file_window+b->file_window;
if(memory_set_tlb_item(f->file.memory_process,
b->file_window,b->logic_block_number,
b->physical_number,f->file.right)>=0)
b->lock_number++;
mark_accessed(physical_block_number);
return 0;
case READING_BLOCK:
case WRITING_BLOCK:
wait_block(physical_block_number,sleep_semaphore);
return 0;
default:
return 0;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -