Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Процедура запуска прикладных программ




Понятие о функциональном контроле РС

Контроль функционирования IBM-совместимых РС производится тремя способами:

1) контроль при включении и загрузке ОС;

2) самоконтроль основных узлов схемы РС;

3) проверка, с использованием внешних (загружаемых) тест-программ.

Самоконтроль способны выполнять узлы и устройства РС, имеющие собственное микропрограммное управление, такие как CPU, FPU, контроллеры HDD, KBD, видео-контроллер и некоторые другие интеллектуальные периферийные устройства. Самоконтроль осуществляют специальные тест-микропрограммы, зашитые в ПЗУ микропрограмм этих узлов.

Запускаются эти тест-микропрограммы либо при инициализации этих устройств во время загрузки операционной системы, либо автоматически, в режиме простоя (Ti-Idle) этих устройств. Так микропроцессор CPU i386 и старше, имея два специальных регистра самодиагностики TR6 и TR7, и микропрограмму самоконтроля, запускает режим самодиагностики по заднему фронту сигнала RESET, при условии, что сигнал BUSY=L (нижний уровень), т. е. CPU свободен в течение 78 периодов CLK2. Самодиагностика видеоконтроллера и контроллера KBD запускаются специальной командой диагностики от CPU, а самодиагностика контроллера HDD запускается при его инициализации POST-программой, или другими специальными процедурами.

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

Следует отметить, что все контроллеры проходят проверку их наличия и исправности, при их инициализации, но эта проверка далеко не полная и назвать ее тестированием нельзя.

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

Для запуска прикладной программы нужна ОС (DOS), находящаяся в оперативной памяти компьютера, но если компьютер был выключен, то нужно предварительно загрузить в ОЗУ саму операционную систему. Это происходит следующим образом:

1. После включения питания PC, схемы контроля уровня питающих напряжений, находящиеся в БП (Hard Ware) выдают сигнал Power OK (Power Good).

2. По сигналу Power OK, ИМС интервального таймера (или СБИС чип-сета с этим таймером) вырабатывает сигнал RESET (приведение АПС в исходное состояние).

3. Сигнал RESET, после сброса CPU, FPU, контроллеров, кэш, регистров и т. д., своим задним фронтом запускает в работу CPU.

4. CPU вырабатывает обращение к ROM BIOS по адресу 0FFFh (первый адрес POST-программы); больше он самостоятельно ничего делать не может, кроме как выполнять инструкции (машинные команды), содержащиеся в объектном модуле исполняемой программы.

5. Проверив флаг рестарта ("холодный" старт или "теплый" рестарт), BIOS запускает всю (при "холодном" старте) или только некоторую (при "теплом" рестарте) часть POST-программы самоконтроля Hard Ware РС.

6. Если POST-программа выполняется неверно, то BIOS формирует и выводит на монитор видео-код обнаруженной ошибки (если видеоподсистема исправна) или аудио-код ошибки, если вывести код ошибки на дисплей нельзя из-за того, что видеосистема еще не проверена или неисправна.

7. Если POST-программа выполнилась, BIOS формирует для CPU команду чтения загрузочного сектора с FD (дисковод А:), привода CD или HD (дисковод С:).

8. Если в дисководе А: или на CD-дисководе находится системная дискета или компакт диск (первый сектор – загрузочный) и дисковод готов, то загрузочная запись с дискеты переписывается в ОЗУ и управление передается программе начальной загрузки DOS (IPL2), находящейся в BOOT-секторе загрузочной дискеты или CD-диска.

9. Если дисковод А: и CD-дисковод не активны, то формируется обращение к диску С: (HDD), откуда считываться Master Boot Record аналогично FD, и управление передается программе начальной загрузки DOS – IPL1. Впрочем, порядок опроса дисководов для загрузки операционной системы может быть по желанию пользователя изменен в настройках BIOS, с помощью утилиты SetUp.

10. Программа IPL загружает ядро DOS (ее резидентную часть) с диска – в ОЗУ и передает ей управление. Это ядро составляют файлы IBMBIO.COM и IBMDOS.COM (если DOS версии IBM) или IO.SYS и MSDOS.SYS (если DOS версии Microsoft), или два других аналогичных по функциям файла для других версий DOS, а также файл командного процессора – COMMAND.COM. Назначение последнего – дешифрация и исполнение системных команд, вводимых оператором в командной строке или записанных в конфигурационных файлах CONFIG.SYS и AUTOEXEC.BAT и других пакетных командных файлах.

