mosblack.java

来自「这是由Java编写的小型模拟操作系统」· Java 代码 · 共 31 行

JAVA
31
字号
//该类用于记录每个作业所占用的输入井/输出井;
public class MosBlack{
	//每个作业最多十块;
	byte[] black_table = new byte[FinalVar.SPOOLING_BUFFER_SIZE];
	
	byte[] disk_in_table = new byte[FinalVar.SPOOLING_BUFFER_SIZE];
	
	MosBlack(){
		for(int i = 0;i < FinalVar.SPOOLING_BUFFER_SIZE;i++){
			black_table[i] = 0;
		}
	}
		
	//按作业的大小申请输入井空间,若有足够的空间则返回申请到的块地址,失败则返回空;
	public byte[] diskMalloc(int size){
		int free_size = 0;
	//	byte[] pro = new byte[40];
		for(int i = 0;i < FinalVar.SPOOLING_BUFFER_SIZE;i++){
			if(0 == black_table[i]){
				black_table[i] = 1;
				disk_in_table[FinalVar.IN_BUFFER_ADDR+i] = (byte)free_size;
				free_size++;
			}
			if (free_size == size) {
				break;
			}
		}
		//byte[0] = 2;
		return null;
	}
}

⌨️ 快捷键说明

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