Запустить всё железо

Devices programming
  • (если что - я не программист. для меня даже ассемблер - это язык слишком высокого уровня)

    лично мне идея VHDL-проекта (ака Колибри-В) очень нравится.
    этот проект давно назрел, даже перезрел (удивительно что никто до сих пор такую шизу не перехватил)
    ну и он мог бы реально вдохнуть в Колибри вторую жизнь.

    никаких принципиальных сложностей здесь я не вижу
    организационные сложности - да, есть (как всегда) - время и деньги.
    мне моего времени осталось совсем немного.
    и стоит оно ОЧЕНЬ дорого.
    даже по калифорнийским меркам.
    с другой стороны - а чего бы и не тряхнуть стариной напоследок?
    Евангелие от Иоанна: стих 1

    Code: Select all

    ; В начале было Слово:
    B32:        mov     ax, os_stack       ; Selector for os
    [/size]
  • Вы там придумывайте сами, сколько захотите. На данный момент мне нужен программист для реализации моего проекта по частям. Со своими КИЛО сами там мутите. А я выполнял и буду выполнять проекты по договорным суммам, намного проще. Тем более, это НЕ ЗАКРЫТЫЙ ПРОЕКТ, а ОС будет выложена для всех. Как-то так.
    Я тут не зелень вообще в программировании так-то давненько и меня нельзя, так скажем, плюнуть и растереть!
    -
    Дополню. ЧТО-НИБУДЬ придумывать, буду я сам лично, а не кто-то самый умный.
    СКОРЕЕ ВСЕГО! после установки мессенджера в код ОС займусь языком VHDL. Если сей язык не понравится, то перейдём на разработку чего-то своего. Пока, по этому вопросу ничего не могу написать.
  • uran235 wrote:...Дополню. ЧТО-НИБУДЬ придумывать, буду я сам лично, а не кто-то самый умный..
    вот это правильный подход.

    а если даже будут ошибки, что шансы, что кто то поправит - гораздо выше чем с 0
  • Мне требуется дружественный программист единомышленник. А то, что информация 0 это тоже хорошо, то это всё решим.
    Порылся в VHDL и в аналогичных языках.
    Дело в том, что ЭТО применяется для программирования и проектировании (элементная база) микросхем. Пример. У нас есть сетевуха и мы имея некоторую спецификацию, должны располижить и подключить микруху так, что-бы это всё работало. Ну в курсе, уровни напряжений, алгоритмы работы сигналов и прочая муть. Вот для чего эти языки, то есть, функция этих языков как противоположная. Но мы ведь не собрались микрухи разрабатывать для сетевой карты, а нам нужен драйвер.
    Пошёл дальше копать. Но ясно, что тот, кто из кустов выкликнул, был явно не прав. Но камни не бросаю, лишь дало повод думать в верном направлении.
    Нам нужен авто-механизм разработки драйвера. Ручками это разрабатывать куда сложнее.
    Тут нужно больше вникать в суть железа. И по отдельности. Видимо есть есть различные параметры логики. Ну ведь железо идёт по пути увеличения частоты, логических последовательностей и напряжений. По этому есть разброс параметров, из которых получается, что старое железо уже не может работать с всё более и более мощными процессорами / памятью.
    В этой связи, можно установить некоторые варианты параметров функций, с описанием языком. Далее есть мысли, проводить автоматические пере-запуски системы, покуда не пойдут нормальные сигналы с оборудования. (их могут быть сотни!) Как только, пойдут нормальные потоки, параметры кода записываются в файл-лог. Что-то навроде искусственного интеллекта, но методом перебора значений параметров. Думаю, что как-то так. Для такого кода отладки потребуется много добавочного кода "датчиков" потоков, таймеры ошибок, обращение к коду перезагрузки.
    Плохо, что например операционная система, например Винда, не может записывать параметры и логику работы железа. (так бы, можно было просто снять все спецификации её работы) Если параметры можно подобрать, то с логикой будет сложнее. Вобщем, нужно думать.
    Можно включить в логику возможные, самые прогнозируемые комбинации.
    Last edited by uran235 on Wed Apr 17, 2019 12:37 am, edited 1 time in total.
  • uran235 wrote:Я сам тут неделю всего. Я иду как за старшего, сам не программирую.
    В основном, я определяю пути программирования.
    JFYI, uran235 забанили вчера в группе ReactOS в VK за неадекватное поведение.
    Из хаоса в космос
  • 235U
    1. Не надо начинать общение с конфликта - тогда у власть имущих не будет повода отправить тебя в бан.

    2. Да, деньги это неплохой стимул.
    Кое-какие работы в Колибри выполнялись за определенный гонорар заказчика.
    Но всё-таки основной код проекта клепался на голом энтузиазме,
    при этом единственным стимулом бесплатного творчества было осознание того, что так будет правильно.

    3. Однако у каждого творца своё мнение о том, как надо делать хорошо и правильно.
    Посему идеальным вариантом былр бы когеррентное соответствие твоей хотелки с его задумками.
    Убеждай, дискутируй, стимулируй.
    Это лучше чем переходить к диктату и оскорблениям
  • Kernel Developer СОВЕРШЕННО ВЕРНО!
    Зачем меня вот тут оскорблять, когда я пришёл для добра и что-бы давать народу защиту, даже пусть так сказано, что с помощью своих Вин-программ.
    -
    Вопрос так скажем не параллельный, по ходу, потребуется сперва упереться рогом в одну их проблем современности :-) эмулирование т.е. запуск кода под Колибри.
    Кто посоветует (в теме) что на данный момент использовать для запуска программы написанной на MSVC++ в Колибри?
    Читал тут на сайте тему http://board.kolibrios.org/viewtopic.php?t=956&start=30
    Однако там последнее сообщение 5 лет назад.
    Времена-то изменились!
    Забыл про требования. Требуется, что бы среда эмуляции или библиотеки должны быть с открытым кодом и возможностью собственной пере-сборки.
    Иначе мы не можем гарантировать, что данные передаваемые программой не могут попасть к кому-то ещё, любым третьим лицам.
    -
    Самая последняя пришедшая мысль - портировать код мессенджера Prival (исходники имеются, MSC++ компилятор) на ОС-Колибри, т.е. в код ассемблера с функциями Колибри
    Бинарник мессенджера Prival.exe имеет размер - 1,2 МБ
    Как думаете, это вообще много работы?
  • насчет мессенджеров и С++ не знаю и особенно не интересуюсь - это к программистам.
    моя личная хотелка - решить проблему с драйверами. раз и навсегда.

    это хорошо что ты поинтересовался что такое VHDL и для чего оно вообще кому-то нужно.
    но до конца, похоже, так и не понял.

    объясняю на более доступном уровне:
    1. любое устройство ввода-вывода должно обеспечивать обмен определенной информацией между ОС и пристёгнутым к компьютеру железом.

    2. этот обмен должен соответствовать некоторому протоколу, известному и корректно поддерживаемому с обеих сторон.

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

    4. со стороны железа - протокол прошит в контроллере устройства, а его параметры - в конфигурационных регистрах. В прошлом веке "контроллером устройства" обычно являлся микроконтроллер, командующий своим железом по специальной микропрограмме

    5. в наши дни практически все железо управляется бортовыми ASIC или FPGA-контроллерами, функции которых прошиваются прямо в матрице логических вентилей чипа (так гораздо дешевле и эффективнее) .

    6. Карта прошивки логической матрицы - это уже совсем не программа в обычном "программёрском" понимании. Её проектируют не на языках программирования, а на специальном языке описания схем - обычно это VHDL или (реже) Verilog

    ----------
    итак, имеем альтернативу:
    - либо клепаем драйверы для всех существующих в природе периферийных устройств PC (почти все из них - с закрытой спецификацией),
    - либо делаем свою VHDL-прошивку под свой типовой драйвер
    Евангелие от Иоанна: стих 1

    Code: Select all

    ; В начале было Слово:
    B32:        mov     ax, os_stack       ; Selector for os
    [/size]
  • Нельзя сделать универсальную прошивку для всего железа, другими словами, нельзя написать драйвер с постоянной логикой приёма / передачи сигналов. Другими словами, для одного и того же устройства + ОС существует только одна логика работы. Ну там плюс минус мелкие отклонения в версии.
    Дело усугубляется тем, что если мы программно задумаем менять логику ВВОДА / ВЫВОДА, прямо в процессе работы уже запущенной ОС, то у нас скорее всего, ничего не получится, так как ОС не даст. Файл-то драйвера у нас один! А в процессе работы невозможно изменить или даже подменить драйвер! Это не даст сделать запущенная ОС.
    Таким образом, требуется поступить как я ранее писал. - Создавать автоматизированный драйвер в некоем комплексе логического пространстве. Можно было это громко назвать само-настраивающая ОС или само-отладочная, но просто назвать вариантный способ перебора при запуске. От фонаря получается, Автомат - ВСпЗ
    Работа такая.
    При очередном запуске, в файл-логе переменную увеличиваем на единицу. Для того, что-бы при следующем запуске применить вторую логику.
    Применить код регистрации успех / ошибка драйвера.
    При ошибке драйвера, необходимо специальным кодом собрать новый файл драйвера с другими параметрами ввода / вывода. Чтобы при следующем запуске, его запустить. + удалить ошибочный файл драйвера.
    Предусмотреть код инициирования перезагрузки ПК.
    Далее - второй запуск и загрузка оборудования со вторым драйвером.
    Ясно, что при каком-то запуске будет найден успех драйвера. Возможно потребуется сотни перезагрузок.
    При успешном запуске оборудования - сохраняем его логическую конфигурацию!
    Данная карта драйвера и будет использована для написания кода файла драйвера.
    Не исключено, что можно устанавливать флаг УСПЕХ при минимальных сигналах, которые будут определены перед падением. Это будет означать, что логика находится очень близко от искомой, правильного кода драйвера.
    Прошу не кидаться камнями, ну если кому-то не понравилось, предложите свой вариант "автомата".
    -
    Мнение. Такое возможно реализовать только с крайне шустрыми ОС, в отношении перезагрузки, как например КолибриОС.
    -
    А по системе Реакт, Светка уже давно высказалась ВК. Скорее всего, эта система не имеет будущего. Почему такие выводы? Функционал похожий на Вин-NT но гораздо хуже становятся программы. Главное, что у нас направление работы - БЕЗОПАСНОСТЬ. Сильная уязвимость, а антивирус туда вряд-ли кто будет писать, достаточно мощный. Короче, вывод - технический СМЕРТНИК по безопасности. Я по поводу такого ПАС! Это не наша тема.
    -
    Если тему безопасности развивать. Если не удастся портировать код в Колибри, то останется только единственный выход портировать код на Линуксы. Плюс этому, так как это сделать намного более легче! Получаем такой ощутимый плюс, что уязвимость Линуксов наверно в сотни раз меньше, чем все Виндовые ОС. Ну мы и стремимся к безопасности, вернее разрабатываем надёжное ПО для пользователей.
  • Почистил немного тему, а uran235 определил бан на неделю.
    to infinity and beyond
  • uran235
    слишком много слов
    - ты очень похож на очередную реинкарнацию приснопамятного Максимыча.

    о твоей последней реплике:
    - если длинная сентенция начинается с утверждения типа "летят 2 крокодила..." -
    то заканчиваться она может как угодно.

    стандартизировать базовое железо + драйверы в рамках ОС можно.
    но только если есть базовое железо.

    в давние-давние времена (когда я с юношеским восторгом ещё считал себя программистом)
    фирма IBM установила открытый стандарт IBM PC XT/AT,
    рудименты которого до сих пор поддерживаются ядром Колибри

    (почти все драйверы для стандартных устройств PC умещались в двух коротких файлах MS DOS)
    Евангелие от Иоанна: стих 1

    Code: Select all

    ; В начале было Слово:
    B32:        mov     ax, os_stack       ; Selector for os
    [/size]
  • art_zh wrote:Leency наконец стал программистом?
    Объясни, пожалуйста, что имел ввиду этой фразой.
    Из хаоса в космос
  • Leency wrote:
    art_zh wrote:Leency наконец стал программистом?
    Объясни, пожалуйста, что имел ввиду этой фразой.
    этой фразой я выразил своё искреннее восхищение
  • Leency wrote:
    art_zh wrote:Leency наконец стал программистом?
    Объясни, пожалуйста, что имел ввиду этой фразой.
    Все просто :wink: :
    - пишешь программы -> программист
    - хорошо пишешь -> хороший программист
    - зарабатываешь этим на жизнь -> профессиональный программист

    Все остальное - от лукавого....

    PS. Код у тебя как минимум неплохой. Хотя учебники нужно всем читать бесконечно
  • Who is online

    Users browsing this forum: No registered users and 5 guests