11. Теперь управление передается самой операционной системе, точнее ее файлу IBMDOS.COM. Файл IBMDOS.COM отыскивает в корневом каталоге системного диска конфигурационные файлы CONFIG.SYS и AUTOEXEC.BAT и, используя имеющиеся в них системные команды и параметры, настраивает универсальную BIOS под ее требуемую программную конфигурацию. При дальнейшей работе, файл IBMDOS.COM обслуживает периферийные устройства, не поддерживаемые стандартной ROM BIOS. Если файлов CONFIG.SYS или AUTOEXEC.BAT нет, или в них не заданы параметры настройки универсальной DOS, то IBMBIO.COM оставляет настройки, имеющиеся в BIOS по умолчанию.

12. IBMDOS.COM реализует основные функции DOS, поддерживая промежуточный уровень обслуживания операций ввода-вывода, большая часть которых используется программами более высокого уровня.

13. Файл COMMAND.COM обрабатывает вводимые команды DOS, определяя дальнейшие действия компьютера.

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

15. Если в корневом каталоге имеется файл AUTOEXEC.BAT, то исполняются по-очереди все содержащиеся в нем системные команды запуска прописанных здесь служебных (в том числе и диагностических, если они прописаны в AUTOEXEC.BAT) программ. Среди них могут быть, например, русификаторы UniScreen, Keyrus, детектор вирусов AIDSTEST, программа поддержки нестандартного формата НГМД – 800, TSR-программы, например поддержки манипулятора "мышь" (MOUSE.COM), кэширования жесткого диска (SMARTDRV), формирования сжатых дисков (DUBLSPACE) и т. п. Наконец, обычно самой последней, прописывается команда запуска оболочки ОС, например, NC, VC, DN и т. п. Оболочка должна быть прописана последней строкой файла AUTOEXEC.BAT, иначе, после того, как ей будет передано управление, все последующие команды этого файла во время загрузки системы выполнены не будут. Они выполнятся только после выхода из оболочки (обычно – нажатием клавиши F10).

16. Если запуск оболочки DOS не был прописан в конфигурационном файле, то DОS выдает на дисплей системное приглашение, позволяющее из командной строки задавать на исполнение системные команды. Если же управление было передано оболочке, то сама оболочка формирует экран дисплея и предоставляет пользователю кроме функций ОС еще ряд дополнительных средств пользовательского интерфейса с использованием функциональных, "горячих" клавишей и т. п.

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

Обобщенный алгоритм работы POST-программы и загрузки операционной системы:

включение питания

БП: сигнал PG (питание в норме) ─> ГТИ, таймер

сигнал RESET ─> CPU:
сброс Рг DS, ES, SS, IP
CS:= 0FFFh (адрес первой команды POST)

CPU выполняет первую команду JMP POST

Блокировка NMI.


Установка флагов CPU.

Тест Зп/Чт регистров CPU:
запись сегмента, верификация записанного.

Тест выполнен успешно? ─ нет ────────────┐
│ │
Тест ПЗУ ROM BIOS: │
подсчет контрольной суммы. │
│ │
Тест выполнен успешно? ─ нет ────────────>│
│ │
Инициализация DMA: │
│ │
- проверка временных операций │
│ │
Тест выполнен успешно? ─ нет ───────────>│
│ │

- инициализация таймера, │
- инициализация регистров DMA, │
- начало регенерации RAM. │
│ │
┌──── да ───── “Теплый” старт? │
│ │ │
│ тест первых 16К ОЗУ: │
│ запись и верификация │
│ фрагментов в RAM. │
│ │ │
│ Тест выполнен успешно? ─────── нет ────────>│
│ │ │
└────────────────────>│ │
│ │

