Unsorted
|
|
|
AD: Upgrade ArcaOS to NeoWPS level
- Install original PNG icons drawed by designer, specialized at OS/2 adornation.
- Install eSchemes 2019 to change colors and buttons on desktop.
|
Development of ACPI driver, beginning
|
TITLE: Development of ACPI driver, beginning
DATE: 2022-12-31 17:39:55
AUTHOR: eCo Software
Please use online translator go to http://translate.google.com and request the translation of http://ru.ecomstation./projects/reviews/index.php?id=321 to your language |
Что такое ACPI?
Итак, вы включаете компьютер, выполняется базовая частичная инициализация.
Дальше вы видите на экране логотип операционной системы - начинается загрузка ОС.
Операционная система должна в удобной форме получить список всех
устройств, датчиков, тумблеров - всех возможностей компьютера.
Настроить скорость работы, шум вентиляторов, яркость экрана, ..
Именно для этого и существует ACPI.
Через этот интерфейс система получает полное описание компьютера в виде дерева
устройств и методов (функций) для воздействия на эти устройства
(их включение-выключение, изменение состояния, изменение параметров, ..)
ACPI отвечает за управление питанием и засыпание-просыпание (suspend/resume).
Сложность проекта
Мы вошли на неизведанную территорию, "Пробирались в темноте".
В первые годы фронт работы был безграничным:
- Нужно было заниматься и загрузкой ОС на сотнях разных компьютеров,
- и suspend/resume ноутбуков (засыпание-просыпание)
- и обработкой событий ACPI
Разработка драйвера ACPI для OS/2 осложнялось следующими факторами:
- исходные коды ядра OS/2 - недоступны.
OS/2 создавалась в 94-ом, 96-ом году, а в 2005-ом году ПК компьютеры уже значительно изменились.
- исходные коды большинства драйверов были недоступны.
базовых драйверов, драйверов устройств.
- сколько-то месяцев велась отладка suspend-resume.
На некоторых компьютерах оно работает, на других - нет.
- велась борьба с Embedded controller.
- реализация throttling поддержки.
- Огромный вал баг-репортов:
например, было получено 500 - 1000 баг-репортов.
100 - 200 баг-репортов мы прорабатывали в несколько заходов.
10 - 20 тестеров помогали с отладкой в течение десятков часов.
Материнские платы: а BIOS, ACPI точно готов?
Отдельно нужно напомнить,
- считаем, что в те годы, 2005 - 2008 ..
производители ноутбуков, производители мат.плат
еще отлаживали ACPI поддержку в своем оборудовании.
После выпуска любой матплаты - посмотрите - выходило по 10 обновлений биоса
(получается, что и ACPI таблицы могли обновлять).
- также к каждому компьютеру прикладывался свой ACPI драйвер на CD.
(chipset driver + свой видеодрайвер), - т.е. считаем, что в Windows всё работало с костылями.
(этот аргумент спорный, хотя вспомните про Thinkpad T60).
Влияние на все внутренности OS/2
Разработка ACPI драйвера ре-анимировала OS/2 изнутри.
- пришлось обновлять, переписывать 10-20 системных драйверов. (клавиатура, мышь, com-порт, таймеры, ..)
- пришлось вносить взаиомодействие с ACPI в сетевые Ethernet драйверы
- взаимодействие с видеодрайвером Panorama VESA
- драйвер SATA, IDE контроллеров Danis506, OS2AHCI
- Пришлось пере-писывать USB драйверы, т.к. часто загрузка ОС останавливалась на USB. (исходные коды не были доступны)
- пришлось исследовать системный загрузчик, написать загрузчик заново (исходные коды не были доступны)
- пришлось исследовать поведение ядра OS/2 (исходные коды не были доступны), восстанавливать исходные коды ядра.
Таким образом, "каменный дворец OS/2" ожил и началось движение.
Ограниченный бюджет:
- В первые годы мы работали без зарплаты.
Заключались короткие договоры, сделки. Есть список задач на месяц - удалось согласовать вознаграждение такое-то.
А раз проект был сложным, то все сроки сбивались,
для достижения цели приходилось работать не 1 месяц, а 2 месяца или 3.
Итого, разработчик мог работать за 200$ в месяц, за 500$.
(сравните со своей зарплатой. нам нужна была такая же зарплата, как у вас, 3000$ - 5000$)
Режим работы: 24/7, в 03:00 часа ночи, в 10:00, .. в 16:00, ..
Далее, обозначение:
N-1: [Это неточная информация. у нас 0 информации о том, что там происходило на самом деле.
это конфиденциальная информация. мы никогда не обсуждали этот вопрос с кем-либо]
- Вообще, доходы от продажи eComStation уходили в 1 направлении: в бюджет компании Mensys. [N-1]
С другой стороны, наверное, Mensys должна была выплачивать огромные суммы по договорам с корпорацией IBM. [N-1]
В основном, разработка eComStation велась на спонсорские средства.
Да, естественно, часть заказов, которые мы выполняли, оплачивала Mensys.
Т.е. Mensys ре-инвестировала живые деньги в разработку eComStation.
Проект eComStation - не было отдельным отделом, не было отдельной компанией. [N-1]
Даже Roderick Klein и Joachim Benjamins (управляющие проектом eComStation со стороны Mensys), не получали % от продаж eComStation. [N-1]
Они в течение рабочего дня выполняли в Mensys работу по продаже софта,
отвечали на телефонные звонки, письма общих клиентов Mensys. Параллельно вели работу над eComStation. [N-1]
- Например, у нас не было возможности покупать оборудование.
Вся отладка выполнялась удаленно.
В первый момент было куплено два новых ноутбука с Core 2 Duo процессорами.
Сейчас, если посмотреть назад, то надо было прокручивать, например, по 20-30 матплат в
месяц. У нас было 0.
- Никаких гарантий, что нам оплатят разработку, не было.
Срок жизни проекта: 30 дней. Поэтому качество кода было рассчитано на 30 дней.
Гибель была неминуема
К 2013 году накопилось много проблем:
- мы потеряли нашего украинского разработчика.
[будет открыто после 2030-го года]
- Кризис 2008 года повлиял на компанию Mensys,
к 2013-ому она потеряла eComStation.
- Общая усталось от работы над OS/2 за 10 лет.
Измотанность в проекте ACPI, т.к. разработка велась на истощение несколько лет.
Какое влияние ACPI оказало на OS/2 в итоге?
- Простые пользователи OS/2 получили поддержку мульти-ядерности.
До этого, (давайте считать так), что в OS/2 она была только для настоящих дву-процессорных серверов.
(А главное, требовала покупки доп.лицензии за сотни баксов).
- началась борьба за экономию энергии (холостые циклы, если нет нагрузки).
До этого, считаем, что было недоступно (было примитивным).
- Была собрана огромная база данных о поддерживаемом оборудовании.
http://os2.guru/hardware
Следующий разработчик
С 2016, 2017 года разработку ACPI продолжает другая компания
- Мы полностью признаем профессионализм разработчика David Azarevich,
т.к. он уже имел опыт разработки серьезных программ, драйверов
для какого-то оборудования.
- Для David английский язык - родной.
значит корректно интерпретирует техническую документацию на ACPI, на OS/2, на x86 компьютер.
- новому разработчику уже стали доступны исходные драйверы всей этой эко-системы.
- уже всё поле ACPI и OS/2 было вспахано. Все исследования проведены.
- Уже можно было сформулировать более чёткие цели.
Отказаться от широкого бесконечного фронта, а сконцентрироваться на
определенных направлениях. На отладке последних проблем.
- Часть функциональности ACPI драйвера наверное была отброшена (?)
- Уже выделяются другие бюджеты, гарантированная оплата труда на несколько месяцев вперед.
- по какой-то причине у нового разработчика была возможность
отлаживать драйвер на десятках разных мат.плат.
Наши ошибки
- Mensys совершили ошибку, что начали общаться с разработчиком напрямую.
- разработчик должны знать англ.язык на 100% для чтения техн.док.
- не было бюджета на тестовое оборудование.
- нельзя было обслуживать любые компьютеры.
надо было сконцетрироваться на 1 модели компьютера
(были попытки в этом направлении), но надо было принять жесткое решение.
- Ошибка eCo Software: просто перерабатывали баг-репорты.
А нужно было всё отбросить и вернуться к исправлению базовых дефектов.
Заключение
Никто другой не мог выполнить этот проект в те годы.
Кто-то должен был "пройти по минному полю и отдать свою жизнь, чтобы спасти остальных".
------
ACPI проект реанимировал OS/2
и дал импульс, который мы чувствуем и сегодня, в 2025-ом году.
1)
2)
3) собрана огромная БД с отчетами
про оборудование
4) утилиты всякие: ACPI Manager, widget Temperature, ..
--------
таким образом,
получается, что eCo Software работала в основном за идею.
на благо OS/2 сообщества.
Более того, основная часть дохода была опять вложена в OS/2,
вот почему мы смогли создать еще несколько крупных
программных продуктов с 2005 по 2015.
Test the program:
|
eSchemes - change the colors and buttons on the desktop.
|
Comments:
|
|