[Embedlets-dev] JSIMM Minivan (was peer-to-peer)
Status: Alpha
Brought to you by:
tkosan
|
From: Ted K. <tk...@ya...> - 2003-06-29 23:31:36
|
JSIMM MINIVAN I would like to elaborate on the design goal that I am shooting for with trying to bring 'peer-to-peer' to the JSIMM backplane. What I want is maximum flexibility during the system assembly and configuration stage, not during the operating stage, and I am more than willing to trade speed that I don't need in order to achieve this. What I want to do is to treat the JSIMM backplane like a minivan. The early Chrysler minivan advertisements focused on how many user-achievable configuration options their minivans offered. They would show something like 50 top views of their van with 50 different seat/accessory combinations and then say that in total, 250+ combinations were possible. Minivans are all about solving as many hauling problems as possible as cheaply as possible and for the most part speed, beyond a certain minimum, is not even a consideration. For the market that I am targeting the user is an 'embedded application configurator' just like the minivan owner is a 'minivan application configurator'. I want an embedded application configurator to be able to belly-up to a workbench that has a bunch of JSIMM backplanes, TStiks, muviums, JStamps and JStiks sitting on it, along with a workstation running the Embedlet wiring tool, and just snap together a solution to an embedded problem that they have. A point I want to emphasize here is that the flexibility is only needed during configuration time. For example, after the minivan has been configured to solve the current problem (like take 6 kids to baseball practice) it is frozen in that configuration until the next problem needs to be solved. For the typical family this configuration might change on a daily basis and for a commercial application (like a delivery van) one configuration might last the whole life of the vehicle. The type of embedded JSIMM-based applications I am thinking about need configuration-time flexibility, not runtime configuration flexibility (like a typical peer-to-peer internet application would need). IMHO, the killer market for Embedded Java is the flexible, configurable embedded systems market. EMBEDDED JAVA BASED PEER-TO-PEER A network-based computer is a computer that is made up of networked computing nodes and Java is an operating system for a network-based computer. A Java based application really shines when it has the flexibility to appropriately distribute parts of itself across the network nodes that it is spanning and I want to use a JSIMM backplane to allow the application assembly and configuration software to dynamically place the appropriate Java objects on the appropriate nodes in order to achieve the most efficient solution to the current embedded problem that is being solved. For example, assuming a CNC Mill controller problem, the application assembly software might decide that using a TStik (for the CNC's logic, network connectivity and persistent storage needs), and 2 muvium based JSIMM cards (for its realtime needs), is an efficient solution. If at a later date a robot is added to this system and the robot has realtime PID requirements, then perhaps a JStamp is plugged into the JSIMM backplane and the application assembly software can re-distribute the objects across the nodes to achieve an efficient solution to the new problem. So again, what I am shooting for is maximum flexibility at application configuration time and for this goal, a slower flexible network beats a faster inflexible one. Ted __________________________________ Do you Yahoo!? SBC Yahoo! DSL - Now only $29.95 per month! http://sbc.yahoo.com |