Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
kt.doc
Скачиваний:
9
Добавлен:
26.09.2019
Размер:
590.34 Кб
Скачать

22.Ос реального времени.

Есть много определений термина, по сути похожих друг на друга. Самые распространённые из них:

  • Операционная система, в которой успешность работы любой программы зависит не только от её логической правильности, но и от времени, за которое она получила этот результат. Если система не может удовлетворить временным ограничениям, должен быть зафиксирован сбой в её работе.

  • Стандарт POSIX 1003.1 даёт определение: «Реальное время в операционных системах — это способность операционной системы обеспечить требуемый уровень сервиса в определённый промежуток времени».

  • Операционная система, реагирующая в предсказуемое время на непредсказуемое появление внешних событий.

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

Операционные системы реального времени иногда делят на два типа — системы жесткого реального времени и системы мягкого реального времени.

Операционная система, которая может обеспечить требуемое время выполнения задачи реального времени даже в худших случаях, называется операционной системой жёсткого реального времени.

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

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

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

Основное отличие систем жёсткого и мягкого реального времени можно охарактеризовать так: система жёсткого реального времени никогда не опоздает с реакцией на событие, система мягкого реального времени — не должна опаздывать с реакцией на событие.

В обычных ОСРВ задача может находиться в 3-х возможных состояниях:

  1. Задачавыполняется;

  2. Задачаготова к выполнению;

  3. Задачазаблокирована.

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

23. ОС Windows.

MicrosoftWindows - семейство проприетарных операционных систем корпорации Майкрософт, ориентированных на применение графического интерфейса при управлении.

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

Windows поддерживает три подсистемы окружения – POSIX, OS/2 и Win32, причем подсистема Win32 является необходимым компонентом для работы всей операционной системы, т.к. обслуживает клавиатуру, мышь и экран.Хотя динамические библиотеки подсистем окружения способны самостоятельно обслужить некоторые запросы процессов, в большинстве случаев они переадресуют запрос исполнительной подсистеме Windows через недокументированный интерфейс системных вызовов. Можно сказать, что именно недокументированный интерфейс, реализуемый библиотекой Ntdll.dll является истинным интерфейсом системных вызовов, собственно и реализующим переход из режима задачи в режим ядра. Исключение составляет интерфейс GDI, полностью реализуемый подсистемой Win32 самостоятельно.

Исполнительная система операционной системы Windows обеспечивает работу подсистем окружения, реализуя большинство стратегий управления операционной системы, и включает в себя такие подсистемы, как:

• диспетчер конфигурации – обеспечивает управление системным реестром;

• диспетчер процессов и потоков – обеспечивает управление процессами и потоками, запущенными в системе, например, создает и уничтожает процессы и потоки;

• монитор безопасности – реализует политики безопасности на локальном компьютере;

• диспетчер ввода-вывода – реализует аппаратно независимый ввод-вывод и отвечает за пересылку информации ввода-вывода соответствующим драйверам;

• диспетчер PlugandPlay – определяет, какие драйверы нужны для поддержки каждого устройства и загружает эти драйверы;

• диспетчер электропитания – координирует работу драйверов устройств, обеспечивая, например, переключение периферийных устройств в экономичный режим при их длительном простое; • диспетчер кэша файловой системы – реализует буферизацию ввода-вывода, отложенную запись и упреждающее чтение данных файла;

• диспетчер виртуальной памяти – реализует собственное виртуальное адресное пространство для каждого процесса и обеспечивает поддержку работы диспетчера кэша;Ниже исполнительной системы Windows располагается ядро системы, реализующее различные для каждой процессорной архитектуры фундаментальные механизмы, такие как планирование и диспетчеризация потоков, диспетчеризация прерываний и исключений. Ядро изолирует драйверы и исполнительную систему от особенностей архитектуры процессора, что обеспечивает переносимость операционной системы.Уровень абстрагирования от оборудования является самым нижним уровнем сис-темы. Он скрывает от операционной системы, включая ее ядро, специфику конкретной аппаратуры, т.к. даже при одинаковой архитектуре системы, например x86, могут быть аппаратные особенности реализации, например различные типы материнской платы.

24. ОС Unix.

UNIX — семейство переносимых, многозадачных и многопользовательских операционных систем.

Некоторые отличительные признаки UNIX-систем включают в себя:

  • использование простых текстовых файлов для настройки и управления системой;

  • широкое применение утилит, запускаемых в командной строке;

  • взаимодействие с пользователем посредством виртуального устройства — терминала;

  • представление физических и виртуальных устройств и некоторых средств межпроцессового взаимодействия как файлов;

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

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

