Архивы рубрики ‘Операционные системы’
Синхронизация
Синхронизация
Как мы помним операционная система служит для управления ресурсами. Если есть набор ресурсов, то есть и множество некоторых процессов или потоков, которым нужны эти ресурсы. Отсюда вытекает проблема – как этому набору процессов сопоставить набор ресурсов, ведь ресурсы могут быть нужны в определенное время или одновременно. Нужно управлять доступом к ресурсам.
Нужны примитивы и синхронизация.
Как организуется управление, как организуется синхронизация доступа процессов к определенным ресурсам? Рассмотрим в данной статье.
ПОТОКИ (нити)
ПОТОКИ (нити)
Потоки в операционных системах нужны для двух вещей – для параллелизма и одновременности.
Параллелизм – это физически одновременное выполнение для достижения наибольшей производительности(например, между двумя ядрами).
Одновременность – логическое и/или физическое одновременное выполнение (есть один ЦП, на нем одновременно выполняется несколько программ – многозадачная ОС).
Создание процесса
Создание процесса
Самыми первыми создаются процессы в момент загрузки ОС.
1) Загрузка системы
При инициализации системы создаются несколько исходных процессов
- В Unix – это процессы «демоны» Sched(pid0) init(pid1) – другие высокоуровневые (веб-сервер, емейл-сервер). Ядро – не процесс. Идентификаторы в Unix идут последовательно с приращением 1.
- В Windows NT ядро – это системный процесс System(Pid4), далее загружаются система управления подсистемами smss. Идентификаторы в Win идут с приращением 4, идентификатор 0 зарезервирован, системный процесс — 4.
Понятие ПРОЦЕСС
Понятие ПРОЦЕСС
Рассмотрим ключевые понятия в теории операционных систем, такие как процессы и потоки. Посмотрим, как все это исторически развивалось и к чему привело сейчас. Начнем с самого фундаментального понятия в операционных системах – ПРОЦЕСС, на нем строится все остальное.
Виртуализация и другие особенности современных ОС
Виртуализация и другие особенности современных ОС
Виртуализация (виртуальная машина)
Сегодня применяется практически везде:
- Планшет Android
- Телефон c Java
- Веб-сервер (на хостинге работает виртуальный сервер)
Впервые коммерческая виртуализация появилась в 1972г. В компьютерах фирмы IBM в минифреймах.