OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 16 Октябрь, 2025 19:55

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 44 ]  На страницу Пред.  1, 2, 3
Автор Сообщение
СообщениеДобавлено: Среда, 15 Октябрь, 2025 17:34 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 1627
Каким образом устроена кроссплатформенность GUI приложений?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 15 Октябрь, 2025 21:17 

Зарегистрирован: Вторник, 30 Сентябрь, 2025 21:13
Сообщения: 22
>>>> посоветовать не могу
Это лучшая подсказка. Раз сходу не отвергли, значит можно пробовать. А, что получится … Вдруг повезет.

Хочу вернуться немного назад - к топику с 32-мя битами. Знаю, что Вы очень хорошо разбираетесь в процессорных архитектурах. И, на самом деле есть 32-х разрядная реализация для x86. Но, сделанная настолько криво, что лучше считать, что ее нет.

Почему. Кодогенератору для перевода ‘родных’ risc команд (в базе 256 регистров) требуется хотя бы 16 регистров на целевом процессоре. Не придумал ничего лучше, чем задействовать SSE регистры в дополнении к 8 имеющимся. Плюс ассемблера нет, сразу в машинные инструкции. Дальше можно не продолжать. Вы уже представили, что из этого получилось. Да работает. И да, код огромадный. И да, эффективность ниже плинтуса.

Много позже. После экспериментов с WebAssemble и его стековой архитектурой научился регистровый код переводить в стековый. А теперь не знаю, стоит делать попытку № … раз. Или как решил ранее, даже не смотреть в эту сторону ?


>>>> Коллегу arisu, полагаю, будет не бесполезно потеребить

Возможно. Но у arisu и оппонента Олега, запредельный уровень понимания. И то, что считается ими простым и понятным, для меня может оказаться трудно исполнимой задачей. А готовые решения, не знаю почему, но не использую. Хочется самому написать каждую строчку кода.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 15 Октябрь, 2025 21:23 

Зарегистрирован: Вторник, 30 Сентябрь, 2025 21:13
Сообщения: 22
>>>> Каким образом устроена кроссплатформенность GUI приложений?

Реализована собственная графическая объектная библиотечка SML, с набором кастомных (рисованных самостоятельно) визуальных элементов. Библиотечка платформеннонезависима. Точнее состоит из платформеннонезависимой части. И части зависящей от платформы.

Для каждой платформы, зависящая часть своя. Но все они имеют одинаковый интерфейс. А при сборке готового приложения, меняется только имя зависимого модуля в списке импорта. В зависимой части реализуются специфические для каждой платформы особенности. А именно: взаимодействие с клавиатурой, мышью, вывод на экран, таймеры и файловые операции.

Из особенностей. Графика в Mac OS через фреймворк Cocoa, в Linux на выбор X11, или Wayland и windows родное WinApi. Для web браузеров в wasm приложениях - кастомное рисование с помощью api canvas (реализовано в самописных js библиотечках - аналогах dylib, so или dll).


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 16 Октябрь, 2025 18:14 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3837
Очень впечатляет.

Просьба ещё к архиву добавлять номер версии. А то я всё жду апдейты. И на сайте непонятно, когда архив без номера версии, выгрузили вы что-то новое или нет.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 44 ]  На страницу Пред.  1, 2, 3

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2025, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB