[[ header START ]]

Welcome to OS2.GURU site! (eComStation.RU)

Select your language: Russian English Deutch Spanish Italian Portuguese Czech Polish French

Frequently asked questions and answers:
telegram

Форум обсуждение

telegram

Send message

telegram

[ +7-981-8529467 (Санкт-Петербург)

telegram

t.me/os2_guru

eComStation.RU


ru · en · de · es · it · pt · cz · pl · fr
OS/2 - это совершенно другая операционная система для PC (ArcaOS, eComStation, IBM OS/2 Warp)
Программы, новости, статьи, поддержка пользователей, оборудование, вопросы и ответы.
 
[Что такое OS/2?  Новости  Установка  Обновление  
 
 
Применение  Будущее  Сообщество  Проекты  

eCo Software
не получает вознаграждение
из США

[Как заработать в OS/2?

Как купить OS/2 дискету?

Идеи для фанатов OS/2

*

 
Обновление

 
Программы

 
(Санкт-Петербург)

 
Преимущества (1)

 
Разработчику (1)

 
(Пайпы программ)

 
Компании: (1)

 
История (1):

 
(Бонусы)

 
Советы:

 
(Барьеры и решения)

 
Технологии: (1)

 
(Применение в науке, лаборатории, ..)

 

 
Готовые решения:

 
Новая eComStation:

 
Будущее: (1)

 
(Ссылки на другие сайты)

 
(Картинка дня)

 
Артефакты OS/2

 
Гаджеты

ArcaOS 5.0 Русская версия
Пакет русификации ArcaOS 5.0 OS/2 давно доступен. Поддерживается любая версия: 5.0, 5.0.1, 5.0.2.

eCo Software может выпустить и другие пакеты (Немецкий, Голландский, Бразильский Португальский, Испанский, Шведский и т.д.)

Порядок загрузки OS/2


TITLE: Порядок загрузки OS/2

DATE: 2004-01-18 03:21:36

AUTHOR: Pavel Shtemenko

Несмотря на то, что OS/2 существует десятилетия, споры на тему "В каком порядке происходит загрузка?" по прежнему продолжаются. Статья частично отвечает на этот вопрос.

Этапы большого пути

При разработке загрузчика с JFS, я, естественно, пользовался выводом протокола загрузки. Имена файлов, которые требовало ядро, также попадали в этот лог - благодаря ему можно судить о порядке загрузки. В основу положена аксиома - "для того чтобы драйвер загрузился, его файл сначала нужно вычитать с диска". Отдельно подчеркиваю, речь идет о загрузке с JFS.

Первый этап

OS/2 загружается в три этапа. Все три этапа могут быть совершенно разными в зависимости от того, с какого устройства происходит загрузка. Итак первый этап - так называемый bootstrap (и то что его производит, называют blackbox). Для диска - это то, что записано в бутблоке, для сети - то что записано в ПЗУ удаленной загрузки.

От этого этапа требуется весьма немного: загрузить OS2LDR и передать ему управление, сообщив при этом адрес, с которого загружен модуль, который должен будет обеспечить выполнение второго этапа (кто интересуется конкретикой рекомендую читать ifs.inf). Дальше OS2LDR "растыкивает" по всем углам "разные поддержки всего чего не попадя" и загружает OS2KRNL в память. Окончание этого этапа знаменует передача управления ядру OS2KRNL. Итак, тут мне разногласий в загрузке определить не удалось и выглядит она так:

 OS2LDR.MSG
 SWAPPER2.DAT
 OS2LDR.MSG
 OS2KRNL
 OS2DUMP
 OS2DBCS.FNT

Второй этап

На этом и всех последующих этапах, загрузкой управляет исключительно OS2KRNL. Вот с этого этапа уже и можно рассматривать порядок загрузки с CONFIG.SYS. Итак, по материалам следствия происходит поиск следующих файлов (перечисление идет в порядке запросов):

 ALTF2ON.$$$
 ARCHBASE.$$$
 OS2VER
 CONFIG.SYS
 KDB.INI
 OS2LOGO
 OS2NOREV.$$$
 RESOURCE.SYS
 PREVIOUS.DAT
 CLOCK01.SYS
 SCREEN01.SYS
 KBDBASE.SYS
 ISAPNP.SNP
 PNP.SYS
 вычитка снуперов 

Дальше уже идет вся загрузка в соотвествии с CONFIG.SYS, кроме некоторых интуитивно понятных случаев:

 
 IBMKBD.SYS
 CHKDSK.SYS
 IBM1FLPY.ADD
 IBM1S506.ADD
 XDFLOPPY.FLT
 IBMATAPI.FLT
 IBMIDECD.FLT
 OS2DASD.DMD             (здесь начинаются интуитивно понятные случаи)
 OS2LVM.DMD

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

Третий этап

Он знаменутся проверкой, на месте ли OS2LDR (хотя куда ему с подводной лодки деться на локальном компьютере...) и загрузкой файла COUNTRY.SYS. Далее, процесс загрузки уже перестает быть однозначным на некоторое время, т.к. уже могут работать разнообразные DLL, итак в моем случае последовательность оказалась такой:

   COUNTRY.SYS
   VIOTBL.DCP
   KEYBOARD.DCP
   DOSCALL1.DLL
   SESMGR.DLL
   DOSCALL2.DLL
   BMSCALLS.DLL       ( три раза  )
   DEV\MOUSE$ 
   JFS.IFS            

Далее идет все в соответствии с CONFIG.SYS, то есть все device= и ifs= в том порядке, в каком они следуют в CONFIG.SYS.

Всем желающим детально ознакомится как проходила загрузка, предлагаю скачать лог загрузки.

Замечания:

  1. В данном случае JFS.IFS идет первой, потому дальше я уже ничего не вижу в своем логе, но зато по AltF2 уже все замечательно видно кроме DLL
  2. Если грузимся с устройства "1:", то драйверы IFS грузятся в порядке следования их в config.sys, если не с "1:", то лично у меня первым грузился именно JFS.IFS.
  3. Окончательным является только прилагаемый лог (в тексте статьи что-нибудь может быть пропущено).
  4. Если кому-то действительно хочется узнать порядок загрузки до самого старта startup.cmd, могу предоставить загрузчик для FAT32 с отладкой (в отсуствии ifs=fat32.ifs он выполняет его функции до самого окончания загрузки - устав однако).



Попробуй программу:

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

Комментарии:

Василий А. Сидоров
2004-01-19 10:55:55

А если сопоставить порядок загрузги dll с импортами из других модулей?

Pavel Shtemenko
2004-01-19 10:59:43

п.4 ?

Василий А. Сидоров
2004-01-19 16:08:46

Хочешь взвалить тяжёлый девелоперский труд на хрупкие пользвательские плечи?

Pavel Shtemenko
2004-01-19 16:11:35

Нуууу, по особым просьбам трудящихся могу снять и с загрузки FAT32 без ifs=fat32.ifs в конфиге ;-)

Василий А. Сидоров
2004-01-19 16:17:42

:)

Алексей Тимошенко
2004-08-02 13:08:49

У меня вопрос.

Что происходит после загрузки последнего DEVICE и перед выводом накопленных сообщений? В этот момент очень активно работают винты (несколько десятков секунд).

Eugene Gorbunoff
2005-06-18 12:39:57

Еще одна статья: [url] ->

"III. Последовательность загрузки OS/2"

Прокомментируйте эту статью (напоминаем, автор работал над текстом несколько недель, уважайте мнение других).


Ваше имя:

Ваш E-Mail:

CODE:
......

  

Ваш комментарий:


eComStation 2.0 создана для работы на современных компьютерах (i3/i5/i7, Core Duo, AMD X2), но будет работать и на компьютерах, купленных 5 лет назад. Что нового в eCS 2.0?

Статьи

Операционная система
Программное обеспечение
Оборудование
Для разработчика
Разное
Колонка редактора


Готовая eComStation на SSD диске

 





Последний активный опрос: Какая высота барьера RPM?

[Google]

IBM OS/2 Warp

 
Обучение новичков

Списки протестированного OS/2 оборудования

 
Статьи


   
  Почему eComStation?
Возможности
Особенности
Применение
Ролики и скриншоты
   eComStation для
для бизнесменов
для студентов и инженеров
для продавцов компьютеров
сообщество пользователей
   Разработчик
Распространить программу
Описание API, библиотеки
Начать новый проект
Конкурсы
   Программы
Он-лайн каталог
Выбрать через eCo Market
   Служба поддержки
Отправить вопрос
Купить eComStation
Вопросы и ответы
Обучение новичков
 
 
© 2001 - 2021 eCo Software, All rights reserved
Сибирский Медведь технологическая компания
eComStation Serenity Systems International • OS/2 Warp IBM Corporation • ArcaOS Arca Noae