Bob Paddock wrote: > Does anyone know of any Hard Real Time Systems, > where deterministic response is required, that work > with Gentoo-Embedded?
Um, the way you posed your question, is sure to solicit 'religious wars' on a few issues. Soft real time, means that timing constraints are soft or guildlines for process performance metrics. Hard real time, means the timing constraints are hard or an absolute requirement. Granted, most often these timing constraints are arbitrarily set, but a system that violates those arbitrary timing constraints is said to not be 'real time'. But think about if a missile, is suppose to change it's rudder in response to an AD input, in 150ns, does it mean that the missile as as system is a failure if the rudder response is 151 ns or 150.002 ns? Usually not the case, in fact rarely. The designer settle for the best (lowest latency) response in a particular subsystem that they can get. Determinism is another funny character. Real embedded systems use a 'state machine' design where every state or transition is fully characterized and defined. ON a large complex system, it is virtually impossible to discover, characterize, define and test all possible states of a complex system. (just look at the behavior of a single female of any given species). Biological systems are but one example of a system that cannot be fully characterized due to many factors but genetic modification being one example. A microcontroller that is part of a complex system, can have hard (RT) timing constraints, and be implemented in ansi C or assembler on a state machine. Traditionally, that's been done for years. It's mostly too expensive to do currently, so intelligent people have 'diluted' the methodologies so that other altruisms are commonly promoted, in the name of science. Embedded linux anything, currently, can never be fully deterministic. Using languages such as C++ or more reaching OO languages, only exasperates the goal of being fully deterministic. In stead of the educators realizing and admitting that very few things actually need HRT and virtually nothing complex that we build, mimic or model is actually (fully) deterministic, pop-science and pop-mathematics has infected what is traditionally a common sense based standard of acceptable science. That said, you can 'embedded gentoo/linux' onto a processor; and this a most wonderful thing to do, and not allow a user to access the cli but only use the fancy touchscreen, as a consumer or operator, and have performance that is embedded and appears 'real time' to the human senses. You cannot actually build a deterministic system using any form of embedded linux or any OO language. <flames on> Obviously, you'll find lots of vendors and educated folks that will disagree, and they have, and the debate continues. As part of a company that has been building products for companies for decades, most new products do not even have a specification, as it evolves based on what the firmware engineers can accomplish on the newest silicon provided my semiconductor manufactures. Only the DOD, Nasa and such even attempt to define an embedded subsystem that is actually HRT, let alone fully deterministic. These are fancy monikers promoted by marketing types, MBA and sales professionals. There are lots of white papers around the net on FSM (finite state machines) and determinism. Maybe some tiny portion of what you seek to build needs HRT or determinism? Isolate that, and settle for best/reliable performance in an embedded linux/gentoo processor. Here's but one reference of the many confused reference you'll find: http://fsmgenerator.sourceforge.net/ If you really want determinism, stay with native assembler and ansi C. enjoy! <ps, keep the flames focused a technical discussion/opinion> James -- [email protected] mailing list
