|
|
||
2. Классификация системных ресурсов |
||
Прежде чем разбираться с тупиками, нам необходимо более точно классифицировать ресурсы, используемые потоками, и рассмотреть специальные ориентированные графы, которые называются графами распределения ресурсов процесса. Этими вопросами мы сейчас и займемся. Системные ресурсы можно классифицировать по нескольким признакам, которые перечислены ниже. Если классифицировать ресурсы по количеству потоков, которые могут одновременно иметь доступ к ним, то получим следующие классы ресурсов: Если классифицировать ресурсы по способу распределения этих ресурсов между потоками, то получим следующие классы ресурсов: Если классифицировать ресурсы по времени их существования, то получим следующие классы ресурсов: Последние два класса ресурсов рассмотрим более подробно. Сначала остановимся на повторно используемых ресурсах. Как правило, к ним относятся физические ресурсы компьютера и файлы. Повторно используемые ресурсы имеют следующие свойства: Теперь перейдем к потребляемым ресурсам. Потребляемые ресурсы создаются потоками-производителями этих ресурсов, а используются потоками-потребителями. Причем после использования потребляемого ресурса он перестает существовать. Очевидно, что потребляемыми ресурсами могут быть только логические ресурсы компьютера. Потребляемые ресурсы характеризуются следующими свойствами: Примером совместно используемого потребляемого ресурса может быть сообщение, которое предназначено для нескольких процессов. Примером перераспределяемого потребляемого ресурса является квант процессорного времени, который выделяется потоку для работы. Так как поток может быть прерван другим потоком с более высоким приоритетом, то оставшееся от кванта время будет передано новому потоку. |
||
|
||
2 |