Вверх ↑
Этот топик читают: Гость
Разработчик
Ответов: 26158
Рейтинг: 2127
#451: 2013-05-01 00:07:10 ЛС | профиль | цитата
Леонид писал(а):
Можно-ли, хотя бы в принципе, при компилировании вытаскивать нужный код из DLL и встраивать его в свой *.exe

А ты забыл еще про один аспект -- в этих dll можеть быть не нативный код (что чаще всего), а некий набор API функций самой OC. Короче, твоя идея в реалии обречена на полный провал. Помимо того, что из dll надо будет вытянуть коды нужных функций, их надо будет вытянуть из сопутствующих системных dll. А какая там вложенность -- а Х его З, одно может тянуть за собой другое.
карма: 22

0
Ответов: 1731
Рейтинг: 68
#452: 2013-05-01 00:14:34 ЛС | профиль | цитата
nesco,
[flood]
Какие функции принимает dll



Какие функции эта dll тянет


[/flood]
карма: 1

0
Разработчик
Ответов: 26158
Рейтинг: 2127
#453: 2013-05-01 00:24:59 ЛС | профиль | цитата
Cosinuso, и что дальше, я в чем-то был не прав
Нужно ли было мне детализировать инфу, ка это сделал ты, если я просто разъяснил, какие могут быть препятствия при достижении нужной цели. Ты знаешь, лишняя инфа в понимании вопроса иногда очень мешает, вот когда она будет нужна, то это будет совсем другой вопрос. А пока, ты выступил в качестве умника, который влез в разговор непонятно зачем
карма: 22

0
Ответов: 1061
Рейтинг: 22
#454: 2013-05-01 00:36:10 ЛС | профиль | цитата
Леонид писал(а):
чтобы он работал и на "чистом" компьютере без ОС

Ого, а зачем такое чудо нужно? ))

Леонид писал(а):
при компилировании вытаскивать нужный код из DLL и встраивать его в свой *.exe

Это будет намного сложней, чем объединить в один ехе файл программу и дллки!
карма: 0

0
Ответов: 9906
Рейтинг: 351
#455: 2013-05-01 01:04:58 ЛС | профиль | цитата
savt писал(а):
Где профилирование, где тесты (особенно мне нравиться как это сделано в том же Python) и все прочие атрибуты тестирования и поддержания жизненного цикла ПО...

Профилирование, это то, чем я сейчас занимаюсь. Хотя в моем сегодняшнем проекте, в большей степени стыковка относительно большого количества асинхронных процессов.
У меня это не специально получилось. Просто камень так устроен, 12 каналов DMA подключаются почти ко всем устройствам. Указали адрес, "дернули за ручку" - и оно само (аппаратно) полетело: АЦП принимает звуковой пакет, ЦАП может гнать его же на УНЧ, COM-порт передает (или принимает) пакет данных, SPI гонит сектор данных на MicroSD, и т.д. и т.п.. Вплоть до копирования массивов из памяти в память.
По окончании некого процесса возникают прерывания (всего на STM32F105 их 63, кажется).


Естественно, мы занимаемся профилированием отдельных алгоритмических веток. Относительно простых - просто берем, и измеряем осциллографом. Типа один порядок цифровой фильтрации 16-битного сигнала стоит 0.2мкс. А speex-кодирование пакета в 20мс (160 байт пакует в 20) -- целых 12мс.
А вот получение конкретных временных характеристик всего этого взаимопрерывающего безобразия - весьма непростая задача.
Народ (наиболее активный находится в Питере, как мне показалось) на эту тему диссертации пишет, и это далеко не решенная в теории задача.
Не для Питона задача, уверяю Вас.

Для своих внутренних целей я сделал три элемента, моделирующие правильное переключение потоков исполнения. И программку, визуализирующую все это взаимопрерывающее безобразие. Последнее-то, на HiAsm за час делается.
А то народ жалуется: рисуешь «генеральную схему», рисуешь, а обратной связи никакой нет (кнопка Compile недоступна)...
Теперь есть.

savt, Вы у помянули Критически Важные Объекты. По большому счету - все должно программироваться по этим правилам.
И Действительно Критически Важные Объекты не должны тестироваться. Их real-time характеристики (или иные, не менее важные) должны доказываться.
Исходя из аналогичных (предположим, тоже доказанных) характеристик объектов, составляющих схему.

Но это в идеале. До которого всем нам еще не очень близко. Однако отмечу, современные ЯВУ плохо приспособлены к этому доказательному процессу.
Мне кажется, ничуть не лучше, чем HiAsm.
Именно поэтому произносят как мантру, делая круглые глаза и умное лицо: тестирование, профилирование, жизненный цикл...

Внимание, это не я такой наглый, это я просто высказал мнение Классиков (Дейкстра, Хоар, Вирт, ...).


savt писал(а):
Реально Hiasm легок и удобен для разработки небольших приложений, но когда мы говорим о производстве ПО для промышленного применения ...

Наша цель состоит в том, чтобы самый крупный проект программист смог представить как композицию этих самых, мелких.
Без ограничения на полный размер проекта.
Примерно 2-3 десятка элементов на одной схеме - практическое наблюдение.
Даже если технология позволяет делать по 2-3 сотни (например) - этого следует избегать. Если тебя интересует надежность конечного продукта.

