0K Re: OpenMoko light web server
Matthew S. Hamrick
mhamrick at cryptonomicon.net
Wed Apr 18 01:07:17 CEST 2007
I think some of the context didn't get forwarded to one or both
lists. Here's a simple graphical overview of the "003 Software
Architecture." (003 is the next bit of software I'll be working on
for the myPhone.)
Basically what you've got going here is that an "application" is
simply a collection of related objects in an object graph. Note they
may (or may not) all be in the same process space. When an object
wants to talk to another object in it's own process space, it simply
accesses it using features provided by the language or run-time
library. When it wants to access an object outside of it's address
space, it uses something like DBUS. But if you like OpenBinder or
CORBA, erase DBUS and write in the object middle ware of your choice.
(Extra points if you use a pointer in a single-address-space
operating-system.)
When you want to provide a service to an "off device" machine (like a
server or a desktop device) you have an interface that maps the
object graph to an XML document. Queries are made to the device using
HTTP GET's where the path portion of the URI is an XPath
specification. Deletions use HTTP Deletes. Additions to collections
use POSTs with the path portion of the URI being an XPath
specification and the contents being the XML that represents an
object that modifies the state of the object graph.
So if you queried this interface directly from your browser, you
would get an XML document back. So, for off device access, you might
want to have a page served off a server somewhere that then does
XMLHttpRequest() to the mobile device. Or, you could have the XML
interface on the device reference an xsl stylesheet somewhere.
Note that I'm totally ignoring security in this document, but rest
assured I am thinking about various security concepts including TLS,
message oriented security over HTTP and coarse or fine-grained access
control to individual objects in the object graph based on user,
network or application credentials.
-Cheers
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 003 Architecture.pdf
Type: application/pdf
Size: 61152 bytes
Desc: not available
Url : http://lists.openmoko.org/pipermail/community/attachments/20070417/fb221c4f/attachment.pdf
-------------- next part --------------
On Apr 17, 2007, at 2:24 PM, Jonathon Suggs wrote:
>
>> I wonder if there would be an advantage in embedding the server in
>> the
>> browser or vise versa. Then the whole issue of polling localhost
>> would
>> be moot.
>>
>> Alex
> Something else to consider (again) is that we are talking about an
> embedded device. So the javascript implementation/engine may or
> may not be as robust as a desktop equivalent. What browser and/or
> webserver are we talking about having on the device?
>
> We *probably* aren't talking about Firefox and Apache (or dare I
> say IE and IIS)...which is *probably* what most people are used to
> developing with. So just because we are talking about using HTML
> and browsers as a common platform, doesn't mean that it is going to
> be exactly the same. Not trying to burst anyone's bubble, but just
> giving a little reality check.
>
> _______________________________________________
> OpenMoko community mailing list
> community at lists.openmoko.org
> http://lists.openmoko.org/mailman/listinfo/community
More information about the community
mailing list