On quarta-feira, 3 de agosto de 2016 12:58:00 PDT Gregg Reynolds wrote: > On Mon, Aug 1, 2016 at 3:42 PM, Thiago Macieira <thiago.macieira at intel.com> > > This email serves as the official request and the beginning of a > > discussion for > > a new Git repository in iotivity.org to contain a new implementation of > > the > > OCF protocol, designed for constrained devices. > > That's great news!
Thanks! > > Q: why a new implementation, instead of the IoTivity C SDK? > > To what extent is the public API for this new thing compatible with the > current csdk public API? Does it make sense to define a single Iotivity > API? It's very different and does not intend to be the same. It has similar concepts, that's all. > > Q: what language is it written in? > > > > Pure C. > > Yay. > > I take it this not the experimental version John Light did? No, it isn't, but is a result of his findings. The experimental version he did was to reduce the malloc() usage in the IoTivity C SDK, thereby reducing memory fragmentation. The conclusion of his work is that it would be easier to rewrite from scratch than to fix what was left. And that was not even considering the complete design mismatch between a mainloop-based OS and one that reacts to interrupts. IoTivity's current API works fine if you're designing a new application from scratch or if you have threads available. It does not work if you have neither: in a single-threaded system, you cannot "simply add" IoTivity to an application that exists. It requires a full rewrite of the application. And I don't even believe it would have worked beyond simple testing: the results from Arduino usage were inconclusive. So we rewrote from scratch. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center
