Welcome to eComStation.RU site!

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

Frequently asked questions and answers:

eComStation.RU

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

 
 
Отчет: OS/2 совместимое оборудование
Как получить драйверы OS/2 бесплатно

 
Обновление

 
Программы

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

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

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

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

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

 
История (1):

 
(Бонусы)

 
Советы:

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

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

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

 

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

 
Новая eComStation:

 
Будущее: (1)

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

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

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

 
Гаджеты

 

Порядок загрузки 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 он выполняет его функции до самого окончания загрузки - устав однако).



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

Обнови рабочий стол eComStation 2.0 до NeoWPS (полезные расширители рабочего стола)

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

Василий А. Сидоров
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? Несколько вариантов

Статьи

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


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

 





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

IBM OS/2 Warp

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

Отчет: OS/2 совместимое оборудование

 
Статьи


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

 

 
Картинка дня: