Slashdot Mirror


Roller Coaster Data Center

stienman writes "The Top Thrill Dragster at Cedar Point Amusement Park may have more technology than your data center. From the article: "The parameters within which the Dragster has to operate are so finely tuned that variable load weights from people, wind speed and out-side temperature affect its performance. ... After every third launch, the data are averaged and compared with historic launch data in an effort to create that perfect ride - the roller coaster must go fast enough to clear the top of the tower, but slow to between 7 and 15 mph in order to give riders the maximum lift effect at the top."

1 of 207 comments (clear)

  1. Re:Does anyone know how this software .. by altstadt · · Score: 5, Informative

    Just out of curiosity, what makes you think you "know" anything about embedded software engineering? Judging from your statements you clearly have no experience with the matter, and you have never spoken with anybody with any experience in the matter.

    Most embedded systems are written in either C or assembler and they do just fine. Most real-time OSs are written in either C or assembler and they do just fine. For both of these statements I am including everything from the systems that run on space and planetary probes down to the processor running in the keyboard you were just typing on. I just saw a job posting today for a medical device software engineer requiring experience with WinCE, C++, and C#. Guess what language(s) WinCE was written in. It sure wasn't Pascal, PerfectScript, Perl, PHP, Pict, Pike, Pilot, PL/C, PL/I, Postscript, Prolog, or Python.

    Embedded systems don't normally need the absurd amounts of error checking that user level programs do. Thermocouples aren't normally in the habit of randomly generating buffer overflows. Physics is sufficient to deal with most situations, and I'm not just talking about the physics of the real, such as the expected temperature variation over time that said thermocouple would be experiencing. The physics involved in a thermocouple wire breaking will also not overwrite the stack into the code space. I have never heard of a network buffer overflow problem in VxWorks, and that was written in C.

    What language would you suggest for embedded systems? Something that will randomly shut down randomly for milliseconds at a time to do garbage collection? Something where the first pass through a section of code takes a radically different different amount of time than the second pass, or the third? Even ladder logic is unsuited to many tasks because the PLCs that are normally used to run it often have loop times dependent on the input states.

    C was designed for system level work. It is predictable, which is the single greatest criterion for embedded and real-time systems. It is really quite adequate for the task as long as the people working with it are used to designing embedded systems. Or else they have their work reviewed by those who do have the experience. Any real engineering office would be run this way.