Условно работу над программой делят на две части: методологический и процедурный разделы.
I. Методологический раздел вбирает в себя следующий круг вопросов:
а) определение проблемной ситуации, формулирование проблемы, объекта и предмета исследования;
б) формулировка цели и задач исследования;
в) интерпретация или уточнение понятий, используемых в исследовании;
г) предварительный системный анализ объекта;
д) выдвижение гипотез исследования.
II. Процедурный раздел включает:
а) рабочий план исследования;
б) набросок (описание) методов сбора;
в) описание методов анализа данных.
1.2.2.1. Формулировка проблемы, объекта целей и задач исследования
а) Рассмотрим каждый пункт программы в отдельности. Начнем с методологического раздела и его пункта – определения проблемной ситуации.
Под проблемной ситуацией следует понимать «некое противоречие, которое возникло либо в практической, либо в теоретической деятельности, и состоит оно в том, что субъект (человек или группа) этой деятельности осознает неадекватность (несоответствие) методов своей работы тем целям, которые желает достичь». То есть проблемная ситуация – это такое состояние в развитии социального объекта (явления или процесса), которое характеризуется неустойчивостью, несоответствием функционирования объекта потребностям его дальнейшего развития. В качестве проблемной ситуации могут выступать социальные разногласия, конфликты; трудности в реализации целей какой-либо деятельности или ее неэффективность; невозможность изменения форм имеющейся работы и т.д. Таким образом, проблемная ситуация это то, что «находится» в социальной реальности, проистекает из нее, это реальные объективные противоречия, которые сопровождают нашу жизнь.
OOP-1-3-01 Выделение класса — задача
В любом научном исследовании постановка проблема является исходным пунктом, то есть всякое исследование начинается с постановки проблемы. Под проблемой понимается вопрос, ответ на который не содержится в накопленном знании и поэтому требует определенных практических и теоретических действий для его разрешения, отличных от поиска в уже имеющемся знании. Поэтому проблема – это всегда, выход за пределы изученного в сферу того, что должно быть изучено. Таким образом, проблема с одной стороны, является формой отражения проблемной ситуации, реальных противоречий социальной жизни, а с другой – указывает на противоречия между знаниями и незнанием исследователя.
Чаще всего научная проблема формулируется как некое множество задач. Например: необходимость изучения определенной области, сферы социальной жизни; разработка теоретических (практических) средств, которые направлены на выявление причин, возникновения проблемной ситуации и т.д.
Для того чтобы сформулировать проблему исследователю необходимо сделать следующее: – разграничить, что ему известно об изучаемой ситуации и что не известно (какие количественные статистические показатели имеются, какие нет, насколько достоверны имеющиеся данные);
Разбор задач на выделение цифр из числа с использованием цикла while
- разграничить существенное и несущественное, то есть разделить случайные факторы от закономерных, вычленить социальные аспекты из всего многообразия условий (экономических, политических, психологических);
- выявить приоритетные направления исследования среди всех имеющихся;
- проанализировать имеющиеся решения подобных проблем на основе изучения других исследований.
После того как сформулирован основной вопрос исследования (проблема), социолог приступает к формулировке объекта и предмета исследования. Под объектом исследования понимается некая конкретная область социальной реальности или социальная группа, которая является носителем проблемной ситуации или содержит ее в себе. То есть объект исследования – это то, на что направлен процесс познания. Его выделение происходит на основе анализа проблемы. В качестве объекта может выступать сфера деятельности, социальное явление (события) или процесс, содержащие научную или реальную проблемную ситуацию, а также – различные социальные группы (трудовые, профессиональные, этнические и т.д.) и социальные организации (государственные, частные предприятия, общественные, политические структуры и т.д.).
Определение объекта предполагает получение с одной стороны пространственно-временных характеристик объекта, а с другой – качественно-количественных характеристик. Так, к определенным признакам объекта изучения можно отнести: место нахождения (страна, город, район); время (когда происходит ситуация); сфера, отрасль действительности (экономика, культура, наука и т.д.); социально-демографические характеристики (пол, возраст, образование и т.д.).
Требования к объекту исходят из задач исследования, часто выбранный объект велик, его нельзя весь охватить исследованием, тогда возникает проблема отбора исследуемых единиц, но об этом более подробно в теме «Выборочный метод». Итак, сформулированный объект исследования может «выглядеть» следующим образом: население города Томска февраля 2002 года, выпускники школ Омской области 1999 года, руководители городских администраций федеральных округов России 2002 года и т.д.
Таким образом, объект – это конкретные элементы социальной действительности (люди, учреждения, группы), которые выбираются для исследования как типичные представители множества, в которые они входят. Но следует различать идеализированный объект, под которым понимается теоретическая модель исследуемого объекта, вводимая на теоретическом уровне анализа. Все теоретические выводы строятся относительного идеализированного объекта. И эмпирический объект – это реально существующая группа, явлений и т.д. Взаимосвязь между идеализируемым и эмпирически наблюдаемым объектом реализуются через интерпретацию основных понятий.
Помимо объекта следует различать предмет исследования. Предмет исследования – это наиболее существенные свойства и характеристики изучаемого объекта. Их познание важно для решения основной проблемы исследования. Построение предмета зависит от многого:
- характера исследуемой проблемы;
- свойств и отношений объекта с другими;
- наличных исследовательских средств, которыми располагает социолог.
Предмет формируется на основе анализа свойств и признаков изучаемого объекта, но не совпадает с ним. Один и тот же объект (население города Томска) может изучаться для разных проблем (отношение к предпринимательству, наркомании, экономической нестабильности и т.д.), и, следовательно, предполагает множество предметов. Предмет устанавливает познавательные границы исследования, и именно в них должен изучаться объект.
Предмет имеет сложную структуру, например, выяснение объективных и субъективных условий формирования, мотиваций, ценностных ориентаций и предпочтений. Следует различать предмет теоретического и эмпирического исследований. Предметом теоретической социологии являются теоретические понятия, а также создание идеализированной модели реального объекта. Предметом эмпирического исследования – это признаки, свойства объекта, которые непосредственно поддаются описанию, классификации, доступны измерению и статистическому обобщению. Например, в классическом исследовании по теме «Выбор профессии выпускниками школ», предметом будет – отношение между планами выбора и их реализации на практике.
б) Следующий пункт методологического раздела программы – это определение цели и задач исследования. Под целью понимается конкретное представление планируемого конечного результата деятельности социолога, который достигается посредствам проведения социологического исследования. Достижение цели служит необходимым критериям эффективности предпринятых им теоретических, практических и технических процедур.
Характер цели определяет доминирующую ориентацию исследования: теоретическую ли, методическую ли или практическую. Результатом теоретического исследования может быть построение некой теории, разработка метода изучения социального объекта, новое знание о структуре, функциях, механизмах развития социального объекта.
Результатом эмпирического исследования может быть описание исследуемого объекта (социального явления, группы, процесса), прогноз его развития, проекты, новые алгоритмы типового решения уже изученных проблем применительно к специфике конкретных условий. В прикладном исследовании цель всегда согласуется с заказчиком, то есть цель – это то, ради чего проводится исследование. Таким образом, целью или результатом исследования может быть получение: нового теоретического знания; описательной информации относительно изучаемого объекта; методической разработки, или исследовательской процедуры и, наконец, практических рекомендаций.
Конкретизируется цель через задачи. Задачи исследования – это система конкретных требований, предъявляемых к анализу и решению сформулированных проблем. По отношению к цели – они являются средством ее реализации и носят инструментальный характер. То есть задачи – это то, что делается ради достижения цели.
Из-за сложности изучаемого объекта задачи делятся на основные и дополнительные. Основные ориентированы на решение центральной проблемы исследования, а дополнительные – касается отдельных аспектов (возможно не очень существенных) исследуемой проблемы. Примером соотношения цели и задач может быть следующее. Целью исследования является выявление мотивов получения высшего образования школьников Томской области. Цель достигается благодаря задачам: – дать анализ иерархии ценностей выпускников и определить место образования в системе этих ценностей, выявить степень информированности о томских вузах, определить …..
Таким образом, задачи выступают в роли неких ступенек движения исследователя к достижению цели, это система, так сказать промежуточных целей, заключенных в практических соображениях. Уточнение задач максимально дисциплинирует исследователя и систематизирует его процедуры.
Трудности, которые возникают в связи с формулировкой задач, требуют использование единого понятийного аппарата для данного исследования. Этому посвящен следующий пункт методологического раздела программы: интерпретация или уточнение основных понятий.
Источник: studfile.net
Целевое программирование как инструмент развития регионов
Цели программы формулируются как качественным образом, так и в виде измеримых целевых показателей, достижение которых приурочено к определенным срокам.
Главная цель программы выражается в виде задачи удовлетворения потребностей в программном продукте на уровне, достаточном для решения исходной проблемы, породившей программу. Система целей и задач должна быть представлена в виде развернутой взаимосвязанной совокупности, ранжированной по уровням и по значимости. Это означает, что цели и задачи программы должны быть не только сформулированы, но и упорядочены, где каждой целью порождаются подцели более низкого уровня, т.е. она раскладывается на составляющие вплоть до перехода к некоторым элементарным целям, не подлежащим дальнейшему делению.
Цели программы должны быть объединены в совокупность, обладающую свойством полноты (учет всех целей, вытекающих из глав-
ной и сопутствующих ей) и упорядоченности (установление последовательности достижения целей и степени их важности).
Этапы реализации программы.
4. Инвестиционные проекты, входящие в программу. Крупные комплексные программы федерального, регионального,
отраслевого уровня могут включать в качестве составной части относительно самостоятельные научно-технические, производственно-технологические, социальные и другие виды инвестиционных проектов, осуществление которых способствует реализации программы или является составной частью проведения программы в жизнь. Особенность таких проектов заключается в том, что они требуют для своего претворения крупных вложений капитала, инвестиций, обеспечиваемых за счет ресурсных источников программы.
При этом такие инвестиционные проекты не только обеспечивают решение программной проблемы, но дают определенный положительный эффект, выходящий за пределы программы и представляющий интерес для экономики в целом.
Здесь перечисляются и характеризуются подобные инвестиционные проекты программы, представляющие ее ведущие звенья. Совокупность инвестиционных проектов, входящих в программу, отражает ее инвестиционную направленность, стратегию.
Содержание подпрограмм, составляющих программу.
Мероприятия программы объединяются в отдельные блоки, называемые подпрограммами. Подпрограмма представляет совокупность программных мероприятий, работ, объединенных в единый комплекс по признаку их общности. Обычно в программах выделяются подпрограммы:
— отраслевые, содержащие мероприятия, связанные с ключевыми отраслями экономики, от которых зависит осуществление программы.
Например, подпрограммы проведения геолого-разведочных работ, производства и/или реализации технологий, приобретения или продажи техники и оборудования;
— территориальные, объединяющие программные мероприятия, проводимые в рамках отдельной территории или связанные с решением территориальных проблем, которые являются частью общей программной проблемы;
— социальные, характеризующие меры по решению социальных задач программы.
Можно выделить и функциональные подпрограммы, ориентирующиеся на выполнение функций, с которыми связан и от которых зависит исход программы (экологические подпрограммы, меры по созданию и развитию инфраструктуры в зоне действия программы).
Крупномасштабные комплексные целевые программы в современных условиях так или иначе связаны с развитием внешнеэкономических отношений. Учитывая особую значимость этого аспекта для реализации ряда программ, а также специфику программных мероприятий внешнеэкономического характера, их следует выделять в виде отдельной подпрограммы или специального раздела программы. Мероприятия в области внешнеэкономических связей реализуются в таких сферах сотрудничества, как экспорт-импорт товаров и услуг, международная передача технологий, техническое содействие и помощь, организация совместных предприятий, привлечение иностранного капитала.
Целевое программирование как инструмент развития регионов
Системный подход в управлении экономикой, в том числе на уровне региона, находит свое проявление в программно-целевом управлении.
Истоки программно-целевого управления уходят в глубь предыдущих десятилетий и даже столетий. Будучи одним из наиболее ярких проявлений системного подхода в управлении, программно-целевое управление в неявной форме было присуще всем процессам управления, построенным на системной основе.
Официальное, документальное рождение программ как инструмента планирования, управления относится к началу XX в.
Программы вооружений стали первыми областями приложения методов программно-целевого управления в их зрелых формах в том виде, в котором такой подход применяется и в нынешнее время. Постепенно получили распространение международные программы экономической помощи развивающимся странам.
В экономически развитых странах в практику управления на государственном, а затем и региональном уровнях входят социально-экономические программы, направленные на решение крупных социальных, экологических проблем, основанные на бюджетном финансировании.
В России в первые годы проведения рыночных реформ программы были частично забыты. Однако уже в 1995 г. постановлением Правительства РФ был утвержден порядок разработки и реализации федеральных целевых программ, после чего поток предлагаемых и принятых к реализации программ резко увеличился.
К 1998 г. количество одновременно реализуемых целевых программ федерального уровня приблизилось к двумстам, общий ежегодный объем затрат, необходимых для выполнения программ, превысил валовой внутренний продукт страны.
Само понятие «программно-целевое управление» не имеет четкого, однозначного толкования, трактуется в широком смысле и как метод программного воплощения крупных управленческих решений, и как реализация комплексного, системного подхода при решении крупномасштабных социально-экономических проблем.
Программность управления состоит в том, что оно осуществляется по схеме «цели — пути — средства», т.е. на основании целей устанавливаются пути, способы их достижения, а сами пути увязываются с необходимыми средствами, затратами экономических ресурсов, включая время. Единство целей, путей и средств их достижения воплощается в программно-целевом управлении в программу действий, ведущих к намеченным целям. Наличие подобной программы действий, показывающей, каким образом будут достигаться цели управления, в какие сроки, при каких затратах ресурсов, и есть главный признак программно-целевого управления.
Программы как инструмент управления появляются тогда, когда возникает серьезная, крупномасштабная экономическая проблема, решение которой требует принятия особых мер, сосредоточения усилий, сочетания действий разных организаций. Именно социально-экономическая природа проблемы дает возможность использовать понятие комплексной, целевой программы.
Комплексная, целевая программа -это система ориентированных в пространстве и во времени, согласованных по содержанию, срокам, исполнителям, обеспеченных ресурсными источниками мероприятий научно-исследовательского, опытно-конструкторского, производственно-технологического, социально-экономического, организационного, экологического характера, направленных на решение единой проблемы, достижение единой цели.
Цель программы развертывается в совокупность задач, которые решаются с помощью системы мероприятий, реализуемых исполнителями при определенном ресурсном обеспечении. Цель заключается в конечном счете в удовлетворении определенных назревших потребностей путем соответствующего преобразования ресурсов.
Поэтому взаимосвязанность задач и мероприятий в программе обусловлена не только единством цели, но и такими важными видами связей, как общность конечной продукции, технологии, сырьевых ресурсов, производственной базы, потребителей, территории, транспорта. Аналогично под используемыми ресурсами понимается совокупность затрат всех материальных, трудовых, финансовых, информационных ресурсов, необходимых для достижения цели, включая расходы ресурсов не только в сфере производства программного продукта, но и на тех участках сопряженных производств, сферы обращения и потребления, которые связаны с изготовлением и использованием программного проекта. Источники ресурсного обеспечения программ могут далеко выходить за рамки государственного и местных бюджетов, включать средства хозяйствующих субъектов, заинтересованных в осуществлении программы, инвестиции банков и других финансовых институтов, кредиты, поступления от продажи ценных бумаг, безвозмездную помощь, другие внебюджетные источники. Отмеченные особенности придают экономическим программам комплексный характер.
Программный подход в управлении экономикой распространяется и на организационные структуры управления экономикой в целом, регионами, отраслями, производственными единицами в виде предприятий, фирм, компаний. Программно-целевым управлением правомерно считать организацию процесса управления, организационные структуры управления, основанные на принципах программно-целевого подхода.
На сегодняшний день существует большое число видов комплексных программ, различающихся по разным признакам.
По уровню значимости программной проблемы и месту, занимаемому программой в иерархической структуре управления, следует различать:
1) международные, межстрановые программы, имеющие значение и затрагивающие интересы мирового экономического сообщества;
2) федеральные целевые программы, решающие проблемы федерального значения и распространяющие свое действие на экономику страны;
3) региональные целевые программы, решающие проблемы в масштабе субъектов Российской Федерации, зоной действия мероприятий которых является преимущественным образом экономика региона;
4) отраслевые программы, решающие проблемы в масштабе отрасли или подотрасли экономики страны, т.е. проблемы отраслевой природы.
Однако инструментом программно-целевого управления могут быть и программы микроэкономического уровня. К ним следует относить:
1) территориальные, городские, муниципальные программы;
2) программы реструктуризации, модернизации производства, обновления выпуска, повышения качества, конкурентоспособности продукции, прибыльности.
В зависимости от цели программы, функций и возлагаемых на нее задач необходимо выделить следующие виды программ:
1) социальные и социально-экономические, ориентированные на непосредственное решение социальных задач (т.е. задач удовлетворения социальных потребностей) или на решение экономических задач, способствующих улучшению социального климата;
2) научно-технические, инновационные, целью которых является решение крупных проблем научного характера, освоение научно-технических достижений в области создания новых конструкций, прогрессивных технологий, новых видов материалов, потребительских товаров и услуг;
3) производственно-технологические, направленные на развитие определенных видов производств и технологических процессов, позволяющих повысить эффективность производства и качества продукции;
4) организационно-хозяйственные, цель которых состоит в совершенствовании методов организации и управления хозяйством на всех уровнях;
5) инвестиционные, в которых определяющую роль играет получение и использование инвестиций для осуществления крупномасштабного проекта;
6) внешнеэкономические, ставящие целью развитие внешнеэкономических связей;
7) территориально-производственные, направленные на комплексное развитие хозяйства отдельных районов (создание и развитие территориально-производственных комплексов);
8) экологические, решающие проблемы охраны окружающей среды и обеспечения безопасного существования людей.
Особый класс образуют целевые программы, которые можно назвать ориентирующими, или программами-ориентирами. Такие весьма общие программы не доводятся до конкретных мероприятий, не содержат адресного состава исполнителей, не определяют объемы и источники ресурсного обеспечения. Их задача в том, чтобы установить направления, способы действий для решения программной проблемы, указать общие стратегические пути решения социально-экономических проблем. То есть их основная функция — целеориентирующая. Такие программы носят концептуальный характер и зачастую выражают не только экономическую, но и социально-политическую доктрину.
Итак, программа включает следующие составные части.
1. Содержание проблемы и обоснование необходимости программы как средства решения проблемы.
В этом разделе излагаются суть, истоки, корни проблемы, которую предлагается решить посредством реализации комплексной программы. Обрисовывается круг организаций, лиц, заинтересованных в осуществлении программы, а также виды и масштабы потребностей, которые должны быть удовлетворены в результате ее выполнения. Приводятся результаты анализа, свидетельствующие, что проблема не решается традиционными непрограммными методами управления и что только концентрация средств и комплексное проведение мероприятий в рамках целостной программы способны разрешить проблему. Отмечается значимость программы в масштабе страны, региона, отрасли, экономических и социальных объектов.
Цели и задачи программы.
Цели программы формулируются как качественным образом, так и в виде измеримых целевых показателей, достижение которых приурочено к определенным срокам.
Главная цель программы выражается в виде задачи удовлетворения потребностей в программном продукте на уровне, достаточном для решения исходной проблемы, породившей программу. Система целей и задач должна быть представлена в виде развернутой взаимосвязанной совокупности, ранжированной по уровням и по значимости. Это означает, что цели и задачи программы должны быть не только сформулированы, но и упорядочены, где каждой целью порождаются подцели более низкого уровня, т.е. она раскладывается на составляющие вплоть до перехода к некоторым элементарным целям, не подлежащим дальнейшему делению.
Цели программы должны быть объединены в совокупность, обладающую свойством полноты (учет всех целей, вытекающих из глав-
ной и сопутствующих ей) и упорядоченности (установление последовательности достижения целей и степени их важности).
Этапы реализации программы.
4. Инвестиционные проекты, входящие в программу. Крупные комплексные программы федерального, регионального,
отраслевого уровня могут включать в качестве составной части относительно самостоятельные научно-технические, производственно-технологические, социальные и другие виды инвестиционных проектов, осуществление которых способствует реализации программы или является составной частью проведения программы в жизнь. Особенность таких проектов заключается в том, что они требуют для своего претворения крупных вложений капитала, инвестиций, обеспечиваемых за счет ресурсных источников программы.
При этом такие инвестиционные проекты не только обеспечивают решение программной проблемы, но дают определенный положительный эффект, выходящий за пределы программы и представляющий интерес для экономики в целом.
Здесь перечисляются и характеризуются подобные инвестиционные проекты программы, представляющие ее ведущие звенья. Совокупность инвестиционных проектов, входящих в программу, отражает ее инвестиционную направленность, стратегию.
Содержание подпрограмм, составляющих программу.
Мероприятия программы объединяются в отдельные блоки, называемые подпрограммами. Подпрограмма представляет совокупность программных мероприятий, работ, объединенных в единый комплекс по признаку их общности. Обычно в программах выделяются подпрограммы:
— отраслевые, содержащие мероприятия, связанные с ключевыми отраслями экономики, от которых зависит осуществление программы.
Например, подпрограммы проведения геолого-разведочных работ, производства и/или реализации технологий, приобретения или продажи техники и оборудования;
— территориальные, объединяющие программные мероприятия, проводимые в рамках отдельной территории или связанные с решением территориальных проблем, которые являются частью общей программной проблемы;
— социальные, характеризующие меры по решению социальных задач программы.
Можно выделить и функциональные подпрограммы, ориентирующиеся на выполнение функций, с которыми связан и от которых зависит исход программы (экологические подпрограммы, меры по созданию и развитию инфраструктуры в зоне действия программы).
Крупномасштабные комплексные целевые программы в современных условиях так или иначе связаны с развитием внешнеэкономических отношений. Учитывая особую значимость этого аспекта для реализации ряда программ, а также специфику программных мероприятий внешнеэкономического характера, их следует выделять в виде отдельной подпрограммы или специального раздела программы. Мероприятия в области внешнеэкономических связей реализуются в таких сферах сотрудничества, как экспорт-импорт товаров и услуг, международная передача технологий, техническое содействие и помощь, организация совместных предприятий, привлечение иностранного капитала.
Источник: cyberpedia.su
Планирование процессов, выделение ресурсов, процессу, состояния процесса.
В этой статье мы поговорим на такие темы, как: планирование процессов операционной системой, выделение ресурсов процессу, состояния процесса в ОС.
Понятие «вычислительный процесс» (или просто «процесс») является одним из основных при рассмотрении свойств ОС. Последовательный процесс (задача) – это выполнение отдельной программы с ее данными на последовательном процессоре (программа, находящаяся в решении).
- Выполнение прикладных программ пользователей.
- Выполнение утилит и других системных обрабатывающих программ.
- Трансляция исходной программы, ее исполнение.
Планирование процессов
В первых вычислительных системах любая программа могла выполняться только после полного выполнения предыдущей задачи. Такой режим работы получил название однозадачного(однопрограммного).
Поскольку первые вычислительные системы были построены в соответствии с принципами Джона Фон Неймана, все подсистемы и устройства компьютера управлялись исключительно центральным процессором. ЦП осуществлял и выполнение вычислений, и управление операциями ввода/вывода данных. Соответственно, пока осуществлялся обмен данными между оперативной памятью и внешними устройствами, процессор не мог выполнять вычисления.
Введение в состав вычислительной машины специальных контроллеров позволило совместить во времени (распараллелить) операции вывода полученных данных и последующие вычисления на ЦП. Однако все равно процессор продолжал часто и долго простаивать, дожидаясь очередной операции ввода/вывода. Поэтому было предложено организовать, так называемый, мультипрограммный (мультизадачный, многозадачный) режим работы вычислительной системы. Суть его заключается в том, что пока одна программа (один процесс или задача) ожидает завершения очередной операции ввода/вывода, другая программа (другая задача) может быть поставлена на решение.
Многозадачный режим можно охарактеризовать следующим образом:
- благодаря совмещению во времени двух задач общее время их выполнения становится меньше, чем, если бы мы выполняли их по очереди (запуск одной из них после завершения другой).
- время выполнения каждой задачи в общем случае становится больше, чем, если бы мы выполняли каждую из них как единственную: всякое разделение ресурсов замедляет работу одного из участников за счет дополнительных затрат времени на ожидание выполнения ресурса.
Выделение ресурсов
ОС поддерживает мультипрограммирование и старается эффективно использовать ресурсы путем организации к ним очередей запросов, составляемых тем или иным способом. Это требование достигается поддерживанием в памяти более одного процесса, ожидающего процессор, и более одного процесса готового использовать ресурсы, как только последние станут доступными.
При необходимости использовать какой–нибудь ресурс (оперативную память, устройства ввода/вывода, массив данных и др.) задача обращается к супервизору ОС (ее центральному управляющему модулю), посредством специальных вызовов (команд, директив) и сообщает о своем требовании. При этом указывается вид ресурса и, если надо, его объем (например, количество адресуемых ячеек ОП, количество дорожек или секторов на системном диске, устройство печати и объем выводимых данных).
Супервизор ОС может состоять из нескольких модулей: супервизора ввода/вывода, супервизора прерываний, супервизора программ, диспетчер задач и т.д.
Директива обращения к ОС передает ей управление, переводя процесс в привилегированный режим работы, если такой существует. Ресурс может быть выделен, задачей, обратившейся к супервизору с соответствующим запросом, если:
- он свободен и в системе нет запросов от задач более высокого приоритета к этому же ресурсу.
- текущий запрос и ранее выданные запросы допускают совместное использование ресурса.
- ресурс используется задачей низшего приоритета и может быть временно отобран (разделяемый ресурс).
Получив запрос, ОС либо удовлетворяет его и возвращает управление задаче, выдавшей данный запрос, либо, если ресурс занят, ставит задачу в очередь к ресурсу, переводя ее в состояние ожидания. Очередь к ресурсу может быть организована несколькими способами, но чаще всего это осуществляется с помощью списковой структуры.
После окончания работы с ресурсом задача опять с помощью специального вызова супервизора (посредством соответствующей директивы) сообщает ОС об отказе от ресурса, или ОС забирает ресурс сама, если управление возвращается супервизору после выполнения какой-либо системной функции. Супервизор ОС, получив управление по этому обращению, освобождает ресурс и проверяет, имеется ли очередь к освободившемуся ресурсу. Если очередь есть – в зависимости от принятой дисциплины обслуживания (правила обслуживания) и приоритетов заявок он выводит из состояния ожидания задачу, ждущую ресурс, и переводит ее в состояние готовности к выполнению. После этого управление либо передается данной задаче, либо возвращается той, которая только что освободила ресурс.
При выдаче запроса на ресурс задача может указать, хочет ли она владеть ресурсом монопольно или допускает совместное использование с другими задачами.
Если в системе имеется некоторая совокупность ресурсов, то управлять их использованием можно на основе монопольной стратегии. Стратегия подразумевает четкую формулировку целей, следуя которым можно добиться эффективного распределения ресурсов.
В однопрограммной ОС присутствует только один пользовательский процесс. В мультипрограммной системе на ресурсы могут претендовать много независимых процессов.
Планирование процессов – это управление распределением ресурсов процессора между различными конкурирующими процессами путем передачи им управления согласно некоторой стратегии планирования.
Состояние процесса
Процесс создается, когда выполнение задания пользователя начинается, и уничтожается, когда задание завершается.
Если обобщать и рассматривать не только обычные ОС общего назначения, но и, например ОС реального времени, то можно сказать, что процесс может находиться в активном и пассивномсостоянии.
В активном состоянии (то есть во время своего существования) процесс может участвовать в конкуренции за использование ресурсов в ОС, а в – пассивном – он только известен системе, но в конкуренции не участвует (хотя его существование в системе сопряжено с предоставлением ему оперативной и/или внешней памяти).
В свою очередь активный процесс может быть в одном из следующих состояний:
- Выполнения (running) – все затребованные процессом ресурсы выделены. В этом состоянии в каждый момент времени может находиться только один процесс, если речь идет об однопроцессорной вычислительной системе (процесс использует процессор для выполнения своих команд). В многопроцессорных системах при наличии соответствующей ОС количество активных процессов может достигать числа процессоров.
- Готовности к выполнению (ready) – ресурсы могут быть предоставлены, тогда процесс перейдет в состояние выполнения (процессы не блокированы и не активны).
- Блокирования или ожидания (blocked) – затребованные ресурсы не могут быть предоставлены, или операция ввода/вывода не завершена (выполнение процесса может быть продолжено только после наступления некоторого ожидаемого им события).
Таким образом, возможные переходы из одного состояния процесса в другое в общем случае можно представить следующей схемой:
В любой момент времени выполняющимся процессом (т.е. использующим процессор) может быть только один процесс. При передаче управления процессу пользователя ОС устанавливает интервальный таймер. Тем самым задается квант времени, являющийся максимальным количеством времени процессора, на которое процесс получает управление. Если это время истекает, процесс переводится из состояния выполнения в состояние готовности. После этого ОС, согласно стратегии планирования, выбирает следующий процесс, находящийся в готовности, переводит его в состояние выполнения и передает ему управление.
Выбор процесса и передачу на него управления называют диспетчеризацией. Часть операционной системы, выполняющая эту функцию, называется диспетчером (dispetcher).
В обычных ОС (на рассматривая ОС реального времени) процесс появляется при запуске какой-нибудь программы. ОС организует (выделяет) для нового процесса соответствующий дескрипторпроцесса и процесс начинает выполняться. Поэтому пассивного состояния не существует.
В ОС реального времени ситуация иная. Обычно при проектировании системы реального времени уже заранее бывает известен состав программ (задач), которые должны будут выполняться. Известны и многие их параметры, которые необходимо учитывать при распределении ресурсов (объем памяти, приоритет, средняя длительность выполнения, открываемые файлы, используемые устройства и т.п.). Поэтому для них заранее заводят дескрипторы задач, с тем, чтобы в последствии не тратить драгоценное время на организацию дескриптора и поиск для него необходимых ресурсов. Таким образом, в ОС реального времени многие процессы (задачи) могут находиться в состоянии бездействия – пассивном состоянии.
Переходы между состояниями процесса
За время своего существования процесс может неоднократно совершать переходы из одного состояния в другое. Это обусловлено следующими факторами:
- обращениями к ОС с запросами ресурсов.
- обращениями к ОС с запросами на выполнение системных функций.
- взаимодействием с другими процессами.
- появлением сигналов прерывания таймера.
- появлением сигналов прерывания устройств ввода/вывода и др.
Возможные переходы процесса из одного состояния в другое отображены в виде схем состояний. Процесс из состояния бездействия может перейти в состояние готовности в следующих случаях:
- По команде оператора (пользователя). Имеет место в тех диалоговых ОС, где программа может иметь статус задачи (и при этом являться пассивной), а не просто быть исполняемым файлом и только на время исполнения получать статус задачи (как это происходит в большинстве современных ОС).
- При выборе из очереди планировщика (характерно для ОС, работающих в пакетном режиме).
- По вызову из другой задачи (посредством обращения к супервизору один процесс может создать, инициировать, приостановить, остановить, уничтожить другой процесс).
- По прерыванию от внешнего инициативного устройства (сигнал о свершении некоторого события может запускать соответствующую задачу).
Устройство называется инициативным, если по сигналу запроса на прерывание от него должна запускаться некоторая задача.
- При наступлении запланированного времени запуска программы.
Из состояния выполнения процесс может выйти по одной из следующих причин:
- Процесс завершается, при этом он посредством обращения к супервизору передает управление ОС и сообщает о своем завершении. В результате этих действий супервизор либо переводит его в список бездействующих процессов (процесс переходит в пассивное состояние), либо уничтожает (уничтожается не сама программа, а именно задача, которая соответствовала выполнению некоторой программы). В состояние бездействия процесс может быть переведен принудительно: по команде оператора или путем обращения к супервизору ОС из другой задачи с требованием остановить данный процесс.
- Процесс переводится супервизором ОС в состояние готовности к исполнению в связи с появлением более приоритетной задачи или в связи с окончанием выделенного ему кванта времени.
- Процесс блокируется (переводится в состояние ожидания) либо вследствие запроса операции ввода/вывода либо в силу невозможности предоставить ему ресурс, запрошенный в настоящий момент, а также по команде оператора на приостановку задачи, или по требованию через супервизор другой задачи.
Таким образом, движущей силой, меняющей состояние процессов, являются различные события. Один из основных видов событий — это прерывание.
Источник: more-it.ru