А вообще-то, мне случалось беседовать с представителями Computer Science, продвигающими термин Инженерное Программирование.
Впечатление не очень радостное... Они понятия не имеют об инженерной практике -- нарушают элементарные цеховые правила. Грубо говоря, термин придумали, а мнение Инженеров спросить забыли.
Мне показалось, что не им учить меня жизненному циклу разработки... Ну вот показалось мне так.



------------ Дoбавленo в 00.58:
RinniX писал(а):
Ого, а зачем такое чудо нужно? ))

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

Ну например, посылаю пакет по 485-му. Чтобы иметь гарантии помехоустойчивости, я должен активизировать 1-цу на линии, и держать ее не менее длительности одного байта. Это, скажем - 100мкс.
Может это сделать ось?
Нет оказывается. Мы сами вынуждены делать асинхронный таймер.
В общем, не нашли мы таких сервисов в оси, без которых нам жизнь невмоготу. А ресурсы памяти (а у нас их всего 64К) - ополовинивает...
Тем более, что она не очень то и RT, как оказалось

Это я на ней проверял, сколько мне надо времени, чтобы 5000 строк кода стали «своими» (по ответственности)



------------ Дoбавленo в 01.04:
Леонид писал(а):
Galkov, мне никак не дают покоя всякие

Леонид, я тебе один умный вешь скажу..
Не дорос еше Computer Science до таких высот, чтобы один человек написал, а все остальные радостно пользовались.
Все время, кто-то чего-то напильником подпиливает...

В общем, Computer Science - в большом долгу перед рядовыми программистами.
Не виноватый я.

Инжектируй эту долбанную DLL-ку, и не мучайся.
карма: 9

0
Разработчик
Ответов: 26158
Рейтинг: 2127
#456: 2013-05-01 01:07:18 ЛС | профиль | цитата
Galkov писал(а):
Инжектируй эту долбанную DLL-ку, и не мучайся

Galkov, а каже это
Леонид писал(а):
чтобы он работал и на "чистом" компьютере без ОС

что-то, как-то, сомневаюсь я в том, что поможет инжектирование тут. Чтобы все это работало, то все это должно быть инжектировано и не использовать ничего, что связано с ОС. Ой ли, что все это поможет несчастному BASS. Или после такого лихого инжектирования все это превратится в некое подобие укуцанной ОС
карма: 22

0
Ответов: 9906
Рейтинг: 351
#457: 2013-05-01 01:10:20 ЛС | профиль | цитата
Ну так я и говорю - в большом долгу
карма: 9

0
Разработчик
Ответов: 26158
Рейтинг: 2127
#458: 2013-05-01 01:13:20 ЛС | профиль | цитата
Galkov писал(а):
Ну так я и говорю - в большом долгу

Короче, получается, что Леонида само построение системы и ее организация динамических библиотек послало далеко лесом
карма: 22

0
Ответов: 8926
Рейтинг: 823
#459: 2013-05-01 09:20:03 ЛС | профиль | цитата
nesco писал(а):
Леонида само построение системы и ее организация динамических библиотек послало далеко лесом

Так я и не ожидал другого ( а хотелось бы ). Придётся свой супер-пупер в корзину положить
карма: 19

0
Ответов: 1061
Рейтинг: 22
#460: 2013-08-20 23:29:14 ЛС | профиль | цитата
А как компоненты среды делать по типу hub, LineBreak, и т.п.? Сделать-бы компонент ссылку на другой компонент, который выполнял-бы роль "функции" (не в прямом смысле), которую можно вызвать из любого места, дабы линии не тянуть далеко. Ну, какбэ проще сказать, типа портал для компонента, повторяющий компонент на который ссылается, но без добавления самого компонента, повторюсь, чтобы не тянуть далеко линии! ) Надеюсь объяснил. )
карма: 0

0
Ответов: 1821
Рейтинг: 168
#461: 2013-08-20 23:36:42 ЛС | профиль | цитата
RinniX писал(а):
Сделать-бы компонент ссылку на другой компонент

RinniX, если не ошибаюсь, в среде есть такая возможность, но, к сожалению, не помню её названия
карма: 5

0
Ответов: 9906
Рейтинг: 351
#462: 2013-08-20 23:54:15 ЛС | профиль | цитата
Ошибаешься - нету
карма: 9

0
Ответов: 1061
Рейтинг: 22
#463: 2013-08-20 23:55:23 ЛС | профиль | цитата
sаmakacd, компонент или что? )
------------ Дoбавленo в 23.55:
жаль)
карма: 0

0
Разработчик
Ответов: 26158
Рейтинг: 2127
#464: 2013-08-21 01:35:06 ЛС | профиль | цитата
RinniX писал(а):
жаль

На основе менеджеров есть че-то похожее -- Function от Assasina (ссылка на тему - http://forum.d2h.ru/forum.html?q=3&p=192352#p192352)
карма: 22

0
Гость
Ответов: 17029
Рейтинг: 0
#465: 2013-08-21 08:49:26 правка | ЛС | профиль | цитата


Редактировалось 1 раз(а), последний 2017-03-05 19:12:48
карма: 0

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)