-
- Вроде понял вопрос Алексей Мусин(158 знак., 09.06.2007 11:58, )
- Неправильно ты понял. Нужно, чтобы компилятор нигде, кроме обработчика, НЕ ИСПОЛЬЗОВАЛ конкретные РОНы, а в обработчике, соответственно, их не сохранял - AVR(09.06.2007 12:07, )
- ..ну да, сохранять их тады не нужно, но отдать их ему на откуп придется. Но если РОНов 32, а задача того стоит, то пусть жреть.. ан нет. И как нагнуть его в этом плане пока не знаю. :( - blackbit(09.06.2007 12:25, )
- Так это подразумевается. Алексей Мусин(217 знак., 09.06.2007 12:23, )
- СлОва "использовать" недостаточно, нужно расширить до того, что я перечислил выше - иначе "использование" приведет и к нежелательному сохранению этих РОНов в обработчике - AVR(09.06.2007 12:38, )
- А иначе как вы разрулите их использование в ДВУХ ISR'ах? - Алексей Мусин(09.06.2007 12:41, )
- Я разруливаю хоть в тридцати двух - посредством писания ВСЕГО на ассемблерах - AVR(09.06.2007 12:47, )
- Ничего не имею против, но тредстартер задал рамки обсуждения :) - Алексей Мусин(09.06.2007 12:49, )
- Но ты же меня спросил - как я разруливаю, я и ответил - AVR(09.06.2007 12:55, )
- "разрулите", а не "разруливаете". Чувствуете разницу? :) - Алексей Мусин(09.06.2007 12:58, , ссылка)
- И разрулю точно так же. Не вижу никакой разницы - AVR(09.06.2007 13:01, )
- Так я ж не против и даже за. - Алексей Мусин(09.06.2007 13:03, , ссылка)
- И разрулю точно так же. Не вижу никакой разницы - AVR(09.06.2007 13:01, )
- "разрулите", а не "разруливаете". Чувствуете разницу? :) - Алексей Мусин(09.06.2007 12:58, , ссылка)
- Но ты же меня спросил - как я разруливаю, я и ответил - AVR(09.06.2007 12:55, )
- Ничего не имею против, но тредстартер задал рамки обсуждения :) - Алексей Мусин(09.06.2007 12:49, )
- Я разруливаю хоть в тридцати двух - посредством писания ВСЕГО на ассемблерах - AVR(09.06.2007 12:47, )
- А иначе как вы разрулите их использование в ДВУХ ISR'ах? - Алексей Мусин(09.06.2007 12:41, )
- СлОва "использовать" недостаточно, нужно расширить до того, что я перечислил выше - иначе "использование" приведет и к нежелательному сохранению этих РОНов в обработчике - AVR(09.06.2007 12:38, )
- Тогда, месье, ваша наглость не знает границ, а IAR не знает о размерах вашей наглости. :) - Алексей Мусин(09.06.2007 12:07, )
- ..не совсем так. Все границы ему хорошо известны: blackbit(351 знак., 09.06.2007 12:21, )
- Мешает то, что в другом исходном файле он тоже может их заюзать. - Алексей Мусин(09.06.2007 12:24, )
- ..но он же об этом лучше меня знает. Что ему мешает? Блин, ему просто надо сократить общее число используемых везде, кроме обработчика, РОН. - blackbit(09.06.2007 12:26, )
- А если прерывания вложенные? Алексей Мусин(104 знак., 09.06.2007 12:40, )
- ..отец, мне хотя бы для одного уровня. Слезно умоляю.. ;) - blackbit(09.06.2007 13:01, )
- Ха. ;) Официально в AVR нет вложенных прерываний. Извраты на совести программера. А с совестью своей я разберусь.. ;) - blackbit(09.06.2007 12:43, )
- Тогда пишите в IAR о --lock_regs_for_isr :) - Алексей Мусин(09.06.2007 12:57, )
- да, будем смеяться вместе... ;))) - blackbit(09.06.2007 12:58, )
- ... и писать ISR на асме. До лучших времен :) - Алексей Мусин(09.06.2007 12:59, )
- да, будем смеяться вместе... ;))) - blackbit(09.06.2007 12:58, )
- Тогда пишите в IAR о --lock_regs_for_isr :) - Алексей Мусин(09.06.2007 12:57, )
- Них он не знает. Кури тему "раздельная компиляция" - =AlexD=(09.06.2007 12:37, )
- ..15 лет курю. Раздельная компиляция в соседнем окне. Обработчик еще писать уметь надо. - blackbit(09.06.2007 12:41, )
- ..хе, кстати, логика у него чуть другая, чем вы предполагаете. blackbit(210 знак., 09.06.2007 12:34, )
- С этим я как раз и не спорил. Это ясно как божий день. - Алексей Мусин(09.06.2007 12:39, )
- А если прерывания вложенные? Алексей Мусин(104 знак., 09.06.2007 12:40, )
- ..но он же об этом лучше меня знает. Что ему мешает? Блин, ему просто надо сократить общее число используемых везде, кроме обработчика, РОН. - blackbit(09.06.2007 12:26, )
- По-хорошему он может делать это в автомате по какой-нить прагме от программера, даже без указания конкретных регистров. - blackbit(09.06.2007 12:20, )
- Мешает то, что в другом исходном файле он тоже может их заюзать. - Алексей Мусин(09.06.2007 12:24, )
- ..не совсем так. Все границы ему хорошо известны: blackbit(351 знак., 09.06.2007 12:21, )
- Неправильно ты понял. Нужно, чтобы компилятор нигде, кроме обработчика, НЕ ИСПОЛЬЗОВАЛ конкретные РОНы, а в обработчике, соответственно, их не сохранял - AVR(09.06.2007 12:07, )
- --lock_regs - Алексей Мусин(09.06.2007 09:36, )
- Не поможет. Она же с regvar работает. Резервирует для него общее число закрываемых регистров. - blackbit(09.06.2007 09:41, )
- Что-то я не понял, что тебе нужно. Чтобы компилятор сам сохранял контекст в залоченые регистры? "Это фантастика" (с) - =AlexD=(09.06.2007 10:15, )
- ..наоборот, чтобы не сохранял, а для temp'овых действий внутри обработчика использовал залоченное. Откупиться хочу. - blackbit(09.06.2007 10:18, )
- Объявить глобальные регистровые переменные, и пользовать их только в обработчике, принудительно запретив в нем сохранение контекста - AVR(09.06.2007 10:28, )
- ..первая часть так и делается, а вторая не прокатывает по объективным причинам -=> - blackbit(09.06.2007 10:31, , ссылка)
- ..цитирую себя прям из мусорки :) : blackbit(169 знак., 09.06.2007 10:35, )
- Т.е. чтобы компилер делал так? Алексей Мусин(195 знак., 09.06.2007 10:44, )
- нет blackbit(291 знак., 09.06.2007 10:50, )
- Бред. Не хочешь сохранять контекст в стек, не хочешь в зарезервированные регистры, а куда же его тогда девать??? - =AlexD=(09.06.2007 10:36, )
- ..сам бред. В этом случае "скрипач не нужен".. никуда его не нужно девать. Его тады вообще нет, контекста-то... Смотри как в арме fig работает. - blackbit(09.06.2007 10:39, )
- SREG тебе тоже не нужен? - =AlexD=(09.06.2007 10:44, )
- ..пока мне РОНы не нужны. - blackbit(09.06.2007 10:46, )
- Так не юзай их. Юзай только regvar - =AlexD=(09.06.2007 10:48, )
- ..они могут юзаться самим компилером так же в другом месте, поэтому он их сохраняет, мопэд не мой, я тут ни при чем. - blackbit(09.06.2007 10:51, )
- Тут есть непонятки, на сколько я помню, regvar объявленные глобально, никуда не сохраняются. Хотя зуб не дам. - =AlexD=(09.06.2007 11:18, )
- ..да они тут ни при чем вообще. О них отдельный разговор. - blackbit(09.06.2007 12:09, )
- Тут есть непонятки, на сколько я помню, regvar объявленные глобально, никуда не сохраняются. Хотя зуб не дам. - =AlexD=(09.06.2007 11:18, )
- ..они могут юзаться самим компилером так же в другом месте, поэтому он их сохраняет, мопэд не мой, я тут ни при чем. - blackbit(09.06.2007 10:51, )
- Так не юзай их. Юзай только regvar - =AlexD=(09.06.2007 10:48, )
- ..пока мне РОНы не нужны. - blackbit(09.06.2007 10:46, )
- SREG тебе тоже не нужен? - =AlexD=(09.06.2007 10:44, )
- ..сам бред. В этом случае "скрипач не нужен".. никуда его не нужно девать. Его тады вообще нет, контекста-то... Смотри как в арме fig работает. - blackbit(09.06.2007 10:39, )
- Т.е. чтобы компилер делал так? Алексей Мусин(195 знак., 09.06.2007 10:44, )
- ..цитирую себя прям из мусорки :) : blackbit(169 знак., 09.06.2007 10:35, )
- ..первая часть так и делается, а вторая не прокатывает по объективным причинам -=> - blackbit(09.06.2007 10:31, , ссылка)
- Объявить глобальные регистровые переменные, и пользовать их только в обработчике, принудительно запретив в нем сохранение контекста - AVR(09.06.2007 10:28, )
- ..наоборот, чтобы не сохранял, а для temp'овых действий внутри обработчика использовал залоченное. Откупиться хочу. - blackbit(09.06.2007 10:18, )
- Какой еще regvar в ассемблере? :) Алексей Мусин(75 знак., 09.06.2007 10:01, )
- ..какой еще ассеблер? Про чистейший С треплемся. Или вы думаете, что регистры можно лочить только для ассемблера? - blackbit(09.06.2007 10:04, )
- О блин, отстал от жизни. Так в чем проблема заюзать одновременно lock_regs и regvar? Алексей Мусин(56 знак., 09.06.2007 10:18, )
- ..родной вы мой ;), не поверите - так и делаю и уже давно и пряма на С. Что с контекстом-то делать? - blackbit(09.06.2007 10:19, )
- О блин, отстал от жизни. Так в чем проблема заюзать одновременно lock_regs и regvar? Алексей Мусин(56 знак., 09.06.2007 10:18, )
- ..какой еще ассеблер? Про чистейший С треплемся. Или вы думаете, что регистры можно лочить только для ассемблера? - blackbit(09.06.2007 10:04, )
- ..просто хочу максимально порезать сохранение контекста в обработчике, принеся в жертву часть РОН и выиграв во времени реакции. Вопрос не праздный. - blackbit(09.06.2007 09:53, )
- Не понятно. В scmRTOS 1-й версии так и было сделано именно для уменьшения времени переключения и потребного ОЗУ для задач. - Алексей Мусин(09.06.2007 09:58, )
- ..хотите сказать, что для этого --lock_regs было достаточно? - blackbit(09.06.2007 10:01, )
- ..кстати, как раз все понятно. Время действительно будет меньше, ведь сам обработчик будет отрабатываться быстрее, если его переменные запихать в залоченные регистры. blackbit(44 знак., 09.06.2007 10:08, )
- Да, там часть залоченных регистров юзалась под нужды ОС. Алексей Мусин(1013 знак., 09.06.2007 10:23, )
- ..да, да. Но это все-равно что перхоть лечить отрубанием головы, не так ли? Если есть "лишние регистры", то проще залочить их под контекст (а ля армированная fig'a). blackbit(89 знак., 09.06.2007 10:28, )
- А если обработчик вместо _interrupt_ зааттрибутить как _c_task_, или как нечто подобное? - AVR(09.06.2007 10:49, )
- Тады без АСМового предобработчика не обойтись. Короче blackbit просто дурью мается. Написал бы на АСМе и мозги не парил. - =AlexD=(09.06.2007 10:50, )
- Да, это так же трудно, как нахуй послать по-английски - практически невозможно, только каноническое fuck you выходит :)) - AVR(09.06.2007 10:54, )
- :-)) А надо делать как наши младшие братья - трындят по своему, а когда нужно поругаться , сразу переходят на русский мат. :-) - =AlexD=(09.06.2007 10:57, )
- К сожалению, Mexican Americans таковым не владеют :)) - AVR(09.06.2007 10:58, )
- "Дикари"(с) Кин-дза-дза - =AlexD=(09.06.2007 11:03, )
- К сожалению, Mexican Americans таковым не владеют :)) - AVR(09.06.2007 10:58, )
- :-)) А надо делать как наши младшие братья - трындят по своему, а когда нужно поругаться , сразу переходят на русский мат. :-) - =AlexD=(09.06.2007 10:57, )
- ..нах тогда ваш С? иаица чесать? - blackbit(09.06.2007 10:52, )
- Во-во. "Мыши плакали, кололись, но продолжали жрать кактус"(с) :)) - AVR(09.06.2007 10:56, )
- Да, это так же трудно, как нахуй послать по-английски - практически невозможно, только каноническое fuck you выходит :)) - AVR(09.06.2007 10:54, )
- Тады без АСМового предобработчика не обойтись. Короче blackbit просто дурью мается. Написал бы на АСМе и мозги не парил. - =AlexD=(09.06.2007 10:50, )
- А если обработчик вместо _interrupt_ зааттрибутить как _c_task_, или как нечто подобное? - AVR(09.06.2007 10:49, )
- ..да, да. Но это все-равно что перхоть лечить отрубанием головы, не так ли? Если есть "лишние регистры", то проще залочить их под контекст (а ля армированная fig'a). blackbit(89 знак., 09.06.2007 10:28, )
- Да, там часть залоченных регистров юзалась под нужды ОС. Алексей Мусин(1013 знак., 09.06.2007 10:23, )
- Еще осторожно юзать библиотеки Алексей Мусин(115 знак., 09.06.2007 10:03, )
- ..есть. Примерно с 9. Но это не главное. - blackbit(09.06.2007 10:05, )
- ИМХО - Алексей Мусин(09.06.2007 10:02, , ссылка)
- ..кстати, как раз все понятно. Время действительно будет меньше, ведь сам обработчик будет отрабатываться быстрее, если его переменные запихать в залоченные регистры. blackbit(44 знак., 09.06.2007 10:08, )
- ..хотите сказать, что для этого --lock_regs было достаточно? - blackbit(09.06.2007 10:01, )
- Не понятно. В scmRTOS 1-й версии так и было сделано именно для уменьшения времени переключения и потребного ОЗУ для задач. - Алексей Мусин(09.06.2007 09:58, )
- Придется раскошелиться на компилятор ассемблера :)) - AVR(09.06.2007 09:51, )
- ..да по-любому. Похоже это будет еще один камень в сторону любителей чистого С.. ;) Если эта потребность не поддержана С компилером, то боюсь даже связка С+ассемБЛЮлятор не поможет. - blackbit(09.06.2007 09:59, )
- Ассмбля...бля...блятор... А! Ассемблятор! Во! ;О) - mse(09.06.2007 09:54, )
- Что-то я не понял, что тебе нужно. Чтобы компилятор сам сохранял контекст в залоченые регистры? "Это фантастика" (с) - =AlexD=(09.06.2007 10:15, )
- Не поможет. Она же с regvar работает. Резервирует для него общее число закрываемых регистров. - blackbit(09.06.2007 09:41, )
- Вроде понял вопрос Алексей Мусин(158 знак., 09.06.2007 11:58, )