10122

Операционные системы

Реферат

Информатика, кибернетика и программирование

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

Русский

2013-03-21

39 KB

6 чел.

Операционные системы.

1. Исторический обзор.

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

Принято считать, что первой настоящей операционной системой была GM-NAA I/O, созданная в 1956 компанией General Motors для машины IBM 704. Большинство ранних систем для мейнфреймов IBM создавались покупателями.

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

Графические интерфейсы и расширения для DOS

Эти версии Windows не были полноценными операционными системами, а являлись надстройками к операционной системе MS-DOS и были по сути многофункциональным расширением, добавляя поддержку новых режимов работы процессора, поддержку многозадачности, обеспечивая стандартизацию интерфейсов аппаратного обеспечения и единообразие для пользовательских интерфейсов программ. Предоставляли встроенные средства (GDI) для создания графического интерфейса пользователя. Они работали с процессорами начиная с Intel 8086.

Windows 1.0 (1985)

Windows 2.0 (1987)

Windows 2.1 (Windows 386) (1987) — в системе появилась возможность запуска DOS-приложений в графических окнах, причём каждому приложению предоставлялись полные 640 Кб памяти. Полная поддержка процессора 80286. Появилась поддержка процессоров 80386.

Windows 3.0 (1990) — улучшена поддержка процессоров 80386 и защищённого режима.

Windows 3.1 (1992) — серьёзно переработанная Windows 3.0; устранены UAE (Unrecoverable Application Errors — фатальные ошибки прикладных программ), добавлен механизм OLE, печать в режиме WYSIWYG («что видите, то и получите»), шрифты TrueType, изменён Проводник (диспетчер файлов), добавлены мультимедийные функции.

Windows для рабочих групп (Windows for Workgroups) 3.1/3.11 — первая версия ОС семейства с поддержкой локальных сетей. В WFWG 3.11 также испытывались отдельные усовершенствования ядра, применённые позднее в Windows 95.

Семейство Windows 9x

Включает в себя Windows 95, Windows 98 и Windows Me.

Windows 95 была выпущена в 1995 году. Её отличительными особенностями являются новый пользовательский интерфейс, поддержка длинных имён файлов, автоматическое определение и конфигурация периферийных устройств Plug and Play, и способность исполнять 32-битные приложения. Windows 95 использует вытесняющую многозадачность и выполняет каждое 32-битное приложение в своём адресном пространстве.

Операционные системы этого семейства не являлись безопасными многопользовательскими системами как Windows NT, поскольку строгое разделение исполняющихся приложений не было реализовано в ядре. Программный интерфейс был подмножеством Win32 API поддерживаемым Windows NT, но имел поддержку юникода в очень ограниченном объёме[6]. Также в нём не было должного обеспечения безопасности.

В составе Windows 95 присутствовал MS-DOS 7.0, однако его роль сводилась к обеспечению процесса загрузки и исполнению 16-битных DOS приложений.

Семейство Windows NT

 

Текстовый логотип Windows® XP (обычно используется вместе с графическим)

Операционные системы этого семейства в настоящее время работают на процессорах с архитектурами x86, x64, и Itanium. Ранние версии (до 4.0 включительно) также поддерживали некоторые RISC-процессоры: Alpha, MIPS, и Power PC. Все операционные системы этого семейства являются полностью 32-битными операционными системами, и не нуждаются в MS-DOS даже для загрузки.

Только в этом семействе представлены операционные системы для серверов. До версии Windows 2000 включительно они выпускались под тем же названием что и аналогичная версия для рабочих станций, но с добавлением суффикса, например «Windows NT 4.0 Server» и «Windows 2000 Datacenter Server». Начиная с Windows Server 2003, серверные операционные системы называются по-другому.

2. Структура операционной системы (ядро, коммандный процессор, BIOS).

Структура и состав ОС

ОС состоит из:

ядра,

базовой системы ввода-вывода,

командного интерпретатора (необязательно),

сервисных программ.

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

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

Командный интерпретатор — необязательная, но существующая в подавляющем большинстве ОС часть, обеспечивающая управление системой посредством ввода текстовых команд (с клавиатуры, через порт или сеть). Операционные системы, не предназначенные для интерактивной работы часто его не имеют. Также его могут не иметь некоторые ОС для рабочих станций (MacOS 7, 8 (?)).

Сервисное программное обеспечение — пакет приложений, включённый в состав ОС, реализующий множество полезных функций.

3.Драйверы

Дра́йвер (англ. driver) (множественное число дра́йверы) — это компьютерная программа, с помощью которой другая программа (обычно операционная система) получает доступ к аппаратному обеспечению некоторого устройства. В общем случае, для использования любого устройства (как внешнего, так и внутреннего) необходим драйвер. Обычно с операционными системами поставляются драйверы для ключевых компонентов аппаратного обеспечения, без которых система не сможет работать. Однако для некоторых устройств (таких, как графическая плата или принтер) могут потребоваться специальные драйверы, обычно предоставляемые производителем устройства.

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

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

загрузка драйвера. Тут драйвер регистрируется в системе, производит первичную инициализацию и т. п.;

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

открытие драйвера. Начало основной работы. Обычно драйвер открывается программой как файл, функциями CreateFile() в Win32 или fopen() в UNIX-подобных системах;

чтение;

запись: программа читает или записывает данные из/в устройство, обслуживаемое драйвером;

закрытие: операция, обратная открытию, освобождает занятые при открытии ресурсы и уничтожает дескриптор файла;

управление вводом-выводом (англ. IO Control, IOCTL). Зачастую драйвер поддерживает интерфейс ввода-вывода, специфичный для данного устройства. С помощью этого интерфейса программа может послать специальную команду, которую поддерживает данное устройство. Например, для SCSI-устройств можно послать команду GET_INQUIRY, чтобы получить описание устройства. В Win32-системах управление осуществляется через API-функцию DeviceIoControl().