Особенности UNIX, отличающие данное семейство от других ОС:

  • Файловая система древовидная, чувствительная к регистру символов в именах, очень слабые ограничения на длину имён и пути.

  • Нет поддержки структурированных файлов ядром ОС, на уровне системных вызовов файл есть поток байтов.

  • Командная строка находится в адресном пространстве запускаемого процесса, а не извлекается системным вызовом из процесса интерпретатора команд (как это происходит, например, в RSX-11).

  • Понятие «переменных окружения».

  • Запуск процессов вызовом fork(), то есть возможность клонирования текущего процесса со всем состоянием.

  • Понятия stdin/stdout/stderr.

  • Ввод/вывод только через дескрипторы файлов.

  • Традиционно крайне слабая поддержка асинхронного ввода/вывода, по сравнению с VMS и Windows NT.

  • Интерпретатор команд есть обыкновенное приложение, общающееся с ядром обыкновенными системными вызовами.

  • Команда командной строки есть не более чем имя файла программы, не требуется специальная регистрация и специальная разработка программ как команд.

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

  • Пространство имён устройств на диске в каталоге /dev, поддающееся управлению администратором, в отличие от подхода Windows, где это пространство имен размещается в памяти ядра, и администрирование этого пространства (например, задание прав доступа) крайне затруднено из-за отсутствия его постоянного хранения на дисках (строится каждый раз при загрузке).

  • Широкое использование текстовых файлов для хранения настроек, в отличие от двоичной базы данных настроек, как, например, в Windows.

  • Широкое использование утилит обработки текста для выполнения повседневных задач под управлением скриптов.

  • «Раскрутка» ОС после загрузки ядра путём исполнения скриптов стандартным интерпретатором команд.

  • Широкое использование именованных каналов (pipe).

  • Все процессы, кроме init, равны между собой, не бывает «специальных процессов».

  • Адресное пространство делится на глобальное для всех процессов ядро и на локальную для процесса части, нет «групповой» части адресного пространства, как в VMS и Windows NT, как и возможности загрузки туда кода и его исполнения там.

  • Использование двух уровней привилегий процессора вместо четырёх в VMS.

  • Отказ от использования оверлеев в пользу деления программы на несколько программ поменьше, общающихся через именованные каналы или временные файлы.

  • Отсутствие APC и аналогов, то есть произвольных (а не жестко перечисленных в стандартном множестве) сигналов, не доставляемых до явного пожелания процесса их получить (Windows, VMS).

  • Концепция сигнала уникальна для UNIX, и крайне сложна в переносе на другие ОС, такие как Windows.

25. Linux.

Ли́нукс — Unix-подобная операционная система, созданная и распространяющаяся в соответствии с моделью разработки свободного и открытого программного обеспечения.

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

В Линукс-системах пользователи работают через интерфейс командной строки (CLI), графический интерфейс пользователя (GUI), или, в случае встраиваемых систем, через элементы управления соответствующих аппаратных средств.

Настольные системы, как правило, имеют графический пользовательский интерфейс, в котором командная строка доступна через окно эмулятора терминала или в отдельной виртуальной консоли.

Большинство низкоуровневых компонентов Линукс, включая пользовательские компоненты GNU, используют исключительно командную строку.

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

Большинство пользователей для установки Linux используют дистрибутивы. Дистрибутив — это не просто набор программ, а ряд решений для разных задач пользователей, объединённых едиными системами установки, управления и обновления пакетов, настройки и поддержки.

В настоящее время системы Linux лидируют на рынках смартфонов (Android, 50,9 % рынка), интернет-серверов (60 %), самых мощных суперкомпьютеров (91 %), а также, согласно LinuxFoundation, в дата-центрах и на предприятиях, имеют значительную долю рынка нетбуков (32 % на 2009 год), а на рынке домашних компьютеров Linux прочно занимает 3 место с 1-2,5 %. Многие производители ПО традиционно выпускают его только для трёх ОС — Windows, Mac OS и Linux. Система продолжает быстро совершенствоваться (например, новая версия ядра выпускается каждые 2-3 месяца, с 2005 года приняли участие более 7800 разработчиков из более чем 800 различных компаний) и набирать популярность.

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

Самая популярная ОС для смартфонов и планшетных компьютеров — Android, также основана на ядре Linux.

Также растёт использование Linux в качестве десктопной системы для дома и офиса. Дистрибутивы Linux пользуются популярностью у различных государственных структур: Федеральное правительство Бразилии хорошо известно своей поддержкой Linux, а российские военные разрабатывают свой собственный дистрибутив Линукс.

Правительство индийского штата Керала выпустило предписание о переходе всех школ штата на использование Linux. Для обеспечения технологической независимости Китай использует только Linux на своих процессорах Loongson. Некоторые регионы Испании разработали свои собственные дистрибутивы Linux, которые используются в образовании и госуправлении, например такие как gnuLinEx в Эстремадуре и Guadalinex в Андалусии. Португалия также пользуется своим собственным дистрибутивом CaixaMágica, разработанным для нетбукаMagalhães и государственной программы электронного образования. Франция и Германия предпринимают ряд шагов по увеличению использования Linux.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]