Hi all. I have a question about participation in boost libraries. In my embedded project I'm using finite state machine and I tried to use one of the boost implementations of FSM, but they are too big and complex. Main disadvantage of them is usage of dynamic memory allocation, that I can't afford on my CPU and many dependencies, that I can't use on my CPU. CPU is ARM Cortex-M4 with 128K memory, I've no operating system in my project. I have write my own FSM implementation without dynamic memory and dependencies, it's more simple, than boost libraries, but, of course, not so powerful. I've used C++11 standard, specifically variadic templates. My question - Is there some interest in such FSM implementation for boost developers? I'll be very grateful for advice. P.S.: I'm sorry for my english, it's not my native language.
Hi,
On Sep 6, 2014 2:14 PM, "arcolight"
Hi all. I have a question about participation in boost libraries. In my embedded
project I'm using finite state machine and I tried to use one of the boost implementations of FSM, but they are too big and complex. Main disadvantage of them is usage of dynamic memory allocation, that I can't afford on my CPU and many dependencies, that I can't use on my CPU. CPU is ARM Cortex-M4 with 128K memory, I've no operating system in my project.
I have write my own FSM implementation without dynamic memory and dependencies, it's more simple, than boost libraries, but, of course, not so powerful.
This is something that would be very interesting to me, but I wonder if the memory allocation can be factored out in the current boost library by using allocators or something. I'm not terrible familiar with the libraries internals, but I'd be willing to take a look at my next free cycle. To be clear, is there another state machine lib in boost besides boost.statechart? That's the only one I'm familiar with from a user perspective. -Greg
_______________________________________________ Unsubscribe & other changes:
On 09/06/2014 03:20 AM, arcolight wrote:
Hi all. I have a question about participation in boost libraries. In my embedded project I'm using finite state machine and I tried to use one of the boost implementations of FSM, but they are too big and complex. Main disadvantage of them is usage of dynamic memory allocation, that I can't afford on my CPU and many dependencies, that I can't use on my CPU. CPU is ARM Cortex-M4 with 128K memory, I've no operating system in my project. I have write my own FSM implementation without dynamic memory and dependencies, it's more simple, than boost libraries, but, of course, not so powerful. I've used C++11 standard, specifically variadic templates. My question - Is there some interest in such FSM implementation for boost developers? I'll be very grateful for advice. P.S.: I'm sorry for my english, it's not my native language.
Are you using Statechart or MSM? -- Michael Caisse ciere consulting ciere.com
Hi all. I have a question about participation in boost libraries. In my embedded project I'm using finite state machine and I tried to use one of the boost implementations of FSM, but they are too big and complex. Main disadvantage of them is usage of dynamic memory allocation, that I can't afford on my CPU and many dependencies, that I can't use on my CPU.
Hi, I don't know if you're using msm or statechart but msm uses no dynamic memory, except if you choose to use the event queue or deferred events. And even this can be avoided by providing as template argument you own queue. If you don't require these features, you can disable them. Cheers, Christophe
participants (4)
-
arcolight
-
christophe.j.henry@googlemail.com
-
Greg Rubino
-
Michael Caisse