Понятия вычислительного процесса и ресурса.
Вычислительный процесс − это процесс выполнения программы совместно с ее данными на процессоре (редактирование текста, трансляция, выполнение какой-либо программы).
Под ресурсом понимают некоторый объект, который обладает свойствами повторного и неоднократного использования процессами, запрашивающими, используемыми и освобождающими ресурсы.
На начальном этапе программирования ВС ресурсами считались: процессорное время, память, команды ввода-вывода, периферийные устройства. С расширением понятия объекта расширилось и понятие ресурса.
Ресурс – это абстрактная структура с некоторым набором атрибутов, которые характеризуют ее физические характеристики и способы доступа к ней. Программные и информационные ресурсы, сообщения, синхросигналы могут быть определены как подобные объекты. Концепция ресурса определяется с целью выработать механизмы распределения и управления ресурсами.
Ресурсы подразделяются на делимые (оперативная память) и неделимые (принтер, однократно используемые программные модули – модули загрузки), делимые подразделяются на используемые одновременно (в один и тот же момент времени, например, жесткий диск) и используемые параллельно (попеременно за некоторый интервал времени, например, процессорное время, данные).
Для более полного понимания понятия процесса и ресурса невозможно обойти такое понятие, как мультипрограммирование. Цель мультипрограммирования – повысить быстродействие ВС в целом. В первых ВС, созданных на принципах Дж. Неймана, все подсистемы и устройства ЭВМ управлялись только центральным процессором (ЦП). Выполнение любой программы прерывалось, например, операциями ввода-вывода. Ввод в состав ВС контроллеров позволил распараллелить ввод-вывод и вычисления. Но ЦП всё равно простаивал в ожидании ввода-вывода очередной порции данных. Поэтому был предложен мультипрограммный режим, суть которого состоит в выполнении различных действий в одно и то же время. Т.е. для одной задачи делаются вычисления, для другой – ввод, для третьей – вывод и т.д. С ростом загрузки ресурсов растет и время выполнения каждой задачи, или другими словами, мультипрограммирование повышает пропускную способность системы, но замедляет работу по каждой задаче за счет затрат времени на ожидание освобождения ресурса.
Ресурс задаче может быть выделен если:
1) ресурс свободен и на него нет запроса от задачи с более высоким приоритетом.
2) текущий и предыдущие запросы позволяют использовать ресурс совместно, то ресурс делится.
3) ресурс используется задачей более низкого приоритета, то ресурс временно отбирается.
Если условие выполнено, то задача выполняется с выделенным ресурсом, а если нет, то задача ставится в очередь к ресурсу и переводится в режим ожидания.
Управление ресурсами организуется на основе некоторой стратегий или набора правил, которые обеспечивают высокую эффективность использования ресурсов.
Важнейшие ресурсы ВС - время ЦП и память.
Память может делиться параллельно между некоторыми процессами, которые одновременно в ней существуют, либо последовательно по очереди в порядке выполнения. Параллельное деление более эффективно в плане загрузки процессора (одновременно выполняется множество задач), но ухудшает условия выполнения для каждого процесса в отдельности из-за постоянных обменов память − диск.
Для внешней памяти ресурсами считаются как ее объем, так и доступ к ней: память может разделяться одновременно, а доступ к ней − попеременно. Внешние устройства, как объект реализации внешней памяти, − диски, магнитные ленты или стриммеры, внешняя периферия − разделяются между процессами параллельно, если используют механизм прямого доступа, и являются неделимым ресурсом, если работают с последовательным доступом.
Ещё один вид ресурсов − это программные модули. Выделяют, как важнейший ресурс, системные модули. Среди них − однократно используемые (неделимый ресурс) – модули загрузки ОС и многократно используемые (разделяемый ресурс) − утилиты, подпрограммы. Многократно используемые делятся на:
• Привилегированные модули, они работают в привилегированном режиме (когда никакие внешние события не могут нарушить порядок их работы или при отключенной системе прерываний). Они являются попеременно разделяемым ресурсом.
• Непривилегированные модули, они работают в обычном режиме (с включенной системой прерываний). Они не являются разделяемыми ресурсами.
• Реентерабельные модули, они допускают повторное обращение или повторное прерывание, т.е. у них допускается повторный запуск другим процессом после прерывания их работы в первом процессе.
• Повторно-входимые (re-entrance), они подобны предыдущим, но их выполнение нельзя прервать.
К особому виду ресурсов относят информационные ресурсы (или данные). Они существуют в виде переменных в ОП или файлов на диске. Данные, используемые процессами только для чтения, можно считать разделяемыми ресурсами. Если же процессы могут изменять информационные ресурсы, то необходимо специальным образом организовать работу с такими данными.
Дата добавления: 2018-11-25; просмотров: 2113;