Лабораторная работа: Реализация управления процессами и ресурсами многопрограммных операционных систем на уровне диспетчеризации
NewProc:\\ ID:FF name:proces2 priority:0 mem:512 device1:PRINT() device2: () device3: ()
NewProc:\\ ID:FF name:proces3 priority:0 mem:512 device1:PRINT() device2: () device3: ()
StartEditProc:\\ ID:FF name:proces3 priority:0 mem:512 device1:PRINT() device2: () device3: ()
EndEditProc:\\ ID:FF name:proces3 priority:0 mem:512 device1:PRINT() device2:PLTTR() device3: ()
StartEditProc:\\ ID:FF name:proces3 priority:0 mem:512 device1:PRINT() device2:PLTTR() device3: ()
EndEditProc:\\ ID:FF name:proces3 priority:0 mem:512 device1: () device2:PLTTR() device3: ()
NewProc:\\ ID:FE name:proces4 priority:1 mem:512 device1:PRINT() device2:PLTTR() device3: ()
DelProc:\\ ID:FF name:proces2 priority:0 mem:512 device1:PRINT() device2: () device3: ()
DelProc:\\ ID:FF name:proces3 priority:0 mem:512 device1: () device2:PLTTR() device3: ()
Тест показывает все доступные действия над дескрипторами кроме увеличения уменьшения приоритета, но при этом происходят те же действия так как модуль работает независимо от действий, а использует только значения дескрипторов для сортировки и проверок.
При освобождение ресурсов процессы переходят из состояния ожидания в состояние готовности.
При изменение приоритета происходит проверка на возможность перевода данного процесса в состояние выполнения.
Результаты тестового примера (протокол):
[LabOS]
autor_name=mad_daemon
autor_team=MadSOFT
autor_group=AP-31
lab_version=1.0.0.1
lab_type=module.OS
protocol_name=C:\MadSOFT\Lab.OS\Laba1\1.txt
protocol_date=10.09.02
protocol_time=20:19:12
[Protocol]
mess0=[10.09.02|20:19:26]NewProc:\\ ID:FF name:proces1 priority:0 mem:512 device1: () device2: () device3: ()
mess1=[10.09.02|20:19:51]NewProc:\\ ID:FF name:proces2 priority:0 mem:512 device1:PRINT() device2: () device3: ()
mess2=[10.09.02|20:20:07]NewProc:\\ ID:FF name:proces3 priority:0 mem:512 device1:PRINT() device2: () device3: ()
mess3=[10.09.02|20:20:11]StartEditProc:\\ ID:FF name:proces3 priority:0 mem:512 device1:PRINT() device2: () device3: ()
mess4=[10.09.02|20:20:32]EndEditProc:\\ ID:FF name:proces3 priority:0 mem:512 device1:PRINT() device2:PLTTR() device3: ()
mess5=[10.09.02|20:25:31]StartEditProc:\\ ID:FF name:proces3 priority:0 mem:512 device1:PRINT() device2:PLTTR() device3: ()