ADA oli pikka aega standard militaarrakenduste jaoks. Mille poolest see niiväga keeruline on?Hydrazine kirjutas:F-22 puhul ju vahetati mingiaeg kogu arvutiplatvorm välja ja lisaks kasutati seal sellist keerukat progemisekeelt nagu ADA. Nad tahtsid midagi väga vägevat, saan sellest aru aga päris 100% välja vist ikkagi ei tulnud.
Missioonikriitiline tarkvaraarendus
Missioonikriitiline tarkvaraarendus
Miks Venemaa Ukrainas sõdib?
Kas Ukraina kaotab?
2015 jaanuari pealetung
Karmi käega valitsus Ukrainale?
Islamiterroristide hord tuleb?
Moskva jaoks ei võimutse separatistid mitte Donetskis ega Luganskis, vaid Kiievis.
Kas Ukraina kaotab?
2015 jaanuari pealetung
Karmi käega valitsus Ukrainale?
Islamiterroristide hord tuleb?
Moskva jaoks ei võimutse separatistid mitte Donetskis ega Luganskis, vaid Kiievis.
Re: F-22
No aus vastus, ma ei oska väga ADA's midagi teha, vähe põhjuseid olnud.
Re: F-22
Ma ka mitte, kunagi huvi pärast lugesin selle kohta, sest mu esimene keel oli Pascal. Eesmärk oli jäikuse abil vigu vältida (tüpiseerimisel näiteks), aga ma ausalt öelda ei tahaks uskuda, et see olemuslikult kuidagi keerulisem peaks olema kui teised samal tasemel keeled.
---
Pilt ka:
https://www.newyorker.com/tech/annals-o ... -visionary
---
Pilt ka:
https://www.newyorker.com/tech/annals-o ... -visionary
Miks Venemaa Ukrainas sõdib?
Kas Ukraina kaotab?
2015 jaanuari pealetung
Karmi käega valitsus Ukrainale?
Islamiterroristide hord tuleb?
Moskva jaoks ei võimutse separatistid mitte Donetskis ega Luganskis, vaid Kiievis.
Kas Ukraina kaotab?
2015 jaanuari pealetung
Karmi käega valitsus Ukrainale?
Islamiterroristide hord tuleb?
Moskva jaoks ei võimutse separatistid mitte Donetskis ega Luganskis, vaid Kiievis.
Re: ADA programmeerimiskeel
Ma tean militaari jaoks natuke selliseid progemiskeeli ka, (ei ise ei valda), aga et põhimõtteliselt lähevad koodiread paralleelselt käima, et sa ei saa mõelda, et see on algus ja see on lõpp, aga noh, ma olen veidi vanem ka juba kui 20...
- Kilo Tango
- Liige
- Postitusi: 9151
- Liitunud: 14 Aug, 2008 15:40
- Kontakt:
Re: ADA programmeerimiskeel
Massohhistlike meeleolude korral soovitan Haskelli või Malbolge. ADA probleem tundub pigem olevat see, et tegemist on aegunud keelega, mida keegi eriti ei valda enam. Viimane muudatustepakk tuli vikipeedia järgi 2012. Ehk siis nagu ka muude ürgvanade asjade korral - koodibaas võib ju lihtne olla, aga kuna progejad peavad hakkama seda otsast õppima (või siis tuleb miskised pensionärid hirmsa raha eest kodunt välja kangutada), siis muudab see asja keeruliseks ja kalliks.
Re: F-22
Kriku kirjutas:ADA oli pikka aega standard militaarrakenduste jaoks. Mille poolest see niiväga keeruline on?
ADA võib kohati mõnevõrra keerukas olla, kuna seal on teatavad turva ja korrektsusenõuded kompilaatori tasemel sisse ehitatud. Üldises plaanis aga tuleb sama korrektsus tagada ka teistes keeltes, mis ei tule kindlasti lihtsam ja kohati saab kergemini jalga tulistada. Ilmselt siin põhimõttelist vahet ei ole.
Peamine põhjus on ikkagi see, et pagana raske on leida häid ADA progejaid, kuna see on siiski üsna nišši keel ning pealekasvu vähevõitu. Olemasolevate arendajate peale on konkurents aga jube tihe ka Boeing ja Airbus tsiviillennunuduse projektidega (mis ka enamasti ADAs).
Siin nati lugemist selle kohta:
F-35 puhul on keeleks üsna põhjalike arendusreeglitega C++ (mahukas PDF!) kuhu arendajaid leida märgatavalt lihtsam aga uute projektide jaoks on ka see selgelt rudiment.
Üldiselt, kuigi ADAl on C ees ka palju eeliseid on ta ikkagi oma ajastu laps koos sarnaste probleemidega (siin lühike ülevaade).
Kui nii 10 a. tagasi tundus lootustandev Real Time Java. Mitte et see tegelikult embedded süsteemide jaoks üldse hea keel oleks, aga on kerge kasutada ja progejaid on palju. Prototüüpidest olid kunagised edulood brittide Taranis ja Boeing X-45C
Each avionics software module has different criticality levels. Unmanned aircraft for military applications generally have less stringent safety requirements than commercial aircraft, and several unmanned aircraft have already been programmed with the Java language. Representative applications include ScanEagle by Boeing, Barracuda by EADS, J-UCAS X-45c by Boeing, and Taranis by BAE. The X-45c and Taranis projects are both autonomous aircraft, and the onboard mission planning software for both of these applications is written in Java.
Nüüd viimastel aastatel on C++ asemikuna väga kiiresti pead tõstev keel Rust.
Rust on üle tüki aja üks masinkeeleks kompileeritav (garbage collectioni ja virtuaalmasinata) keel mis ka võistleb kiiruses Cga isegi väga piiratud embedded süsteemides kuid on olemuselt siiski moderne keel. Teatavaid sarnasusi on ka ADAle. Esmasel kohal on memory-safety mis teeb progemise kohati üllatavalt tülikaks. Seeest hoolistseb ta ise mäluvabastuse eest ise (mis on üsna unikaalnse saavutus ilma garbage collectionita) ja kui asi juba kompileerub siis garanteerib et enamik klassikalisi mälulekkeid on põhimõtteliselt välistatud. Miinusena ei ole mitmed enamikes teistes keeltes levinud progemismustrid lihtsalt võimalikud (siin blogipostituses üsna hästi kajastatud mis tüütu on).
Esialgu on tema edulood olnud suured C ja C++ projektid ja veebisüsteemid. Tasapisi aga hiilib juba ka Linuxi kernelisse (asi millega ükski keel peale C pole hakkama saanud), ja ka avioonikasse, näiteks Space-X plaanib kasutuselvõttu.
Memory-safety Tema ökosüsteem ei ole veel kaugeltki küps, aga initsatiivid nagu embedded-rust ja Ferrocene (eelnevalt Sealed Rust) aga näitavad et ta liigub sinna suunda päris kiiresti.
* Ääremärkusena endal ADA kogemus puudub, C'd olen kirjutanud ka ainult kooli ja hobiprojektides, Rusti kõvasti uurinud aga praktiliselt pole olnud kohta kus seda ilmtingimata vaja läheks (lõppkokkuvõttes on progemiskeel ikka üsna harva see ületamatu takistus ja sellega vastuvoolu ujuda ei tasu). Kõige madaltasemilisem keel mida olen pidanud pikemalt klientidele kirjutama on golang, muidu ikkagi enamik tööd teinud virtuaalmasinaga keeltes (JVM baasil Java ja Kotlin aga järjest enam Javascripti/Typescripti nii node.js'is kui ka brauseris), paar aastat vahele ka skriptikeelt Ruby't. Päris algusaastatel sai progetud ka pikemalt PL/SQL'i .
Re: ADA programmeerimiskeel
Madis Reivik kirjutas:võrreldes nt sellega
int main(int b,char**i){long long n=B,a=I^n,r=(a/b&a)>>4,y=atoi(*++i),_=(((a^n/b)*(y>>T)|y>>S)&r)|(a^r);printf("%.8s\n",(char*)&_);}
jah, kirjutame kõik ühele reale ning toome võimalikult keerulise näite hea töö, istu, viis. süntaksit võrdlevad algajad
viimati marsil lennanud kopteri kõhus on väga kaasaegne stack ja üks sealne kiht suisa ADAst inspiratsiooni saanud. sobib teisele planeedile, sobib ka hävitajasse.
aga teema võiks ümber nimetada "missioonikriitiline tarkvaraaraendus" vmt, sest see valdkond on üpris põnev ning see ei koosne ainuüksi ADAst.
et kui tegemist pole just rauatükiga, millel on töökindel analoogarvuti hammasrataste ja väntadega, siis igas kaasaegses jupstükis on veidi koodi sees.
Tehtud!
Kriku
Re: Missioonikriitiline tarkvaraaraendus
SpaceX kasutab missioonikriitilises osas C++'i ja kohandatud Linuxit. Kood jookseb ühes thread-is ja kasutatakse üksikuid kõrge kvaliteediga teeke.
Kõigile tuttavad keskkonnad kaaluvad puudused üles. Riistvaraga on lihtsam ja arendajaid lõputult saada. Ilmselt nad tegid targa kompromissi. Range keele puudumist kompenseerib neil põhjalik testimine, ka varakult hardware-in-the-loop. Kiiresti liikudes saab lõpuks funktsionaalsema tarkvara, mis teeb ka päris elus õiged asju. Iga startiva Falconi peal jooksvat uut koodi ja näe, ei kuku alla.
Kosmoses on veel selline nüanss, et isegi kui su tarkvara on formaalloogiline lumehelbeke, võib kosmiline kiirgus bitid sassi lüüa ja nagunii on robutset tervikut vaja, mis peab vastu ka siis, kui mõnda arvutit restarditakse.
Kõigile tuttavad keskkonnad kaaluvad puudused üles. Riistvaraga on lihtsam ja arendajaid lõputult saada. Ilmselt nad tegid targa kompromissi. Range keele puudumist kompenseerib neil põhjalik testimine, ka varakult hardware-in-the-loop. Kiiresti liikudes saab lõpuks funktsionaalsema tarkvara, mis teeb ka päris elus õiged asju. Iga startiva Falconi peal jooksvat uut koodi ja näe, ei kuku alla.
Kosmoses on veel selline nüanss, et isegi kui su tarkvara on formaalloogiline lumehelbeke, võib kosmiline kiirgus bitid sassi lüüa ja nagunii on robutset tervikut vaja, mis peab vastu ka siis, kui mõnda arvutit restarditakse.
Re: Missioonikriitiline tarkvaraaraendus
Kriku kirjutas:Pean silmas levinud praktikat, et tarkvara kirjutatakse koos automaattestidega.
probleemid tekivad täna enamasti integratsioonis teiste tükkidega, mitte üksiku tükiga. sõltumata sellest kas tükkidel on automaattestid või mitte.
siin tulevad appi integratsioonitestid, aga päris maailma sa ikkagi laboritingimustes ei taastooda. niiet integratsioonitestidega saad sa pigem mingisuguse kindluse, et vajalik funktsionaalsus toimib hea ilma korral ja kui tuul on õigest suunast.
veidi lihtsam on, kui kõik liikuvad osad on sinu kontrolli all, aga tänasel pilvede ja kolmandate osapoolte kaasamise ajastul ei pruugi see alati nii olla ning pauk võib tulla luuavarrest kohas, kus ei oska arvatagi.
ehk et teoorias on kõik ilus, praktikas aga maadeldakse enamasti tööjõu ja ajaga ning backlog tehnilise taagaga pigem kasvab ning nõnda tekibki hunnik ifelsesid äärejuhtumite katmiseks.
natuke lektüüri ka:
- https://www.misra.org.uk - Motor Industry Software Reliability Association ... best practices by leading developers ... automotive, aerospace, telecom, medical devices, defense, railway
http://www.stroustrup.com/JSF-AV-rules.pdf - Joint Strike Fighter Air Vehicle coding standards
ja siis on veel mõned European Organisation for Civil Aviation Equipment poolt defineeritud või viidatud teemad:
- Aircraft & Systems Development (ARP-4754A/ED-79A)
Safety Assessment (ARP-4761/ED-135)
Environmental Testing (DO-160G/ED-14G)
Integrated Modular Avionics (DO-297/ED-124)
Flight Electronic Hardware (DO-254/ED-80)
Flight Software (DO-178C/ED-12C)
Ground Systems (DO-278A/ED-109A)
AQAP 2110 NATO Quality Assurance Requirements for Design, Development and Production
AQAP 2120 NATO Quality Assurance Requirements for Production
AQAP 2210 NATO Supplementary Software Quality Assurance Requirements to AQAP 2110
nende linke ei viitsinud otsida, aga google abiga leiab
Re: Missioonikriitiline tarkvaraaraendus
Jah, mainisin neid vastates konkreetsele Madise ütlusele, mitte kui imettegevat eliksiiri või hõbekuuli.dorpat kirjutas:probleemid tekivad täna enamasti integratsioonis teiste tükkidega, mitte üksiku tükiga. sõltumata sellest kas tükkidel on automaattestid või mitte.
Et siis, kui peab unit testi kirjutama, siis see paneb IMHO mõtlema natuke sarnaselt sellele, kui peaks muutujaid defineerima koos lubatud väärtusvahemikega... Kuigi hiljem.
Miks Venemaa Ukrainas sõdib?
Kas Ukraina kaotab?
2015 jaanuari pealetung
Karmi käega valitsus Ukrainale?
Islamiterroristide hord tuleb?
Moskva jaoks ei võimutse separatistid mitte Donetskis ega Luganskis, vaid Kiievis.
Kas Ukraina kaotab?
2015 jaanuari pealetung
Karmi käega valitsus Ukrainale?
Islamiterroristide hord tuleb?
Moskva jaoks ei võimutse separatistid mitte Donetskis ega Luganskis, vaid Kiievis.
-
- Liige
- Postitusi: 3353
- Liitunud: 20 Dets, 2019 13:30
- Kontakt:
Re: Missioonikriitiline tarkvaraarendus
Aga rääkides progemiskeeltest, siis üks kõige loogilisemaid kontseptsioonilt on siiski puhas C, jah peab rohkem ridasid kirja panema, tõsi aga mingi OOP Garbage Collector'i mõttemall, et keegi koristab sinu sita koodi pasa ära, see just väga ei soosi mõtlemist, et kuidas loogiliselt progeda. Ja kui Garbage Collector feilib, no siis on crash... kas neid vähe näha on olnud, poetabloodel, ühistranspordis ja ka lennunduses... tuletan seda International Date Line intsidenti meelde F-22'ega.
esimene link mis pihku jäi: https://www.defenseindustrydaily.com/f2 ... ine-03087/
veel: https://www.engadget.com/2007-02-27-f-2 ... Gdh3-2At1o
esimene link mis pihku jäi: https://www.defenseindustrydaily.com/f2 ... ine-03087/
veel: https://www.engadget.com/2007-02-27-f-2 ... Gdh3-2At1o
Viimati muutis Hydrazine, 25 Mai, 2021 13:11, muudetud 1 kord kokku.
Re: Missioonikriitiline tarkvaraarendus
GC ja OOP pole omavahel seotud kontseptsioonid.
---
Suurem osa postitusi läksid teemaväliste muljetustena prügikasti.
Kui teema on "Missioonikriitiline tarkvaraarendus", siis ei ole vaja hakata siin aluskontseptsioone nagu OOP lahti seletama.
---
Suurem osa postitusi läksid teemaväliste muljetustena prügikasti.
Kui teema on "Missioonikriitiline tarkvaraarendus", siis ei ole vaja hakata siin aluskontseptsioone nagu OOP lahti seletama.
Miks Venemaa Ukrainas sõdib?
Kas Ukraina kaotab?
2015 jaanuari pealetung
Karmi käega valitsus Ukrainale?
Islamiterroristide hord tuleb?
Moskva jaoks ei võimutse separatistid mitte Donetskis ega Luganskis, vaid Kiievis.
Kas Ukraina kaotab?
2015 jaanuari pealetung
Karmi käega valitsus Ukrainale?
Islamiterroristide hord tuleb?
Moskva jaoks ei võimutse separatistid mitte Donetskis ega Luganskis, vaid Kiievis.
Mida Ukrainast õppida?
kaheldav, kas siin leiduks selle järgitegiaid ja kasutajaidki, arvestades mida meil videos vilksatanud op-süsteemidest arvatakse.Seto haidamakk kirjutas: ↑21 Nov, 2023 17:16 Infotehnoloogia teeb imet-ukrainlaste luure informatsiooni haldamise IT-süsteem. Meie Kaitsevägi vist vajaks ka sellist.
https://www.youtube.com/watch?v=MFnf2EmzgsU
Re: Mida Ukrainast õppida?
KOLT peaks vist midagi sarnast olema mida meil arendatakse.
Mis op süsteemi probleemi silmas pead? Androidi põhiseid tahvleid?
Mis op süsteemi probleemi silmas pead? Androidi põhiseid tahvleid?
Kes on foorumil
Kasutajad foorumit lugemas: Registreeritud kasutajaid pole ja 17 külalist