Параллельный и последовательный порты

Содержание

Слайд 2

Схема контроллера параллельного порта i8255A. Устройство управления Буфер управления Внешнее устройство

Схема контроллера параллельного порта i8255A.
Устройство управления

Буфер управления

Внешнее устройство

Системная шина

Внутренняя шина данных

Буфер

данных

БР Канал данных С
С

БР Канал данных А
А

БР Канал данных В
В

Сигналы управления

А1
А2
IOR
IOW
RESET
A7, A15

Контроллер параллельного обмена представляет собой 3-хканальный байтовый интерфейс и позволяет организовать обмен данными в трех режимах:
Режим 0 – синхронный однонаправленный ввод/вывод (4 порта А, В, С1, С2).
Режим 1 – асинхронный однонаправленный ввод/вывод (2 порта А и В).
Режим 2 – асинхронный двунаправленный ввод/вывод (1 порт А).
Программирование режимов работы каналов контроллера осуществляется передачей в буфер управления соответствующего кода.

Слайд 3

Сигналы Centronics имеют следующее назначение: D0...D7 — 8-разрядная шина данных для

Сигналы Centronics имеют следующее назначение:
D0...D7 — 8-разрядная шина данных

для передачи из компьютера в принтер.
-STROBE — сигнал стробирования (сопровождения) данных.
-АСК — сигнал подтверждения принятия данных и готовности принтера.
BUSY — сигнал занятости принтера обработкой полученных данных и
неготовности принять следующие данные.
-AUTO FD — сигнал автоматического перевода строки (каретки).
РЕ — сигнал конца бумаги (режим ожидания).
SLCT — сигнал готовности приемника (принтера).
-SLCT IN — сигнал принтеру о том, что последует передача данных.
-ERROR — сигнал ошибки принтера.
-INIT — сигнал инициализации (сброса) принтера и очистки буфера печати.
Слайд 4

Формирование и прием сигналов интерфейса Centronics производится путем записи и чтения

Формирование и прием сигналов интерфейса Centronics производится путем записи и

чтения выделенных для него портов ввода/вывода.
В компьютере может использоваться три порта Centronics:
LPT1 (порт 378h, IRQ5), LPT2 (порт 278h, IRQ7) и LPT3 (порт 3ВСh).
Базовый адрес порта используется для передачи принтеру байта данных. Установленные на линиях данные можно считать из этого же порта в ПЭВМ.
Временная диаграмма цикла передачи данных по интерфейсу Centronics.

>500 >500 >500 наносекунд

>2500 наносекунд

D0 … D7
- STROBE
BUSY
- ACK

Перед началом передачи данных контролируется снятие сигналов BUSY и ASK. Затем данные выставляются на шину и формируется сигнал STROB. За это время принтер должен успеть принять данные и выставить сигнал BUSY, а затем и ASK.
Максимальная длина соединительного кабеля – 1,8 метра.
В настоящее время стандарты параллельного порта ЕРР и ЕСР включены в стандарт IEEE 1284 с добавлением еще двух режимов обмена данными: байтового и полубайтового.

Слайд 5

Последовательный порт (Интерфейс RS232C). Интерфейс RS-232C предназначен для подключения к компьютеру

Последовательный порт (Интерфейс RS232C).
Интерфейс RS-232C предназначен для подключения к

компьютеру стандартных внешних устройств (принтера, сканера, модема, мыши и т.д.), а также для связи компьютеров между собой.
Основными преимуществами использования RS-232C по сравнению с Centronics являются возможность передачи на значительно большие расстояния и гораздо более простой соединительный кабель.
В то же время работать с ним несколько сложнее: данные в RS-232C передаются в последовательном коде побайтно, а каждый байт обрамляется стартовым и стоповыми битами.
Формат передаваемых данных последовательного порта:
отсутствие передачи

«1»
«0»

Стартовый бит 8 бит стоповые биты
данных бит четности

Данные могут передаваться как в одну (полудуплексный режим), так и в обе стороны (дуплексный режим).
Обмен по интерфейсу RS-232C осуществляется по специально выделенным для этого последовательным портам:
СОМ1 (адреса 3F8h...3FFh, прерывание IRQ4),
COM2 (адреса 2F8h...2FFh, прерывание IRQ3),
COM3 (адреса 3E8h...3EFh, прерывание IRQ10),
COM4 (адреса 2E8h...2EFh, прерывание IRQ11).

