Студопедия
Главная страница | Контакты | Случайная страница | Спросить на ВикиКак

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Элементы окон

Читайте также:
  1. I.II. ЭЛЕМЕНТЫ ФИНАНСОВОЙ ПОЛИТИКИ
  2. III. Составные элементы генерального бюджета.
  3. Архитектура. Новые архитектурные элементы. Свод, Арка. Развитие реалистического отражения мира.
  4. Базисные элементы
  5. Базовые элементы на КМОП-транзисторах.
  6. блок.1 Элементы VII-I групп Периодической системы
  7. В круговороте воды выделяют такие основные элементы, как атмосферный, океанический и … .
  8. В систему муниципально-правового регулирования включены следующие элементы.
  9. Важные для жизни химические элементы и соединения
  10. Виды и юридический состав (элементы) налогов


Краткая диаграмма состояний процессов в операционной системе UNIX изображена на рисунке:

Как видим, состояние процесса исполнение расщепилось на 2 состояния: исполнение в режиме ядра и исполнение в режиме пользователя. В состоянии исполнение в режиме пользователя процесс выполняет прикладные инструкции пользователя. В состоянии исполнение в режиме ядра выполняются инструкции ядра операционной системы в контексте текущего процесса (например, при обработке системного вызова или прерывания). Из состояния исполнение в режиме пользователя процесс не может непосредственно перейти в состояния ожидание, готовность и закончил исполнение. Такие переходы возможны только через промежуточное состояние исполняется в режиме ядра. Точно также запрещен прямой переход из состояния готовность в состояние исполнение врежиме пользователя.

Приведенная выше диаграмма состояний процессов в Linux не является полной. Она показывает только состояния, для понимания которых достаточно уже полученных знаний. Полную диаграмму состояний процессов в операционной системе UNIX можно найти в книге Баха "Архитектура операционной системы UNIX" (рисунок 6.1.).


Планирование процессов в ОС UNIX System V

В системе UNIX System V Release 4 реализована вытесняющая многозадачность, основанная на использовании приоритетов и квантования.

Все процессы разбиты на несколько групп, называемых классами приоритетов. Каждая группа имеет свои характеристики планирования процессов.

Созданный процесс наследует характеристики планирования процесса-родителя, которые включают класс приоритета и величину приоритета в этом классе. Процесс остается в данном классе до тех пор, пока не будет выполнен системный вызов, изменяющий его класс.

В UNIX System V Release 4 возможно включение новых классов приоритетов при инсталляции системы. В настоящее время имеется три приоритетных класса: класс реального времени, класс системных процессов и класс процессов разделения времени. В отличие от ранних версий UNIX приоритетность (привилегии) процесса тем выше, чем больше число, выражающее приоритет. На рисунке 5.2 показаны диапазоны изменения приоритетов для разных классов. Значения приоритетов определяются для разных классов по разному.

Процессы системного класса используют стратегию фиксированных приоритетов. Системный класс зарезервирован для процессов ядра. Уровень приоритета процессу назначается ядром и никогда не изменяется. Заметим, что пользовательский процесс, перешедший в системную фазу, не переходит при этом в системный класс приоритетов.

Процессы реального времени также используют стратегию фиксированных приоритетов, но пользователь может их изменять. Так как при наличии готовых к выполнению процессов реального времени другие процессы не рассматриваются, то процессы реального времени надо тщательно проектировать, чтобы они не захватывали процессор на слишком долгое время. Характеристики планирования процессов реального времени включают две величины: уровень глобального приоритета и квант времени. Для каждого уровня приоритета имеется по умолчанию своя величина кванта времени. Процессу разрешается захватывать процессор на указанный квант времени, а по его истечении планировщик снимает процесс с выполнения.

Приоритетный класс Выбор планировщика Глобальное значение приоритета
Реальное время (real time) первый … 159 …
Системные процессы (system) 99 …
Процессы разделения времени (time-shared)   …последний 59 …
Возможно добавление новых классов  

Рис. 5.2. Приоритетные классы процессов

