- Operating System — Process Scheduling
- Definition
- Process Scheduling Queues
- Two-State Process Model
- Schedulers
- Long Term Scheduler
- Short Term Scheduler
- Medium Term Scheduler
- Comparison among Scheduler
- Context Switch
- «Планировщик заданий» в Windows 7
- Работа с «Планировщиком заданий»
- Запуск «Планировщика заданий»
- Способ 1: Меню «Пуск»
- Способ 2: «Панель управления»
- Способ 3: Поле поиска
- Способ 4: Окно «Выполнить»
- Способ 5: «Командная строка»
- Способ 6: Прямой запуск
- Возможности «Планировщика заданий»
- Создание простой задачи
- Создание задачи
- Удаление задачи
- Отключение «Планировщика заданий»
Operating System — Process Scheduling
Definition
The process scheduling is the activity of the process manager that handles the removal of the running process from the CPU and the selection of another process on the basis of a particular strategy.
Process scheduling is an essential part of a Multiprogramming operating systems. Such operating systems allow more than one process to be loaded into the executable memory at a time and the loaded process shares the CPU using time multiplexing.
Process Scheduling Queues
The OS maintains all PCBs in Process Scheduling Queues. The OS maintains a separate queue for each of the process states and PCBs of all processes in the same execution state are placed in the same queue. When the state of a process is changed, its PCB is unlinked from its current queue and moved to its new state queue.
The Operating System maintains the following important process scheduling queues −
Job queue − This queue keeps all the processes in the system.
Ready queue − This queue keeps a set of all processes residing in main memory, ready and waiting to execute. A new process is always put in this queue.
Device queues − The processes which are blocked due to unavailability of an I/O device constitute this queue.
The OS can use different policies to manage each queue (FIFO, Round Robin, Priority, etc.). The OS scheduler determines how to move processes between the ready and run queues which can only have one entry per processor core on the system; in the above diagram, it has been merged with the CPU.
Two-State Process Model
Two-state process model refers to running and non-running states which are described below −
S.N. | State & Description | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 |
S.N. | Long-Term Scheduler | Short-Term Scheduler | Medium-Term Scheduler |
---|---|---|---|
1 | It is a job scheduler | It is a CPU scheduler | It is a process swapping scheduler. |
2 | Speed is lesser than short term scheduler | Speed is fastest among other two | Speed is in between both short and long term scheduler. |
3 | It controls the degree of multiprogramming | It provides lesser control over degree of multiprogramming | It reduces the degree of multiprogramming. |
4 | It is almost absent or minimal in time sharing system | It is also minimal in time sharing system | It is a part of Time sharing systems. |
5 | It selects processes from pool and loads them into memory for execution | It selects those processes which are ready to execute | It can re-introduce the process into memory and execution can be continued. |
Context Switch
A context switch is the mechanism to store and restore the state or context of a CPU in Process Control block so that a process execution can be resumed from the same point at a later time. Using this technique, a context switcher enables multiple processes to share a single CPU. Context switching is an essential part of a multitasking operating system features.
When the scheduler switches the CPU from executing one process to execute another, the state from the current running process is stored into the process control block. After this, the state for the process to run next is loaded from its own PCB and used to set the PC, registers, etc. At that point, the second process can start executing.
Context switches are computationally intensive since register and memory state must be saved and restored. To avoid the amount of context switching time, some hardware systems employ two or more sets of processor registers. When the process is switched, the following information is stored for later use.
- Program Counter
- Scheduling information
- Base and limit register value
- Currently used register
- Changed State
- I/O State information
- Accounting information
«Планировщик заданий» в Windows 7
В системах семейства Виндовс имеется специальный встроенный компонент, который позволяет запланировать наперед или назначить периодическое выполнение различных процедур на ПК. Называется он «Планировщиком заданий». Давайте выясним нюансы работы этого инструмента в Windows 7.
Работа с «Планировщиком заданий»
«Планировщик заданий» позволяет запланировать запуск указанных процессов в системе на точно установленное время, при наступлении определенного события или же задать периодичность данному действию. В Windows 7 установлена версия данного инструмента под названием «Task Scheduler 2.0». Она используется не только непосредственно пользователями, но и ОС для выполнения различных внутренних системных процедур. Поэтому указанный компонент не рекомендуется отключать, так как впоследствии возможны различные проблемы в работе компьютера.
Далее мы подробно рассмотрим то, как зайти в «Планировщик заданий», что он умеет делать, как с ним работать, а также, как в случае необходимости его можно деактивировать.
Запуск «Планировщика заданий»
По умолчанию изучаемый нами инструмент в Windows 7 включен всегда, но для того чтобы управлять им, нужно запустить графический интерфейс. Для этого существует несколько алгоритмов действий.
Способ 1: Меню «Пуск»
Стандартным способом запуска интерфейса «Планировщика заданий» считается его активация через меню «Пуск».
- Жмите «Пуск», затем — «Все программы».
Заходите в директорию «Стандартные».
Откройте каталог «Служебные».
В списке утилит отыщите «Планировщик заданий» и щелкайте по этому элементу.
Способ 2: «Панель управления»
Также «Task Scheduler» можно запустить и через «Панель управления».
- Снова жмите «Пуск» и перейдите по надписи «Панель управления».
Заходите в раздел «Система и безопасность».
Теперь щелкайте «Администрирование».
В раскрывшемся списке инструментов выберите «Планировщик заданий».
Способ 3: Поле поиска
Хотя описанные два метода открытия «Task Scheduler» являются в целом интуитивно понятными, все-таки не каждый пользователь может сразу запомнить весь алгоритм действий. Существует и более простой вариант.
- Щелкайте «Пуск». Установите курсор в поле «Найти программы и файлы».
Впишите туда следующее выражение:
Можно даже вписывать не полностью, а только часть выражения, так как тут же на панели начнут отображаться результаты поиска. В блоке «Программы» щелкните по отобразившемуся наименованию «Планировщик заданий».
Способ 4: Окно «Выполнить»
Операцию по запуску можно также осуществить через окно «Выполнить».
- Наберите Win+R. В поле открывшейся оболочки введите:
Способ 5: «Командная строка»
В некоторых случаях при наличии вирусов в системе или неполадок не получается стандартными методами произвести запуск «Task Scheduler». Тогда это процедуру можно попробовать выполнить с помощью «Командной строки», активированной с полномочиями администратора.
- С помощью меню «Пуск» в разделе «Все программы» переместитесь в папку «Стандартные». Как это сделать, было указано при объяснении самого первого метода. Отыщите наименование «Командная строка» и щелкайте по нему правой кнопкой мышки (ПКМ). В отобразившемся списке выбирайте вариант запуска от лица администратора.
Откроется «Командная строка». Вбейте в неё:
Способ 6: Прямой запуск
Наконец, интерфейс «Task Scheduler» можно активировать путем прямого запуска его файла — taskschd.msc.
В его адресной строке вбейте:
Щелкайте по значку в форме стрелки справа от указанной строки.
Будет открыта папка «System32». Отыщите в ней файл taskschd.msc. Так как элементов в этом каталоге очень много, то для более удобного поиска выстройте их в порядке алфавита, щелкнув по наименованию поля «Имя». Отыскав нужный файл, кликните по нему дважды левой кнопкой мыши (ЛКМ).
Возможности «Планировщика заданий»
Теперь после того как мы разобрались, как запустить «Планировщик», давайте выясним, что он умеет делать, а также определим алгоритм действий пользователя для достижения конкретных поставленных целей.
Среди основных действий, выполняемых «Task Scheduler», следует выделить такие:
- Создание задачи;
- Создание простой задачи;
- Импорт;
- Экспорт;
- Включение журнала;
- Отображение всех выполняемых задач;
- Создание папки;
- Удаление задачи.
Далее о некоторых из этих функций мы поговорим более предметно.
Создание простой задачи
Прежде всего, рассмотрим, как сформировать в «Task Scheduler» простую задачу.
- В интерфейсе «Task Scheduler» в правой части оболочки находится область «Действия». Щелкните в ней по позиции «Создать простую задачу…».
Запускается оболочка создания простой задачи. В область «Имя» обязательно введите наименование создаваемого элемента. Сюда можно ввести любое произвольное название, но желательно кратко охарактеризовать процедуру, чтобы вы сами могли потом сразу понять, что она собой представляет. Поле «Описание» необязательно для заполнения, но тут при желании вы можете более подробно описать выполняемую процедуру. После того как первое поле заполнено, кнопка «Далее» становится активной. Жмите по ней.
- При активации Виндовс;
- При запуске ПК;
- При занесении в журнал выбранного события;
- Каждый месяц;
- Каждый день;
- Каждую неделю;
- Однократно.
После того как вы сделали выбор, жмите «Далее».
Затем, если вы указали не конкретное событие, после которого будет запускаться процедура, а выбрали один из четырех последних пунктов, требуется указать дату и время запуска, а также периодичность, если было запланировано не однократное выполнение. Это можно сделать в соответствующих полях. После того как указанные данные занесены, жмите «Далее».
- Запуск приложения;
- Отправка сообщения по электронной почте;
- Отображение сообщения.
После выбора варианта жмите «Далее».
Если на предыдущем этапе был выбран запуск программы, откроется подраздел, в котором следует указать конкретное приложение, предназначенное для активации. Для этого жмите на кнопку «Обзор…».
Откроется стандартное окошко выбора объекта. В нем нужно перейти в ту директорию, где расположена программа, скрипт или другой элемент, который необходимо запустить. Если вы собираетесь активировать стороннее приложение, скорее всего, оно будет размещено в одном из каталогов папки «Program Files» в корневой директории диска C. После того как объект отмечен, жмите «Открыть».
После этого происходит автоматический возврат в интерфейс «Task Scheduler». В соответствующем поле отобразится полный путь к выбранному приложению. Жмите на кнопку «Далее».
Теперь откроется окошко, где будет представлена сводная информации по формируемой задаче на основании данных, вводимых пользователем на предыдущих этапах. Если вас что-то не устраивает, то жмите кнопку «Назад» и произведите редактирование на свое усмотрение.
Если же все в порядке, то для завершения формирования задачи жмите «Готово».
Создание задачи
Теперь разберемся, как создать обычную задачу. В отличие от простого аналога, рассмотренного нами выше, в ней можно будет задать более сложные условия.
- В правой области интерфейса «Task Scheduler» жмите «Создать задачу…».
- Присвоить процедуре наивысшие права;
- Указать профиль пользователя, при входе в который данная операция будет актуальной;
- Скрыть процедуру;
- Указать настройки совместимости с другими ОС.
Но обязательным в данном разделе является только внесение имени. После того как тут все настройки завершены, жмите по наименованию вкладки «Триггеры».
В разделе «Триггеры» задается время запуска процедуры, её периодичность или ситуация, при которой она активируется. Для перехода к формированию указанных параметров нажмите «Создать…».
- При запуске;
- При событии;
- При простое;
- При входе в систему;
- По расписанию (по умолчанию) и т.д.
При выборе последнего из перечисленных вариантов в окне в блоке «Параметры» требуется путем активации радиокнопки указать периодичность:
- Однократно (по умолчанию);
- Еженедельно;
- Ежедневно;
- Ежемесячно.
Далее нужно ввести в соответствующие поля дату, время и период.
Кроме того, в этом же окне можно настроить ряд дополнительных, но не обязательных параметров:
- Срок действия;
- Задержка;
- Повторение и т.д.
После указания всех необходимых настроек жмите «OK».
После этого происходит возврат во вкладку «Триггеры» окна «Создание задачи». Тут же будут отображены настройки триггера согласно данным, введенным на предыдущем этапе. Щелкайте по наименованию вкладки «Действия».
Перейдя в вышеуказанный раздел для указания конкретной процедуры, которая будет выполняться, щелкайте по кнопке «Создать…».
- Отправка электронной почты;
- Вывод сообщения;
- Запуск программы.
При выборе запуска приложения нужно указать расположение его исполняемого файла. Для этого щелкайте «Обзор…».
Запускается окно «Открыть», которое идентично наблюдаемому нами объекту при создании простой задачи. В нем точно так же нужно перейти в директорию расположения файла, выделить его и нажать «Открыть».
После этого путь к выбранному объекту отобразится в поле «Программа или сценарий» в окне «Создание действия». Нам остается только нажать на кнопку «OK».
Теперь, когда соответствующее действие отобразилось в основном окне создания задачи, переходим во вкладку «Условия».
- Указать настройки электропитания;
- Пробуждать ПК для выполнения процедуры;
- Указать сеть;
- Настроить запуск процесса при простое и т.д.
Все эти настройки не являются обязательными и применяются только для частных случаев. Далее можно переходить во вкладку «Параметры».
- Разрешить выполнение процедуры по требованию;
- Остановить процедуру, выполняемую больше указанного времени;
- Принудительно завершить процедуру в случае, если она не завершается по запросу;
- Немедленно производить запуск процедуры, если пропущена плановая активация;
- При сбое производить перезапуск процедуры;
- Удалять задачу через определенное время, если повтор не запланирован.
Первые три параметра по умолчанию активированы, а остальные три – отключены.
После указания всех необходимых настроек для создания новой задачи достаточно нажать на кнопку «OK».
Удаление задачи
При необходимости созданную задачу можно удалить из «Task Scheduler». Особенно это важно, если её создали не вы сами, а какая-то сторонняя программа. Нередки также случаи, когда в «Планировщике» выполнение процедуры прописывает вирусное ПО. В случае обнаружения подобного, задачу следует немедленно удалить.
- В левой части интерфейса «Task Scheduler» щелкайте по «Библиотека планировщика заданий».
В верхней части центральной области окна откроется перечень запланированных процедур. Найдите ту из них, которую необходимо убрать, щелкните по ней ПКМ и выберите «Удалить».
Отобразится диалоговое окошко, где следует подтвердить свое решение, нажав «Да».
Отключение «Планировщика заданий»
«Task Scheduler» крайне не рекомендуется отключать, так как в Виндовс 7, в отличие от XP и более ранних версий, он обслуживает целый ряд системных процессов. Поэтому деактивация «Планировщика» может привести к некорректной работе системы и ряду неприятных последствий. Именно по этой причине не предусмотрено стандартное отключение в «Диспетчере служб» той службы, которая отвечает за работу данного компонента ОС. Тем не менее в особых случаях временно требуется деактивировать «Task Scheduler». Это можно сделать путем манипуляций в системном реестре.
- Щелкайте Win+R. В поле отобразившегося объекта введите:
«Редактор реестра» активирован. В левой области его интерфейса жмите по наименованию раздела «HKEY_LOCAL_MACHINE».
Переходите в папку «SYSTEM».
Откройте каталог «CurrentControlSet».
Далее кликните по названию раздела «Services».
Наконец, в открывшемся длинном перечне каталогов отыщите папку «Schedule» и выделите её.
Теперь перемещаем внимание в правую часть интерфейса «Редактора». Тут нужно отыскать параметр «Start». Щелкните по нему дважды ЛКМ.
Открывается оболочка редактирования параметра «Start». В поле «Значение» вместо цифры «2» ставьте «4». И жмите «OK».
После этого произойдет возврат в основное окно «Редактора». Значение параметра «Start» будет изменено. Закрывайте «Редактор», кликнув по стандартной кнопке закрытия.
Теперь необходимо перезагрузить ПК. Жмите «Пуск». Затем щелкайте по треугольной фигуре справа от объекта «Завершение работы». В отобразившемся перечне выбирайте «Перезагрузка».
Будет выполнен перезапуск ПК. При повторном его включении «Планировщик заданий» будет деактивирован. Но, как было сказано выше, долго обходится без «Task Scheduler» не рекомендуется. Поэтому после того как требовавшие его отключения проблемы будут устранены, снова зайдите в раздел «Schedule» в окне «Редактора реестра» и откройте оболочку изменения параметра «Start». В поле «Значение» поменяйте цифру «4» на «2» и жмите «OK».
С помощью «Планировщика заданий» пользователь может запланировать реализацию практически любой одноразовой или периодической процедуры, выполняемой на ПК. Но данный инструмент используется также и для внутренних надобностей системы. Поэтому отключать его не рекомендуется. Хотя при крайней необходимости существует способ сделать и это, произведя изменение в системном реестре.