Инициализация контроллера прерываний: │
- установка векторов прерываний, │
- тест контроллера, │
- проверка зп/чт в регистр масок прерываний, │
- маскирование прерываний, │
- проверка, что прерывания замаскированы. │
│ │
Тест выполнен успешно? ─────── нет ─────────>│
│ │
Тест таймера и правильности его счета. │
│ │
Тест выполнен успешно? ─────── нет ─────────>│
│ │
│ │
┌─ нет ─ Видеоконтроллер инсталлирован в CMOS? │
│ │ │
│ Инициализация и запуск видеоконтроллера: │
│ - считывание из CMOS-памяти типа дисплея, │
│ - установка режима видеосистемы, │
│ - тест записи/чтения видео-RAM. │
│ │ │
│ Тест выполнен успешно? ─────── нет ─────────>│
└────────────────────────>│ │
На экране монитора отображается курсор │
│ │
Проверка слотов на установку карт: │
если установлены, то │
- тест записи/чтения на шинах XA и XD │
│ │
Тест выполнен успешно? ─────── нет ─────────>│
│ формирование
│ аудиосигнала
┌──── да ───── “Теплый” рестарт? ошибки SB,
│ │ останов системы.
│ Тест базовой RAM:
│ запись/чтение и верификация фрагментов.
│ │
│ Тест выполнен успешно? ── нет ─────────────┐
│ │ │
│ Тест расширенной RAM: │
│ запись/чтение и верификация фрагментов. │
│ │ │
│ Тест выполнен успешно? ── нет ────────────>│
│ │ формирование
└─────────────────────>│ сообщения типа 200

┌──── нет ───── Клавиатура инсталлирована в CMOS?
│ │

│ │
│ Тест KBD:
│ - программа сброса клавиатуры,
│ - разблокировка клавиатуры,
│ - проверка кода сканирования 0AAh,
│ - очистка буфера клавиатуры,
│ - проверка отсутствия нажатых клавишей.
│ │
│ тест выполнился успешно? ── нет ────────────┐
│ │ формирование
└─────────────────────>│ сообщения
│ типа 300

Установка таблицы векторов прерываний.

┌──── нет ───── “Теплый” старт?

|
│ ┌── Дополнительная память установлена?
│ │ │
│ нет Тест дополнительной памяти.
│ │ │
│ │ Тест выполнен успешно? ── нет ────────────┐
│ │ │ формирование

│ └───────────────────>│ сообщения
└──────────────────────>│ типа 201


Тестирование контроллера HDD:
- проверка инсталляции HDD в CMOS,
- инициализация контроллера HDD,
- проверка состояния перемычек MASTER-SLAVE на HDD.

тест выполнился успешно? ── нет ────────────┐
│ формирование

Тестирование LPT и COM-портов: сообщения
│ типа 700
- тест записи/чтения в регистры LPT-порта,
- тест записи/чтения в регистры СОМ-порта,
- запоминание адресов действующих портов,
- установка времени ожидания для LPT и COM-портов.

тест выполнился успешно? ── нет ────────────┐
│ формирование
Разрешение прерываний. сообщения
│ типа 500
Выдача звукового сигнала (один короткий)

выход из POST-программы и переход к загрузке DOS

|
Обработка прерывания 19h от дисковода А:

┌── нет ── Дисковод А: готов?<────────────────────────────┐
│ │ │
│ Чтение BOOT-RECORD с дисковода А │
│ (цилиндр 0, головка 0, сектор 1) │
│ │ │

│ BOOT-RECORD прочитан? ── нет ─────┐ │

│ │ Сообщение: │
│ Передача управления на IPL2. ОШИБКА ЧТЕНИЯ, ИЛИ │
│ │ НЕСИСТЕМНЫЙ ДИСК. │
┌──│─────────────────────────┘ УСТАНОВИТЕ ДИСКЕТУ │
│ │ В ДИСКОВОД А: И НАЖМИТЕ│
│ └─────────────────────────┐ ЛЮБУЮ КЛАВИШУ │
│ Чтение MASTER-BOOT-RECORD c дисковода С: │ │
│ (цилиндр 0, головка 0, сектор 1) └───────────┘
│ │
│ MBR прочитан? ─── нет ─────────┐
│ │ Сообщение:
│ Передача управления на IPL1. ОШИБКА ЧТЕНИЯ или
│ │ НЕСИСТЕМНЫЙ ДИСК.
└───────────────────────────>│ УСТАНОВИТЕ СИСТЕМНУЮ ДИСЕТУ

Загрузка DOS




Поделиться с друзьями:


Дата добавления: 2014-11-25; Просмотров: 862; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.