Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЗИПЕКТ 09.11.2011 Лекция 5.docx
Скачиваний:
8
Добавлен:
17.11.2018
Размер:
297.39 Кб
Скачать

Литература по ч.1 раздела 3.1

  1. Соломон Д., Русинович М., «Внутреннее устройство Microsoft Windows 2000@

  2. Харт Д.М., «Системное программирование в среде Windows. Третье издание».

  3. А. Лихоносов, «Безопасность клиентских операционных систем. Учебное пособие». Доступно на http://ui-miit.ru.

  4. http://en.wikipedia.org.

  5. Панасенко С.П., Батура В.П., «Основы криптографии для экономистов: учебное пособие. Под ред. Л.Г.Гагариной». – 176 с.

  6. Панасенко С.П. «Алгоритмы шифрования. Специальный справочник». – 576 с.

Внутреннее устройство операционных систем (на примере Microsoft Windows) Процессы и потоки

Процесс (process) – это объект, обладающий собственным независимым виртуальным адресным пространством, в котором могут размещаться код и данные, защищённые от других процессов.

Внутри каждого процесса могут независимо выполняться один или несколько потоков (threads).

Поток является базовой единицей выполнения в Windows.

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

Задание

Задание (job) – объект, предназначенный для логического объединения процессов и позволяющий управлять несколькими процессами, как одним.

Список процессов в диспетчере задач Windows.

Список приложений в диспетчере задач Windows.

Список приложений диспетчера задач содержит список окон верхнего уровня, расположенных на всех рабочих столах Windows.

Планирование выполнения потоков

Выполнение потоков планируется системой на основе следующих факторов:

  • Ресурсы процессоров;

  • Физическая память;

  • Приоритеты выполнения и др.

В Windows поддерживается симметричная многопроцессорная обработка (Symmetric Multiprocessing, SMP), позволяющая распределять выполнение потоков между отдельными процессорами, установленными в системе.

SMP позволяет распределить независимо выполняющиеся потоки между различными физическими процессорами системы, что позволяет сильно повысить производительность.

Ресурсы процесса

  • Один или несколько потоков.

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

  • Один или несколько сегментов кода, включая код динамических библиотек.

  • Один или несколько сегментов секций данных.

  • Переменные окружения. Некоторые настройки, которые заданы заранее; например, путь выполнения программ.

  • Хип процесса. Память, которая может использоваться из так называемой «кучи» - памяти со свободным доступом.

  • Различные другие ресурсы (например, описатели открытых файлов, коммуникационных портов и др.).

Процессу также принадлежит контекст защиты, называемый маркером доступа, который идентифицирует пользователя, группы безопасности и привилегии, сопоставленные с процессом. Маркер доступа определяет полномочия процесса. Конкретный процесс всегда выполняется от имени какого-либо пользователя: реального, физического, или виртуального (например, System).

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