1) A hardvert is validalni kell ami osszetett eszkoz eseten nem egyszeru
Pont ezert nem mindegy, mekkora, es milyen komplexitasu, amit validalsz.
http://community.arm.com/groups/tools/blog/2013/12/03/how-fpga-boards-h…
2) Az osszes implementacio amivel talalkoztam csak a Java bytecode-ot tudja futtatni, de tovabbra is igenyel nativ kodot a virtualis gep tobbi reszenek (heap/stack management, loading, I/O, stb.) megvalositasahoz. Ezek merete altalaban meghaladja a valos alkalmazas meretet, es ezeket is validalni kell. (Avagy hatalmasnak kell lennie a projektnek ahhoz, hogy megerje.)
A "nativ" kod a bytecode. A cpu mikrokodban implementalja a bytecode core reszet, sot komplexebb bytecode utasitasok akar bytecode implementacioval is rendelkezhetnek.
http://www.jopdesign.com/doc/ejip.pdf
3) A forditot is validalni kell
Ez mar megtortent, anno a javacard kutatas+fejlesztes kapcsan. pl.: VerifyCard EU project
Martin Strecker: Formal Verification of a Java Compiler in
Isabelle
4) Az atlag Java programozo ettol meg nem lesz alkalmas ilyen alkalmazasok fejlesztesere (ahogy a C programozok nagyresze sem)
Senki nem ugy szuletett, hogy alkalmas ra. A lehetoseg mindenki elott adott, hogy megtanulja.
- Hard real-time alkalmazasokat (de javits ki ha tevedek) a GC miatt nem lehet fejleszteni Java-ban. Safety critical rendszereknel gyakori kovetelmeny, hogy inicializalas utan nem lehet tobb memoriat allokalni.
A publikaciok kozott van hard real-time gc is, hw megvalositassal.
Nehany megoldas jop-vel:
http://www.jopdesign.com/app.jsp
http://www.jopdesign.com/doc/jop_app.pdf
Safety critical rendszereknel mas a fokusz, es sokkal komolyabbak a kovetelmenyek. Es ha mar FP, akkor itt is Ocaml-t hasznaltak.
pl.:
"The Esterel Technologies company markets SCADE SUITE
6TM 1 (Berry 2003; Camus and Dion 2003), a model-based development environment dedicated to safety-critical embedded software. The code generator (KCG 2 ) of this suite that translates models into embedded C code is DO-178B compliant and allows to shorten the certification process of avionics projects which make use of it."
[..]
The new KCG, developed with OCaml, is certified with respect
to the IEC 61508 and EN 50128 norms. It is used in several civil avionics DO-178B projects (such as the A380 Airbus plane, for instance) and will be qualified simultaneously to the project qualifications (with the DO-178B, the tools are not qualified by themselves, but by their usage in a project). The project has been accomplished with the expected delays and costs. The software consists in 65k
lines of OCaml code, including a lexer and a parser, plus 4k lines of C code for the runtime library. The development team was composed of 6 software engineers and 8 test engineers during almost 2 years."
http://users.eecs.northwestern.edu/~clk800/rand-test-study/_eruoctdseti…