Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OS-theory.doc
Скачиваний:
5
Добавлен:
01.03.2025
Размер:
154.62 Кб
Скачать

Базовые принципы ос

Опр. ОС – система управления ресурсами компьютера. Ресурсы – оборудование, время, файлы, безопасность, права пользователя (всё, от чего зависит работа компьютера, что можно дать или отнять).

М ы работаем с виртуальной машиной, ОО – пользовательский интерфейс ОС

  • Надежность

  • Эффективность

IBM OS/360, OS/370 – первые полноценные ОС

DEC – лидер в области минимашин

PDP 8x 16x машины

VAX 32x

PDP-11 RT-11 (операционная система реального времени)

RSX-11 – система общего назначения

VAX/VMS – virtual machine system

БЭСМ-6, Эльбрус

Еще была система Multics от Bell Labs(Дейкстра). Той же командой позже был создан UNIX (70-е гг).

Переход UNIX на С (с ассемблера, видимо).

POSIX – стандарт на разработку ОС. Есть 2 части, вторая нестарндартизована.

Современные системы UNIX: коммерческие (IBM – AIPX, SUN – Solaris, HP – HPUX), остальные (FreeBSD, Linux)

Windows 9x: 95, 98, Me; Windows NT: 2000, XP, 2003 Server; Windows CE (Mobile).

Ныне Unix на 70% контролируют рынок больших машин, Windows почти полностью рынок PC.

Классификация ОС:

  1. DOS-ы – неполноценные ОС, т. к. выполняют часть функций: обеспечивают работу устройств, предоставляют пользовательский интерфейс, управляют файловой системой, запускают 1 программу.

  2. Операционные системы общего назначения.

    1. Системы пакетной обработки

    2. ОС с разделением времени Система разделяет время процессора между пользователями. Системы становятся псевдопараллельными.

  3. ОС реального времени. Система для управления оборудованием. Отличие: гарантированное время отклика на внешнее воздействие. Есть одна оперативная задача (критичная по времени отклика) и фоновые задачи.

Составляющие компьютера.

Принципы Неймана

Джон фон Нейман

  1. Принцип двоичного кодирования Вся информация в двоичном виде.

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

    • little-endian (младший байт числа в начале записи) 11 22 33 44 запишется как 11|22|33|44

    • big-endian (младший байт числа в конце записи) 11 22 33 44 запишется как 44|33|22|11

Все процессоры Intel – little-endian, IBM и Motorola – big-endian.

По сетям данные передаются в big-endian.

  1. Принцип программного управления Процессор находится в бесконечном цикле из двух половинок:

    • Выборка и декодирование – выбирает очередную команду из оперативной памяти и пытается её понять (декодирует)

    • Исполнение

В процессоре есть специальный регистр IP (instruction pointer) – адрес следующей команды.

Без IP невозможны for, if и т.д., а возможны только линейные программы.

Команды перехода меняют IP.

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

К этим принципам позднее добавят пятый:

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

(5) Прерывание – это особый случай в работе процессора.

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

Есть 3 типа прерываний:

  1. Внутреннее прерывание – вызывает сам процессор (например, деление на 0)

  2. В нешнее прерывание – вызывается устройствами ввода-вывода. Обрабатывает прерывания контроллер прерываний.

  3. Программное прерывание – прерывание, вызывающееся программистом. В Ассемблере – int N.

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

Есть 2 режима работы процессора:

  • Привилегированный (режим ядра)

  • Пользовательский

В привилегированном режиме можно все (выполнять любые команды и получать доступ к любой области памяти). В пользовательском режиме ряд команд нельзя выполнять, и ограничен доступ к памяти. Программы пользователя выполняются в пользовательском режиме. Это сделано аппаратно. Часть ОС работает в привилегированном режиме, например, ядро.

Для программиста ОС является набором функций (API). API – Application Programming Interface.

В UNIX около 100 (или 200??) функций API, в Windows около 10000. Не все функции из API выполняются через ядро, многие в пользовательском режиме. В процессоре есть специальный бит, который указывает на режим работы, и есть команда, позволяющая перейти из привилегированного режима в пользовательский.

Вызов любой системной функции – это вызов недопустимой команды, обработчик прерывания обрабатывает системную функцию.

Все системные запросы лежат в kernel32.dll.

В Windows NT, 2000, XP:

k ernel32.dll пользовательская программа

n tdll.dll ядро OS

В Windows 95, 98:

K ernel32.dll …. MS-DOS

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