реклама на сайте
подробности

 
 
> scmRTOS - где семафоры?
bmf
сообщение Jun 9 2005, 09:09
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 146
Регистрация: 6-01-05
Из: Украина
Пользователь №: 1 831



Хотел попробовать, стал разбираться и не нашел семафоров.
Может я чего не понял?
Есть TEventFlag - но это немножко другое (после "сигнала" все процессы,
ожидающие указанное событие, будут переведены в состояние готовых к выполнению)
Более похож TMutex - но тоже вроде не то.
Кто работал? В чем фишка?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
bmf
сообщение Jun 9 2005, 14:41
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 146
Регистрация: 6-01-05
Из: Украина
Пользователь №: 1 831



В доке к версии 2.0 такого обзаца нет.
Думаю что как раз реализация семафора будет по коду гораздо меньше и эффективней чем TChannel и MemoryManager, а не наоборот, делать элементарный семафор из них. Ведь мы работаем при недостатке памяти и ресурсов.

К автору OS, я конечно же отношусь с уважением, без него и небыло что обсуждать, но хочется выбрать для себя верное и правильное решение.
А убогость архитектуры с одной стороны, может выливаться преимуществом в другой. Это вопрос сложный. И с одной колокольни об этом судить не стоит, надо учитывать доводы всех сторон. Но это совсем другая история.

В общем, теперь ясно что имеем. Thanks.
Go to the top of the page
 
+Quote Post
dxp
сообщение Jun 10 2005, 06:38
Сообщение #3


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(bmf @ Jun 9 2005, 20:41)
В доке к версии 2.0 такого обзаца нет.

Все есть. Дока версии 2.0, ревизия 22, страница 25.

Цитата(bmf @ Jun 9 2005, 20:41)
Думаю что как раз реализация семафора будет по коду гораздо меньше и эффективней чем  TChannel и MemoryManager, а не наоборот, делать элементарный семафор из них. Ведь мы работаем при недостатке памяти и ресурсов.

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

В версии 2, кстати, лучше уже не юзать TChannel (а MemoryManager'а там вообще нет - не нужен он стал при наличие подержки шаблонов). Есть шаблон channel, на нем все прекрасно реализуется и пользоваться им проще и безопаснее. Единственно, что надо помнить - это то, что на шаблонах очень легко и просто нагенерить горы кода. Поэтому тут надо прявлять осмотрительность (в частности, не городить каналы на объекты типов со значительным размером - ведь проталкиваение через канал производится путем копирования. Тут накладные расходы на копирование могут быть весьма неслабыми).


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- bmf   scmRTOS - где семафоры?   Jun 9 2005, 09:09
- - ig_z   Цитата(bmf @ Jun 9 2005, 12:09)Хотел попробов...   Jun 9 2005, 10:23
- - bmf   ЦитатаТак ведь автор вполне ясно сказал, что семаф...   Jun 9 2005, 12:24
|- - ig_z   Цитата(bmf @ Jun 9 2005, 15:24)ЦитатаТак ведь...   Jun 9 2005, 13:58
|- - dxp   Цитата(bmf @ Jun 9 2005, 18:24)ЦитатаТак ведь...   Jun 10 2005, 06:25
|- - IgorKossak   Цитата(bmf @ Jun 9 2005, 17:41)В доке к верси...   Jun 17 2005, 11:17
|- - dxp   Цитата(IgorKossak @ Jun 17 2005, 17:17)А чем,...   Jun 20 2005, 04:14
- - bmf   ЦитатаНадо бы уточнить, что Вы понимаете под терми...   Jun 10 2005, 08:42
|- - dxp   Цитата(bmf @ Jun 10 2005, 14:42)ЦитатаНадо бы...   Jun 10 2005, 09:57
- - bmf   Спасибо за идеи. В принципе если есть исходники, т...   Jun 10 2005, 11:41
|- - dxp   Цитата(bmf @ Jun 10 2005, 17:41)Дя и сомнения...   Jun 10 2005, 12:09
- - bmf   Не знаю, впринципе всего десяток функций, там и со...   Jun 10 2005, 12:59
|- - dxp   Цитата(bmf @ Jun 10 2005, 18:59)Не знаю, впри...   Jun 10 2005, 13:28
- - bmf   Ну например, для тойже uCos - реакция на прерывани...   Jun 10 2005, 16:57
|- - dxp   Цитата(bmf @ Jun 10 2005, 22:57)Ну например, ...   Jun 14 2005, 06:00
- - bmf   И еще, посмотрите как в uCos ищется самая приорите...   Jun 10 2005, 19:39
|- - dxp   Цитата(bmf @ Jun 11 2005, 01:39)И еще, посмот...   Jun 14 2005, 06:20
- - bmf   А если реализовывать по честному семафоры (как в т...   Jun 11 2005, 09:22
|- - dxp   Цитата(bmf @ Jun 11 2005, 15:22)А если реализ...   Jun 14 2005, 06:32
- - bmf   Знаю что не влезет на мегу8, поэтому и ищу вариант...   Jun 14 2005, 17:50
|- - dxp   Цитата(bmf @ Jun 14 2005, 23:50)Знаю что не в...   Jun 15 2005, 05:47
|- - dxp   Цитата(bmf @ Jun 14 2005, 23:50)Просто надо в...   Jun 15 2005, 05:51
|- - dxp   Цитата(bmf @ Jun 14 2005, 23:50)И проблем пер...   Jun 15 2005, 06:53
- - bmf   На каждый ваш лист, я смогу аргументированно ответ...   Jun 15 2005, 17:25
- - bmf   Теперь о позитиве. ЦитатаОна никогда не станет ко...   Jun 17 2005, 05:12
- - bmf   Придется его такой и использовать. Просто в оригин...   Jun 17 2005, 12:52
- - bmf   Да все уже получилось не так, как вначале задумавы...   Jun 21 2005, 17:39


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th July 2025 - 02:54
Рейтинг@Mail.ru


Страница сгенерированна за 0.0141 секунд с 7
ELECTRONIX ©2004-2016