Linked by Hadrien Grasland on Sun 29th May 2011 09:42 UTC
OSNews, Generic OSes It's funny how trying to have a consistent system design makes you constantly jump from one area of the designed OS to another. I initially just tried to implement interrupt handling, and now I'm cleaning up the design of an RPC-based daemon model, which will be used to implement interrupt handlers, along with most other system services. Anyway, now that I get to something I'm personally satisfied with, I wanted to ask everyone who's interested to check that design and tell me if anything in it sounds like a bad idea to them in the short or long run. That's because this is a core part of this OS' design, and I'm really not interested in core design mistakes emerging in a few years if I can fix them now. Many thanks in advance.
Thread beginning with comment 475343
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[8]: Comment by Kaj-de-Vos
by bouhko on Tue 31st May 2011 20:48 UTC in reply to "RE[7]: Comment by Kaj-de-Vos"
bouhko
Member since:
2010-06-24

You might want to have a look at Google's protocol buffers. This is basically a way to define messages that can be serialized/deserialized in multiple languages. It allows you to define services as well (and let you implement the RPC details for your system) :
http://code.google.com/apis/protocolbuffers/docs/reference/cpp-gene...

Reply Parent Score: 1

RE[9]: Comment by Kaj-de-Vos
by Neolander on Tue 31st May 2011 22:56 in reply to "RE[8]: Comment by Kaj-de-Vos"
Neolander Member since:
2010-03-08

Okay, so if I understand it correctly it's about having a code generator that generates both sides of the RPC call based on a description language, right ? Sounds pretty neat indeed ;)

The regular deprecation warnings at the beginning of the linked paragraph bug me, though.

Reply Parent Score: 1

RE[10]: Comment by Kaj-de-Vos
by bouhko on Wed 1st Jun 2011 17:53 in reply to "RE[9]: Comment by Kaj-de-Vos"
bouhko Member since:
2010-06-24

Yeah that's the idea.
Actually, looks like it's deprecated in favor of the plugin API. It should be able to achieve the same kind of stuff, maybe with a bit more work (but looks like it's more flexible).
Anyway, what's really awesome about protocol buffer is the way the are serialized. It's really efficient and fast (you can look up at some benchmarks on internet).

Reply Parent Score: 1