
- •Определение, структура программного обеспечения
- •Вычислительной системы
- •Определение, функции операционной системы (ос)
- •Определение, основные принципы построения ос
- •Понятие вычислительного процесса
- •Понятие ресурса
- •Понятие активного процесса. Динамика состояний процесса
- •Понятие потока, мультипрограммирования
- •Идентификация процесса
- •Взаимодействие потоков
- •Классификация процессов
- •Классификация ресурсов
- •Понятие критических секций, основные требования к ним
- •Понятие тупика, условия его возникновения
- •14. Методы борьбы с тупиками. Описание каждого метода
- •15. Виды межпроцессных коммуникаций. Очереди сообщений. Сигналы
- •16. Виды межпроцессных коммуникаций. Конвейер. Сокеты
- •17. Понятие системных часов, таймера
- •18. Планирование выполнения процессов в системах реального времени
- •19. Отображение пространства имен на физическую память компьютера
- •20. Сегментный способ организации виртуальной памяти
- •21. Страничный способ организации виртуальной памяти
- •22. Сегментно-страничный способ организации виртуальной памяти
- •23. Управление памятью вычислительной системы
- •24. Понятие файловой системы
- •25. Особенности файловой системы fat
- •26. Особенности файловой системы ntfs
- •27. Понятие ввода/вывода. Основные задачи супервизора ввода/вывода
- •28. Режимы ввода/вывода, их характеристика
- •29. Процесс управления вводом/выводом
- •30. Понятие микроядерной операционной системы
- •В пользовательское пространство
- •31. Понятие монолитной операционной системы
- •32. Классификация операционных систем
- •33. Особенности сетевых и распределенных операционных систем
- •34. Понятие прерывания. Механизм обработки прерываний
- •35. Синхронные и асинхронные прерывания
- •36. Дисциплины диспетчеризации
- •37. Понятие утилиты. Виды утилит
- •38. Понятие компилятора, интерпретатора, отладчика, компоновщика, байт-кода
- •39. Виды систем защиты программного обеспечения
- •40. Показатели применимости и критерии оценки систем защиты программного обеспечения
Классификация ресурсов
Понятие ресурса, так же как и понятие процесса, является, пожалуй, основным при рассмотрении операционных систем. Термин ресурс обычно применяется по отношению к повторно используемым, относительно стабильным и часто недостающим объектам, которые запрашиваются, используются и освобождаются процессами в период их активности. Другими словами, ресурсом называется всякий объект, который может распределяться внутри системы.
Рассмотрим кратко основные виды ресурсов вычислительной системы. Прежде всего, одним из важнейших ресурсов является процессорное время. Процессорное время делится параллельно (в течение некоторого интервала времени процессы используют ресурс попеременно). Имеется множество методов разделения этого ресурса.
Вторым видом ресурсов вычислительной системы можно считать память. Оперативная память может быть разделена и одновременным способом (т.е. в памяти одновременно может располагаться несколько процессов или, по крайней мере, текущие фрагменты, участвующие в вычислениях), и попеременно (в разные моменты оперативная память может предоставляться для разных вычислительных процессов). Память – очень интересный вид ресурса. С одной стороны, желательно память разделять для возможно большего числа параллельно исполняемых процессов. С другой стороны, как правило, чем больше оперативной памяти может быть выделено для конкретного текущего процесса, тем лучше будут условия для его выполнения. Поэтому проблема эффективного разделения оперативной памяти между параллельно выполняемыми вычислительными процессами является одной из самых актуальных. Достаточно подробно вопросы распределения памяти между параллельно выполняющимися процессами будут рассмотрены на лекции «Управление памятью в операционных системах».
Когда говорят о внешней памяти (например, память на жестких дисках), то собственно память и доступ (процесс обращения к данным) к ней считаются разными видами ресурса. Каждый из этих ресурсов может предоставляться независимо от другого. Но для полной работы с внешней памятью необходимо иметь оба этих ресурса. Собственно внешняя память может разделяться одновременно, а доступ к ней – попеременно.
Если говорить о внешних устройствах, то они, как правило, могут разделяться параллельно, если используются механизмы прямого доступа. Если же устройство работает с последовательным доступом, то оно не может считаться разделяемым ресурсом. Простым и наглядным примером внешнего устройства, которое не может быть разделяемым, является принтер. Действительно, если допустить, что принтер можно разделять между двумя процессами, которые смогут его использовать попеременно, то результаты печати, скорее всего, не смогут быть использованы – фрагменты выведенного текста могут перемешаться таким образом, что в них невозможно будет разобраться.
Наконец, имеются и информационные ресурсы, т.е. в качестве ресурсов могут выступать данные. Информационные ресурсы могут существовать как в виде переменных, находящихся в оперативной памяти, так и в виде файлов. Если процессы используют данные только для чтения, то такие информационные ресурсы можно разделять. Если же процессы могут изменять информационные ресурсы, то необходимо специальным образом организовывать работу с такими данными.
Итак, ресурс – это любой потребляемый (расходуемый) объект. Таким образом, по запасам ресурсы подразделяются на исчерпаемые и неисчерпаемые. Потребители ресурсов – процессы. Ресурс – средство вычислительной системы, которое может быть выделено процессу на определенный интервал времени.
Р
есурсы
могут быть разделяемыми, когда несколько
процессов могут их использовать
одновременно (в один и тот же момент
времени) или параллельно (в течение
некоторого интервала времени процессы
используют ресурс попеременно), а могут
быть и неделимыми (рис. 5.2).
Рис. 5.2.
При разработке первых систем ресурсами считались процессорное время, память, каналы ввода/вывода и периферийные устройства. Однако очень скоро понятие ресурса стало гораздо более универсальным и общим. Различного рода программные и информационные ресурсы также могут быть определены для системы как объекты, которые могут разделяться и распределяться и доступ к которым необходимо соответствующим образом контролировать. В настоящее время понятие ресурса превратилось в абстрактную структуру с целым рядом атрибутов, характеризующих способы доступа к этой структуре и её физическое представление в системе. Более того, помимо системных ресурсов, как ресурс стали называть и такие объекты, как сообщения и синхросигналы, которыми обмениваются задачи.
По признаку реальности ресурсы делятся на физические и виртуальные (последние только в отдельных свойствах схожие с физическими ресурсами).
По возможности расширения свойств делятся на эластичные (допускающие виртуализацию) и жесткие (не допускающие виртуализации).
По времени существования: постоянные (доступны во все время процесса: и до, и после его работы) и временные.
По степени важности: основные и второстепенные (допускают альтернативное развитие процесса при их отсутствии).
По структуре: простые (не содержит составных элементов) и составные. Они различаются числом состояний: простой может быть только в двух состояниях – доступен или занят.
По характеру использования распределяемых ресурсов: потребляемые и воспроизводимые ресурсы (допускают многократное использование и освобождение).
По характеру использования: последовательно и параллельно используемые (используются несколькими процессами).
По форме реализации: жесткие (в принципе не допускают копирования) и мягкие (допускают тиражирование и подразделяются на программные и информационные ресурсы).
Дисциплина распределения ресурса определяет порядок использования многими процессами того или иного ресурса, который в каждый момент времени может обслуживать только один процесс.