|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Kirill Frolov 2:5020/400 03 Nov 2006 02:06:56 To : doro@doro.poltava.ua Subject : Re: проектирование программ -------------------------------------------------------------------------------- On Thu, 2 Nov 2006 06:37:37 +0000 (UTC), doro@doro.poltava.ua wrote: > Я уже несколько проектов реализовал с использованием FSM (машина конечных > состояний) > ссылок в инете дать не могу хотя их море :-), > была бумажная книга + собственное ее понимание http://www.softcraft.ru/auto.shtml и далее по ссылкам. Хотя это, с моей точки зрения, если откинуть объектно-ориентированную чушь, больше подходит для embedded программирования. Тут большой плюс для MCU с ограниченным или программно-недоступным стеком. По сути -- это методика программирования параллельных процессов без переключения стеков. > Достоинств использования этого метода много. > Минимум документации, причем она вся (логика + данные) > присутствует на схеме фсм, очень легко расширять, модифицировать код. > Быстрота и простота локализации ошибок. Это да. Hадо понимать, что схема вззаимодействия автоматов тоже имеет важность. Только если говорить о технологии предлагаемой А. А. Шалыто -- она мне представляется несколько ограниченной и неэффективной. Hапрашивается планировщик, который бы запускал автоматы только по факту возникновения событий (в т.ч. и по факту изменения состояний других автоматов). Иначе много бесполезной работы по проверке состояний в цикле сильно бьёт по времени реакции на любое событие. Плюс проблема: взаимодействие между автоматами ограничено только вызываемостью (вызывает проблемы с рекурсивными вызовами) или по номеру состояния (описанная выше проблема с опросом и медленной реакцией). Я бы ввёл третий тип взаимодействия обслуживаемый планировщиком. --- ifmail v.2.15dev5.3 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/100004dabc9cb.html, оценка из 5, голосов 10
|