Процессы разделения времени были до появления UNIX System V Release 4 единственным классом процессов, и по умолчанию UNIX System V Release 4 назначает новому процессу этот класс. Состав класса процессов разделения времени наиболее неопределенный и часто меняющийся, в отличие от системных процессов и процессов реального времени. Для справедливого распределения времени процессора между процессами, в этом классе используется стратегия динамических приоритетов, которая адаптируется к операционным характеристикам процесса.

Величина приоритета, назначаемого процессам разделения времени, вычисляется пропорционально значениям двух составляющих: пользовательской части и системной части. Пользовательская часть приоритета может быть изменена суперпользователем и владельцем процесса, но в последнем случае только в сторону его снижения.

Системная составляющая позволяет планировщику управлять процессами в зависимости от того, как долго они используют процессор, не уходя в состояние ожидания. Тем процессам, которые потребляют большие периоды времени без ухода в состояние ожидания, приоритет снижается, а тем процессам, которые часто уходят в состояние ожидания после короткого периода использования процессора, приоритет повышается. Таким образом, процессам, ведущим себя не по-джентльменски, дается низкий приоритет, что означает, что они реже выбираются на выполнение. Но процессам с низким приоритетом даются большие кванты времени, чем процессам с высокими приоритетами. Таким образом, хотя низкоприоритетный процесс и не работает так часто, как высокоприоритетный, но зато, когда он наконец выбирается на выполнение, ему отводится больше времени.

Загрузка...

Планировщик использует следующие характеристики для процессов разделения времени:

ts_globpri содержит величину глобального приоритета;
ts_quantum определяет количество тиков системных часов, которые отводятся процессу до его вытеснения;
ts_tqexp системная часть приоритета, назначаемая процессу при истечении его кванта времени;
ts_slpret системная составляющая приоритета, назначаемая процессу после выхода его из состояния ожидания; ожидающим процессам дается высокий приоритет, так что они быстро получают доступ к процессору после освобождения ресурса;
ts_maxwaite максимальное число секунд, которое разрешается потреблять процессу; если этот квант времени истекает до кванта ts_quantum, то, следовательно, считается, что процесс ведет себя по-джентльменски, и ему назначается более высокий приоритет;
ts_lwait величина системной части приоритета, назначаемая процессу, если истекает ts_maxwait секунд.

Для процессов разделения времени в дескрипторе процесса proc имеется указатель на структуру, специфическую для данного класса процесса. Эта структура состоит из полей, используемых для вычисления глобального приоритета:

ts_timeleft число тиков, остающихся в кванте процесса;
ts_cpupri системная часть приоритета процесса;
ts_uprilim, ts_upri верхний предел и текущее значение пользовательской части приоритета. Эти две переменные могут модифицироваться пользователем;
ts_nice используется для обратной совместимости с системным вызовом nice. Она содержит текущее значение величины nice, которая влияет на результирующую величину приоритета. Чем выше эта величина, тем меньше приоритет.

В версии SVR4 нет поддержки многонитевой (multithreading) организации процессов на уровне ядра, хотя и есть два системных вызова для организации нитей в пользовательском режиме. Во многих коммерческих реализациях UNIX, базирующихся на кодах SVR4, в ядро включена поддержка нитей за счет собственной модификации исходных текстов SVR4.

 

Элементы окон

Несмотря на многообразие окон, используемых в Windows, управление окнами осуществляется по единым правилам. Практически все окна (кроме некоторых окон запросов) содержат обязательные элементы, предназначенные для управления окнами. На рис. 6 показаны элементы окна Мой компьютер.

Рис. 6. Окно папки Мой компьютер

В рабочей области окна папки отображаются значки объектов, содержащихся в папке. Содержимое программного окна зависит от назначения программы. В окнах приложений в рабочей области могут размещаться окна документов.

Все остальные элементы окна – полосы, строки, кнопки, – являются элементами управления.


Дата добавления: 2014-12-19; просмотров: 10 | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2017 год. (1.498 сек.)