Слайд 6

Схема контроллера последовательного порта i8250. Устройство управления Буфер 1 управления Внешнее

Схема контроллера последовательного порта i8250.
Устройство управления

Буфер 1 управления

Внешнее устройство

Системная шина

Буфер данных

Сигналы

управления

RESET
IRQ

В состав ПЭВМ могут входить до четырех последовательных портов, работающих в стандарте RS-232С (отечественный аналог - стык С2).
Каждое из устройств RS-232С представляет собой самостоятельный контроллер i8250, оснащенный 25- или 9- штырьковым разъемом.
Контроллер порта RS-232С является полностью программируемым
Устройством.
Ему можно задать следующие параметры обмена: количество битов данных и стоп-битов, вид четности и скорость обмена в бодах (бит/с).

мультиплексор - демультиплексор

Буфер 2 управления

Буфер 3 управления

Буфер 4 управления

Буфер 5 управления

Буфер 6 управления

Битовый счетчик

Схема кодирования – декодирования пакета

Генератор синхросигнала

ТхD
RxD
CLK

Слайд 7

Назначение сигналов обращений: FG — защитное заземление (экран). -TxD — данные,

Назначение сигналов обращений:
FG — защитное заземление (экран).
-TxD — данные,

передаваемые компьютером в последовательном коде.
-RxD — данные, принимаемые компьютером в последовательном коде.
RTS — сигнал запроса передачи. Активен во все время пере­дачи.
CTS — сигнал сброса (очистки) для передачи. Активен во все время передачи. Говорит о готовности приемника.
DSR — готовность данных. Используется для задания режима модема.
SG — сигнальное заземление, нулевой провод.
DCD — обнаружение несущей данных (принимаемого сигнала).
DTR — готовность выходных данных.
RI — индикатор вызова. Говорит о приеме модемом сигнала вызова по телефонной сети.

Компьютер обычно имеет 9-контактный (DB9P) или 25-контактный (DB25P) разъем для подключения интерфейса RS-232C.
Назначение контактов разъема приведено в таблице

Слайд 8

Конкретные форматы обращений по этим портам можно найти в описаниях микросхем

Конкретные форматы обращений по этим портам можно найти в описаниях

микросхем контроллеров последовательного обмена UART (Universal Asynchronous Receiver/ Transmitter), например, для i8250.
Наиболее часто используются трех- или четырехпроводная связь (для двунаправленной передачи).
Для двухпроводной линии связи в случае только передачи из компьютера во внешнее устройство используются сигналы SG и TxD.
Все 10 сигналов интерфейса задействуются только при соединении компьютера с модемом.
компьютер внешнее устройство

TxD
RxD
RTS CTS DSR
DCD DTR
RI
SG
FG

TxD
RxD
RTS CTS DSR
DCD DTR RI
SG
FG

Схема 4-х проводной линии связи для интерфейса RS232C

Примечание: тактовые частоты приемника и передатчика должны быть одинаковыми (расхождение – не более 10%) для этого скорость передатчика (ПЭВМ) может выбираться из ряда: 150, 300, 600, 1200, … 57600, 115200 бит/с.

Слайд 9

