Definicija RTS-a nema nikakve veze sa mili, mikro, nano... itd sekundama i ides u pogresnu stranu.
RTS jednostavno znaci da odgovor sistema
MORA stici u predvidjenom vremenu, a da li je to vreme reda nekoliko mikrosekundi, minuta, sati ili godina dana je sasvim neka druga prica i nema nikakve veze sa tim kolika je npr. reakcija na interrupt kod Windowsa ili Linuxa.
Radi se o tome da ce kod RTS sistema odziv u 100% slucajeva stici u predvidjenom vremenu (nevazno od toga koliko ono bili), a ne recimo u 99.9% slucajeva.
RTS je sistem kod koga je zakasnjeli odgovor jednako beskoristan kao i pogresan.
Soft RTS je RTS koji u nekoj mjeri moze i da se provuce sa ponekim zakasnjelim odgovorom i kod koga zbog toga nece nastupiti katastrofalne posljedice po sistem i/ili okolinu.
Hard RTS sistem je takav kod koga mogu ili hoce nastupiti katastrofalne posljedice po sistem i/ili okolinu ako odgovor sistema zakasni.
Sistem koji moze da funckionise sa nekim vecim brojem (relativan pojam) takvih kasnjena bez problema, uopste nije RTS.
Dakle, manje vise svaki danasnji procesorski sistem moze da procesira odgovor dovoljnom brzinom i takvi sistemi se i ne projektuju u blizini granicnih mogucnosti odziva, ali se ne radi samo o tome da li on to neki put moze nego i da li svaki put "hoce", tj, da li ce se zaglaviti u tamo nekom procesu i prikazivati tebi rotirajuci pjescani sat na ekranu dok ti pokusavas da ispumpas balast da ne bi zaorao dno okeana.
Dakle, 100%-tna predvidivost da ce sistem odgovoriti u potrebnom roku je ono sto karakterise Hard RTOS, a koliki je taj vremenski rok je nesto sasvim drugo.
Ni u jednom svemirskom brodu nikad nije koriscen ni Windows ni Linux za bilo koji dio icega koji je kritican za misiju.
Sa kakvim se zahtjevima projektuju takvi sistemi moze se pomalo naslutiti iz sledeceg odlomka iz jedne knjige Michaela Barr-a:
Citat:
In 1976, two unmanned spacecraft arrived on the planet Mars. As part of their mission, they were to collect samples
of the Martian surface, analyze the chemical makeup of each, and transmit the results to scientists back on Earth.
Those Viking missions are amazing to me. Surrounded by personal computers that must be rebooted almost daily, I
find it remarkable that more than 20 years ago a team of scientists and engineers successfully built two computers
that survived a journey of 34 million miles and functioned correctly for half a decade. Clearly, reliability was one of
the most important requirements for these systems.
What if a memory chip had failed? Or the software had bugs that caused it to crash? Or an electrical connection
broke during impact? There is no way to prevent such problems from occurring. So, all of these potential failure
points and many others had to be eliminated by adding redundant circuitry or extra functionality: an extra processor
here, special memory diagnostics there, a hardware timer to reset the system if the software got stuck, and so on.
More recently, NASA launched the Pathfinder mission. Its primary goal was to demonstrate the feasibility of getting
to Mars on a budget. Of course, given the advances in technology made since the mid-70s, the designers didn't have
to give up too much to accomplish this. They might have reduced the amount of redundancy somewhat, but they still
gave Pathfinder more processing power and memory than Viking ever could have. The Mars Pathfinder was actually
two embedded systems: a landing craft and a rover. The landing craft had a 32-bit processor and 128 MB of RAM;
the rover, on the other hand, had only an 8-bit processor and 512KB. These choices probably reflect the different
functional requirements of the two systems. But I'm sure that production cost wasn't much of an issue in either case.
Izrada softvera za Space Shuttle je kostala oko 1000$ po jednoj liniji koda. Na Space Shuttlu imaju 4 redudantna sistema koji svi istovremeno rade isti posao, ako jedan od njih proracuna nesto drugacije od ostala 3 ili pokazuje neka kasnjenja ili druge probleme, ostali ga sistemom glasanja iskljucuju i tako sve dok ne preostane 1. Ako se desi da dva pokazuju jedan rezultat, a druga dvojica neki drugi, onda se glasanje i iskljucivane onih koji (vjerovatno) grese obavlja po posebnom prilicno komplikovanom protokolu. Postoji jos i jedan rezervni koji kontrolise sva 4 na poseban nacin. Kad preostane samo jedan sistem da radi, onda Shttle mora da prekida misiju i ukljucuje se dodatni sistem koji sluzi samo za uspjesno prekidanje misije.
U takvim masinama, Windows i Linux mogu samo sluziti posadi za e-mail, winamp, Excel, Matlab, Counter Strike i sl....
Cuo sam da americka mornarica na nekim brodovima (ili svim, ne znam tacno) koristi Linux, ali za sta ga koristi ne znam, nisam na taj detalj naletio.
[Ovu poruku je menjao Odin D. dana 03.04.2009. u 21:07 GMT+1]