コード例 #1
0
ファイル: Resource.cs プロジェクト: ICanHaz/Os-model
 public Resource(Process creator, State state, string id, List<string> processList)
 {
     WaitingProcesses = new PriorityQueue<Process>(new ProcessComparer());
     Creator = creator;
     State = state;
     Id = id;
     InitWaitingProcessesList(processList);
 }
コード例 #2
0
ファイル: Core.cs プロジェクト: ICanHaz/Os-model
 public static void CreateProcess(Process process)
 {
     ProcessList.Add(process);
     if (process.State == Processes.State.Ready || process.State == Processes.State.Active)
     {
         ReadyProcessQueue.Enqueue(process);
     }
 }
コード例 #3
0
ファイル: Process.cs プロジェクト: ICanHaz/Os-model
 public Process(int priority, State state, Process parentProcess, string id)
 {
     Id = id;
     Priority = priority;
     State = state;
     ParentProcess = parentProcess;
     CreatedProcesses = new List<Process>();
     CreatedResources = new List<Resource>();
     Checkpoint = 1;
 }
コード例 #4
0
ファイル: Planner.cs プロジェクト: ICanHaz/Os-model
 private static bool ProcessIsAlreadyAdded(Process process)
 {
     var result = Core.ReadyProcessQueue.SingleOrDefault(p => p.Id == process.Id);
     return result != null;
 }
コード例 #5
0
ファイル: Planner.cs プロジェクト: ICanHaz/Os-model
 private static void PickProcess()
 {
     CurrentProcess = Core.ReadyProcessQueue.Dequeue();
        CurrentProcess.State = Processes.State.Active;
 }
コード例 #6
0
ファイル: JobGovernor.cs プロジェクト: ICanHaz/Os-model
 public JobGovernor(int priority, State state, Process parentProcess, string id)
     : base(priority, state, parentProcess, id)
 {
 }
コード例 #7
0
ファイル: StartStop.cs プロジェクト: ICanHaz/Os-model
 public StartStop(int priority, State state, Process parentProcess, string id)
     : base(priority, state, parentProcess, id)
 {
 }
コード例 #8
0
ファイル: TaskInput.cs プロジェクト: ICanHaz/Os-model
 public TaskInput(Process creator, State state, string id, Queue<string> taskList, List<string> processList)
     : base(creator, state, id, processList)
 {
     Tasks = taskList;
 }
コード例 #9
0
ファイル: ReadIn.cs プロジェクト: ICanHaz/Os-model
 public ReadIn(int priority, State state, Process parentProcess, string id)
     : base(priority, state, parentProcess, id)
 {
 }
コード例 #10
0
ファイル: Core.cs プロジェクト: ICanHaz/Os-model
 public static void DeleteProcess(Process process)
 {
     process.Delete();
     //TODO: delete from ReadyProcessQueue
 }
コード例 #11
0
ファイル: Interrupt.cs プロジェクト: ICanHaz/Os-model
 public Interrupt(int priority, State state, Process parentProcess, string id)
     : base(priority, state, parentProcess, id)
 {
 }
コード例 #12
0
 public InterruptInformation(Process creator, State state, string id, Type type, List<string> processList)
     : base(creator, state, id, processList)
 {
     Type = type;
 }
コード例 #13
0
 public TaskInSupervisorMemory(Process creator, State state, string id, string[] memory, List<string> processList)
     : base(creator, state, id, processList)
 {
     Memory = memory;
 }
コード例 #14
0
ファイル: StartJobGovernor.cs プロジェクト: ICanHaz/Os-model
 public StartJobGovernor(Process creator, State state, Memory virtualMemory, string id, List<string> processList)
     : base(creator, state, id, processList)
 {
     VirtualMemory = virtualMemory;
 }
コード例 #15
0
ファイル: UserMemory.cs プロジェクト: ICanHaz/Os-model
 public UserMemory(Process creator, State state, string id, List<string> processList)
     : base(creator, state, id, processList)
 {
 }
コード例 #16
0
ファイル: EndOfOs.cs プロジェクト: ICanHaz/Os-model
 public EndOfOs(Process creator, State state, string id, List<string> processList)
     : base(creator, state, id, processList)
 {
 }
コード例 #17
0
ファイル: Loader.cs プロジェクト: ICanHaz/Os-model
 public Loader(int priority, State state, Process parentProcess, string id)
     : base(priority, state, parentProcess, id)
 {
     virtualMemory = new Memory(Memory.VIRTUAL_MEMORY_BLOCK_COUNT, Memory.BLOCK_WORD_COUNT);
 }
コード例 #18
0
ファイル: WriteOut.cs プロジェクト: ICanHaz/Os-model
 public WriteOut(int priority, State state, Process parentProcess, string id)
     : base(priority, state, parentProcess, id)
 {
 }
コード例 #19
0
ファイル: VirtualMachine.cs プロジェクト: ICanHaz/Os-model
 public VirtualMachine(int priority, State state, Memory virtualMemory, Process parentProcess, string id)
     : base(priority, state, parentProcess, id)
 {
     this.virtualMemory = virtualMemory;
 }
コード例 #20
0
ファイル: TaskParser.cs プロジェクト: ICanHaz/Os-model
 public TaskParser(int priority, State state, Process parentProcess, string id)
     : base(priority, state, parentProcess, id)
 {
 }
コード例 #21
0
ファイル: TaskReady.cs プロジェクト: ICanHaz/Os-model
 public TaskReady(Process creator, State state, Memory virtualMemory, string id, List<string> processList)
     : base(creator, state, id, processList)
 {
     VirtualMemory = virtualMemory;
 }
コード例 #22
0
ファイル: Task.cs プロジェクト: ICanHaz/Os-model
 public Task(Process creator, State state, string id, TaskInSupervisorMemory taskSource, List<string> processList)
     : base(creator, state, id, processList)
 {
     this.taskSource = taskSource;
 }