29.Подсистема ввода-вывода. Назначение, структура и задачи BIOS. BIOS (Basic Input Output

29.Подсистема ввода-вывода.
Назначение, структура и задачи BIOS.
BIOS (Basic

Input Output System) – часть программного обеспечения ПЭВМ, содержащая управление адаптерами внешних устройств, экранными операциями, тестирование, а затем начальную загрузку OS.
BOIS обеспечивает стандартный интерфейс, поддерживающий перено-симость OS для ПЭВМ с совместимыми процессорами.
BOIS состоит из основных компонент:
1. POST– процедуры проверки системных устройств и их ресурсов.
2. ROM-Scan – программа сканирования ОЗУ.
3. SETAP-программный интерфейс просмотра и корректировки констант.
4. Константы BIOS в CMOS, таблица 256-ти символов ASCII 8х8.
Все адреса констант документированы и должны сохраняться в последующих версиях BIOS для данной системной платы.
Компоненты BOIS записаны в специальной ПЗУ на системной плате объемом 64 кБ и обычно рассматриваются, как неотъемлемая часть ПЭВМ, встраиваемая в адресное пространство ОЗУ с адреса F000:0000.
Основной принцип организации системы ввода/вывода:
ЦПУ и ОЗУ образуют ядро ПЭВМ, а различные периферийные устройства, к которым можно отнести любое другое устройство, которое не входит в состав ядра ПЭВМ, сопрягаются с ядром системы с помощью интерфейсов (совокупности шин, сигналов, электрических схем, протоколов передачи данных и команд), входящих в состав ядра OS для организации обмена информацией.
Слайд 10

Структура подсистемы POST. Состояние процессора после включения питания предопределено – EFLAGS

Структура подсистемы POST.
Состояние процессора после включения питания предопределено


EFLAGS = 00000002h; EIP = 0000FFF0h; CS = 0F000h; PE(CR0) = 0.
по этому адресу находится команда JMP перехода на процедуру POST (Power On Self Test) самотестирования и инициализации базовых устройств ПЭВМ:

Ввод константы инициализации в порт устройства n

Чтение байта статуса устройства n

Статус устройства n соответствует данным CMOS

нет

да
……….

Подача звукового сигнала, вывод признака ошибки инициализации устройства n

Аварийное завершение процедуры POST

Процедура сканирования (верификации) оперативной памяти

Есть ошибки сканирования

да

нет

вывод признака ошибки сканирования оперативной памяти

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

Слайд 11

Основные функции подсистемы POST. Процедуры POST служат для пуска самотестирования устройств

Основные функции подсистемы POST.
Процедуры POST служат для пуска самотестирования

устройств на системной плате, сравнения их статуса с данными CMOS и инициализации:
- каналы системного интервального таймера (слышен гудок),
- контроллер прерываний,
- контроллер прямого доступа,
- контроллер клавиатуры (загораются индикаторы на клавиатуре),
- контроллер памяти и т.д.,
затем инициализируются процедуры самотестирования устройств, имеющих собственную BIOS:
- видеоконтроллер (на мониторе появляется первое сообщение),
- контроллеры дисковых накопителей (появляется сообщение),
- контроллер USB (клавиатура или мышь USB становятся активными)
- звуковой адаптер,
- сетевой адаптер и т.д.
Выполняется сканирование оперативной памяти (отображается на мониторе)
После успешного завершения процедур тестирования осуществляется поиск boot-устройств, содержащих в буфере данных байт 80h (1000000), т.е. неисполняемую команду, используемую в данном контексте POST для подтверждения активности устройства загрузки OS.
Приоритет загрузочных устройств определяется в SETUP CMOS.
При выполнении POST могут генерироваться сообщения об ошибках.
Описания кодов ошибок можно найти по адресу: www.earthweb.com или http://burks.bton.ac.uk/burks/pcinfo/hardware/bios_sg/bios_sg.htm
Слайд 12

Доступ к переменным и константам BIOS. Осуществляется через меню SETUP BIOS,

Доступ к переменным и константам BIOS.
Осуществляется через меню SETUP

BIOS, доступное в начальные моменты загрузки BIOS с помощью клавиш, указанных в сообщениях.
Меню SETUP состоит из основных разделов:
1. Стандартные переменные: дата, время, параметры ОЗУ и накопителей.
2. Дополнительные переменные и установленные модули программного обеспечения BIOS для тестирования аппаратных средств, устройств ядра ПЭВМ и ближайшего окружения.
3. Параметры остальных устройств, интегрированных в состав системной (материнской) платы ПЭВМ и варианты распределения ресурсов (слотов расширений шин, прерываний и каналов прямого доступа).
Здесь же определяется порядок опроса периферийных устройств, которые могут содержать загрузочные модули операционных систем.
4. Параметры интерфейсов устройств, подключаемых к системной плате, определяющих варианты энергосбережения.
5. Размеры констант, определяющих параметры центрального процессора (частота, напряжение энергопитания ядра центрального процессора и ОЗУ), а также их предельные величины для сигнализации или отключения.
6. Набор параметров BIOS, загружаемый по умолчанию (в случае ошибок ручного набора параметров пользователем).
7. Ввод пароля для входа в редактор переменных – SETUP BIOS.
8. Ввод пароля для продолжения загрузки BIOS и выполнения POST-процедур после включения ПЭВМ (пользовательский пароль).
Значение паролей может быть снято системным обнулением BIOS.
Слайд 13

Карта ввода / вывода. 0000 – 00FF – 256 8-разрядных портов

Карта ввода / вывода.
0000 – 00FF – 256 8-разрядных

портов предназначены для устройств, расположенных на системной (материнской) плате ПЭВМ,
0100 – 03FF – 768 8-разрядных портов отведены для контроллеров периферийных устройств, подключаемых к шинам системной платы ПЭВМ.

F000 – FFFF – 4096 дополнительных 8-разрядных портов, отведенных для различных виртуальных устройств, подключаемых к внешним шинам (USB, mini USB, SCSI, eSATA, HDD IDE ATA/ATAPI, PCI Express и т.д.).

Слайд 14

Функции BIOS при работе с портами Для прямого обращения ЦПУ к

Функции BIOS при работе с портами
Для прямого обращения ЦПУ

к портам ввода/вывода в системе команд предусмотрено всего 2 команды: IN и OUT.
Но сам процесс обмена данными с периферийными устройствами сложен и должен учитывать ширину порта (порядок опроса нескольких 8-ми разрядных портов) и протокол обмена, определяющий порядок оценки готовности этих устройств к обмену данными по той или иной шине, а также свойства самой шины.
По этой причине в OS Windows прямой доступ к портам ограничен. Ввод прямых обращений к портам в приложениях может вызвать зависание программы или ее аварийное завершение из-за превышения привилегий.
Для этой цели в составе ядра OS имеется большой набор типовых обработчиков – функций BIOS, связанных с тем или иным общепользова-тельским прерыванием.
Поскольку количество прерываний ограничено, то обычно прерывание имеет несколько функций, а отдельные функции и подфункций BIOS:
функции прерывания 10h – работа с портами видеоконтроллера VGA
функции прерывания 13h – работа с дисковыми системами и DMA
функции прерывания 14h – работа с последовательным портом СОМ
функции прерывания 15h – работа с манипулятором мышь
функции прерывания 16h – работа с клавиатурой
функции прерывания 17h – работа с параллельным портом LPT
функции прерывания 1Ah – работа с таймером, времязадающие функции
функции прерывания 80h – работа со звуковым процессором
Слайд 15

30. Система Plug & Play автоопределения устройств ПЭВМ. Основные принципы построения

30. Система Plug & Play автоопределения устройств ПЭВМ.
Основные принципы

построения системы PnP были сформулированы и частично внедрены в 1974-м году для шины МСА (Micro Channel Architecture).
Основные принципы построения системы PnP:
1. Ресурсы ядра ПЭВМ (порты доступа и их разрядность, номера прерыва-ний, адресное пространство ОЗУ для обмена информацией, каналы прямого доступа) не являются жестко распределенными, а присваиваются по требованию.
2. Каждое периферийное (по отношению к ядру системы) устройство имеет описание набора требований в своем BIOS.
3. В составе BIOS PnP имеется программа – системный конфигуратор, которая присваивает номера периферийным устройствам, составляет паспорта (описания) этих устройств и выделяет необходимые ресурсы, с учетом недопущения конфликтов, при необходимости производит оптимизацию (перераспределение) ресурсов.
Паспорта устройств сохраняются в реестре.
4. После загрузки операционной системы для периферийных устройств загружаются соответствующие системные драйвера. Осуществляется повторная проверка безконфликтной работы устройств.
5. При отключении периферийного устройства или подключения нового операционная система автоматически перераспределяет освободившиеся ресурсы, определяет параметры нового устройства, проверяет его и предоставляет необходимые ресурсы без перезагрузки OS (на лету).
Слайд 16

Современная система PnP состоит из следующих компонентов: 1. BIOS стандарта PnP.

Современная система PnP состоит из следующих компонентов:
1. BIOS стандарта

PnP.
Уведомления – сообщение пользователю об обнаружении нового устройства
Конфигурирование – изоляция устройства до присвоения ID.
Поддержка данных- информация завершения POST на специальной RAM.
2. Система драйверов-энумераторов шин.
Контроллер шины получает информацию из RAM об устройстве или из реестра для устройств «не PnP» и присваивает уникальный номер.
3. Дерево аппаратных средств и реестр.
Ветвь в реестре OS под названием «HKEY_LOKAL_MACHINE\HARDWARE», которая состоит из типов аппаратных устройств.
4. Windows 95 и выше (или другая OS PnP).
Фирма Intel предлагает спецификацию PnP всем разработчикам OS.
5. Драйверы устройств PnP.
Спецификация PnP предполагает не только наличие доступной для BIOS информации об устройстве в RAM этого устройства, но и динамически под-гружаемый драйвер этого устройства. Существует интерфейс прикладного программирования (API) для создания таких драйверов для новых устройств стандарта PnP. Загрузка таких драйверов должна регистрироваться диспет-чером конфигурации и отвечать за выделенные ресурсы (сдавать их при выгрузке).
Слайд 17

Подсистема ввода/вывода ПЭВМ и ядро OS решает следующие задачи: 1. Реализация

Подсистема ввода/вывода ПЭВМ и ядро OS решает следующие задачи:
1.

Реализация вычислительной системы переменной конфигурации.
2. Параллельная работа программ в памяти и процедур ввода/вывода.
3. Упрощение процедур ввода/вывода, обеспечения их программной независимости от конфигурации конкретного периферийного устройства.
4. Обеспечение автоматического распознавания ядром ЭВМ периферийных устройств, многообразия их состояний (готовности, отсутствия носителя, ошибок чтения/записи и т.д.).
5. Интеллектуализация интерфейса, налаживание диалога между ядром и периферийными устройствами.
6. Переносимость и независимость OS от аппаратной платформы и ядра ПЭВМ.
Пути решения этих задач:
1. Модульность - новые периферийные устройства не вызывают существенных изменений архитектуры и вписываются в существующее адресное пространство, каналы и порты доступа.
2. Унификация по формату передаваемых данных и команд вне зависи-мости от используемых внутренних машинных языков микроопераций.
3. Унифицированный интерфейс по разрядности шины, набору линий сигналов управления и протоколам обмена.
4. Унифицированные по адресному пространству, доступному ядру ПЭВМ, и каналам доступа к нему со стороны центрального процессора для операций ввода/вывода информации в пределах этого адресного пространства,.
Слайд 18

6. Арбитр ресурсов (служба OS PnP). Основные функции: - Обновление реестра,

6. Арбитр ресурсов (служба OS PnP).
Основные функции:
- Обновление

реестра, помещая туда новейшую информацию о выделении ресурсов на стадии загрузки,
- Переназначение ресурсов «на лету» любым устройства PnP, конфигурация которых изменилась.
Арбитр ресурсов работает в контакте с диспетчером конфигурации, который в любой момент может запросить у арбитра ресурсов освобож-дения ресурса с последующим предоставлением его другому устройству.
7. Диспетчер конфигурации (служба OS PnP).
Отвечает за процесс конфигурирования всей системы в целом.
Диспетчер конфигурации непосредственно взаимодействует, как с BIOS, так и с реестром, координируя процесс конфигурирования в ходе событий:
- когда BIOS отправляет ему список устройств «не PnP» на системной плате при загрузке, которые имеют жестко закрепленные за ними ресурсы,
- когда он получает извещение об изменении конфигурации от BIOS или от энумераторов шин, которую он использует для идентификации всех устройств на конкретной шине, а также требования каждого устройства о выделении ресурсов. Эта информация заносится в реестр.
8. Пользовательский интерфейс (API).
Основное требование для пользовательских приложений, запускаемых в OS PnP – они не должны иметь явных обращений к ресурсам устройств (портам ввода/вывода, прерываниям или дискам) необходимо заменять эти обращения формальными обращениями к соответствующим устройствам.
Слайд 19

Распределение ресурсов ПЭВМ между устройствами. Для реализации принципов построения системы PnP,

Распределение ресурсов ПЭВМ между устройствами.
Для реализации принципов построения системы

PnP, учитывая, что в составе архитектуры ПЭВМ встречается достаточно много устаревших устройств с жестко закрепленными за ними системными ресурсами, которые изменять нецелесообразно (контроллер клавиатуры, системный интерваль-ный таймер, контроллеры ПДП и т.д.), в реальной системе PnP используется следующий порядок распределения ресурсов:
1. При проверке POST определяются устройства «не PnP».
2. Устройствам «не PnP» ресурсы выделяются в первую очередь согласно спецификационных требований, т.к. эти устройства неперенастраиваемые.
3. При обнаружении конфликтов BIOS PnP генерирует уведомление о необходимости устранения конфликтов вручную.
4. Затем осуществляется итерационное конфигурирование устройств PnP.
5. Используются методы изоляции устройств друг от друга (присваивается идентификатор и серийный номер), после этого устройству присваивается дескриптор (Handle).
Присвоение идентификатора связано с используемой устройством шины и осуществляется специальной программой из состава OS – энумера-тором шины, которая является новым типом драйвера контроллера шины.
Номера идентификаторов являются уникальными для каждого устройства и неизменными для каждой последующей перезагрузки OS, например, PnP 0000 – контроллер прерываний АТ, PnP 0100 – системный интервальный таймер, PnР 0C04 – матсопроцессор, PnP 0А03 – контроллер шины PCI и т.д.
Слайд 20

PnP- спецификация архитектуры аппаратных средств ПЭВМ, используе-мая соответствующими операционными системами для

PnP- спецификация архитектуры аппаратных средств ПЭВМ, используе-мая соответствующими операционными системами

для их конфигурирова-ния и исключения конфликтов устройств между собой.
Основной компонент – все оборудование, подключаемое к шинам, содер-жит энергонезависимые регистры POS (Programmable Option Select), где хра-нится конфигурация устройства и требуемые ресурсы.
Дополнительный компонент – файлы OS описания устройств, драйверов к ним и требуемых ресурсов (ini –файлы или реестр OS).
Программы BIOS PnP, бесконфликтно распределяющие ресурсы.
Обычная загрузка системы:

пуск

POST

Поиск Boot OS

Загрузка OS

Загрузка BIOS PnP:

пуск

POST

Поиск Boot OS

Загрузка OS

Определение PnP

Проверка устройств

Чтение POS

чтение ini

Конфигу-рирование устойств

да

нет

Слайд 21

31. Общие сведения об операционных системах. Общие понятия об операционной системе.

31. Общие сведения об операционных системах.
Общие понятия об операционной

системе.
Чтобы полностью овладеть всеми возможностями своего компьютера, необходимо знать и понимать его операционную систему.
Назначение операционной системы заключается в обеспечении удобства управления компьютером.
Любая операционная система, в полном смысле этого термина, является первой и наиболее важной программой любого компьютера. Как правило, она является и наиболее сложной, используемой только для управления самим компьютером.
Основная часть работы операционной системы заключается в выполнении огромного количества рутинных операций контроля, проверки достоверности, вычисления значений физических адресов и т.д. и т.п. и предназначена, чтобы скрыть от пользователей большое количество сложных и ненужных им деталей процесса управления аппаратной частью.
Как правило, операционная система состоит из нескольких частей:
Первая часть - это система BIOS в ПЗУ ПЭВМ.
Вторая часть - главная загрузочная запись.
Третья часть – аппаратный загрузчик операционной системы.
Четвертая часть – сканер и конфигуратор аппаратных средств ПЭВМ.
Пятая часть – ядро операционной системы и командный монитор.
Шестая часть – файлы конфигурации или реестр OS.
Седьмая часть – Диспетчеры объектов и устройств.
Восьмая часть – драйверы устройств.
Слайд 22

Архитектура операционной системы Windows NT/2000/XP. Диспетчер объектов Справочный монитор защиты Диспетчер

Архитектура операционной системы Windows NT/2000/XP.

Диспетчер объектов

Справочный монитор защиты

Диспетчер процессов

Диспетчер виртуальной

памяти

Диспетчер механизмов Plug & Play

Диспетчер энерго-питания

Диспетчер ввода/вывода

Средство локального вызова процедур

Диспетчер КЭШа

Драйверы устройств

Сетевые драйверы

Файловые системы

Ядро OS

Слой абстрагирования от оборудования HAL

Аппаратная часть

Системные сервисы (службы модуля EXEcutive)

Пользовательский режим

Режим ядра

Уровни сервисов OS

Подсистемы рабочей среды

Подсистема POSIX

Подсистема Win32

Подсистема OS/2

Подсистема защиты

Приложение POSIX

Приложение Win32

Приложение OS/2

Процесс регистрации в системе

Слайд 23

Пояснения к архитектуре операционной системы. Пользовательский режим. Большая часть приложений, запускаемых

Пояснения к архитектуре операционной системы.
Пользовательский режим.
Большая часть приложений,

запускаемых пользователем, работает в пользовательском режиме. Все эти приложения обладают ограниченным доступом к операционной системе, благодаря чему при возникновении неполадок в программе приложения ядро ОС остается надежно защищенным и продолжает нормально функционировать.
Пользовательское приложение работает в рамках изолированного адресного пространства, предоставляемого операционной системой.
При обращении к аппаратным устройствам (принтеру) службами ядра (диспетчером ввода/вывода) запускается соответствующий драйвер.
Службы Windows (например, Task Scheduler, Messenger, Alerter и др.) работают в пользовательском режиме в специальном пользовательском контексте безопасности индивидуального рабочего окружения каждой конкретной прикладной задачи.
Режим ядра.
Процессы, работающие в этом режиме, обладают наивысшим уровнем привилегий. Они работают в одном и том же адресном пространстве и могут напрямую обращаться к оборудованию компьютера, включая такие важные устройства, как центральный процессор или видеоадаптер.
В этом же режиме функционируют драйверы устройств, все системные диспетчеры, модуль Microkernel, все службы модуля EXEcutive, а также системные сервисы уровня абстракции оборудования HAL (Hardware Abstraction Layer).
Слайд 24

Модуль EXEcuteve. Так обозначаются в Windows NT/2000/XP программные компоненты, работающие в

Модуль EXEcuteve.
Так обозначаются в Windows NT/2000/XP программные компоненты, работающие

в режиме ядра.
Эти компоненты включают в себя жизненно-важные службы ОС такие, как управление памятью, вводом/выводом, системой безопасности, механизмами взаимодействия процессов, кэшированием, а также системой управления объектами.
Модуль EXEcutive загружается в процессе начальной загрузки ОС и является частью файла Ntoskrnl.exe.
Модуль Microkernel.
Управляет переключением процессора между выполнением разных потоков, а также обрабатывает системные прерывания и исключения.
Этот модуль синхронизирует работу нескольких процессоров на многопроцессорных аппаратных платформах.
В отличие от остального кода ОС этот модуль никогда не перемещается в виртуальную память, т.к. его компоненты должны иметь фиксированные физические адреса.
Модуль Microkernel также является частью файла Ntoskrnl.exe.
Уровень абстракции оборудования HAL (Hardware Abstraction Layer).
Позволяет ОС работать на аппаратных платформах различной конфигурации и количества процессоров, не требуя ее перекомпилирования.
Обычно HAL разрабатывается производителем аппаратной платфориы.
Модуль HAL находится в файле hall.dll и загружается в процессе начальной загрузки ОС.
Слайд 25

Процессы и потоки. Процесс – это программа, которую можно запустить в

Процессы и потоки.
Процесс – это программа, которую можно запустить

в рабочей среде ОС.
Каждый процесс обладает своим адресным пространством, одним или несколькими программными потоками, а также идентификатором безопасности SID (Security ID), соответствующим учетной записи в контексте безопасности которой этот процесс функционирует.
Поток – это составляющая часть процесса (что-то вроде процесса внутри процесса), т.е. программный код, выполнением которого занят процессор.
В любой момент времени один процессор может выполнять только один программный поток. Переключение процессора между выполнением нескольких программных потоков осуществляется средствами ОС.
Каждый процесс может включать в себя несколько программных потоков. Например, работая в программе Explorer, можно открыть новое окно, для управления этим окном создается новый поток. Это означает, что в системе существует только один экземпляр процесса Windows Explorer, но в рамках этого процесса работает одновременно несколько программных потоков.
Симметричная многопроцессорная архитектура и наращиваемость ОС.
ОС Windows NT/2000/XP обладают встроенной поддержкой многопроцес-сорных систем SMP (Symmetric Multiprocessing). Это означает, что если в системе установлено больше одного процессора, то поток, требующий выполнения, будет выполняться первым освободившимся процессором. Переключение процессоров между потоками осуществит модуль Microkernel.
Слайд 26

Службы и приложения пользовательского режима. В пользовательском режиме работают процессы 3-х

Службы и приложения пользовательского режима.
В пользовательском режиме работают процессы

3-х типов с различным уровнем привилегий.
1. Системные процессы. Это процессы управляющие рабочей средой пользовательского режима: Winlogon (подключение пользователей к системе), Service Controller (сервис подключения служб), Session Manager (диспетчер сеанса). Эти процессы запускаются модулем Ntoskrnl.exe в процессе начальной загрузки и используют учетную запись LocalSystem.
2. Службы Windows. Службы (Alerter, Computer Browser и др.) запускаются процессом Service Controller (файл services.exe) для прикладной задачи. Эти службы функционируют, как отдельные потоки в рамках процесса services.exe и не отображаются диспетчером задач в качестве отдельных процессов.
Большинство служб не использует контекст безопасности LocalSystem.
3. Пользовательские прикладные программы. Т.е. прикладные программы запускаемые пользователем в пользовательском режиме. Каждая такая программа функционирует в рамках своего собственного виртуального адресного пространства.
Процесс ассоциируется с подсистемой рабочего окружения environment subsystem, который принимает от него вызовы, адресуемые API (Application Program Interface) и преобразует их в команды, адресованные модулю EXEcutive.
Для поддержки DOS служит подсистема времени исполнения Сsrss.exe, которая запускается автоматически при формировании вызова.
Слайд 27

Порядок загрузки операционной системы. Загрузка любой операционной системы после завершения операций

Порядок загрузки операционной системы.
Загрузка любой операционной системы после завершения

операций инициализации аппаратных средств предусматривает следующие этапы:
- инициализация загрузчика OS (Boot loader process),
- выбор операционной системы (если предусмотрен выбор),
- повторное сканирование аппаратных средств,
- загрузка ядра OS и его инициализация.
После завершения POST BIOS передает управление на первое внешнее устройство (согласно установленному приоритету), имеющее в буфере данных байт 80h. Считывание следующего байта из этого порта активирует программу аппаратной загрузки OS: т.е. будет выполнена процедура, записанная в начале раздела MBR, которая позволит найти адрес первого активного раздела в таблице разделов (по значению байта 80h), и загрузит следующую за ним команду в табличной записи JMP(xx) на исполнение.
Адрес команды JMP является адресом аппаратного загрузчика NTLDR (для операционной системы Windows NT/2000/XP), IBMBIO.COM (для DOS) или аналогичной программы для других OS (например UNIX, Linux и т.д.).
NTLDR загрузит режим плоского 32-хразрядного адресного пространства и запустит минифайловую систему, совместимую с FAT16, FAT32 и NTFS.
Затем читает Boot.ini в корневом каталоге и предлагает выбор OS к загрузке.
После выбора Windows XP выполняет программу Ntdetect.com, чтобы собрать информацию о всех физических устройствах, подключенных к ЦП.
Затем NTLDR загружает в ОЗУ и запускает ядро операционной системы – программу Ntoskrnl.exe, которая принимает данные сканирования.
Слайд 28

Файлы, необходимые для успешного запуска ОС Windows XP. Процедура запуска системы

Файлы, необходимые для успешного запуска ОС Windows XP.
Процедура запуска

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

Файл Bootsect.dos содержит копию первого сектора раздела альтернативной ОС (в данном случае DOS), аналогично можно построить загрузчики для ОС UNIX и Linux, а затем отредактировать файл Boot.ini:
С:\ BOOTSECT.UNX=“UNIX”
С:\ BOOTSECT.LNX=“Linux”