Missä Kshana toimii ja missä ei
Soveltamisalan raja, kirjoitettu ylös, jotta kukaan ei löydä sitä sitoumuksena kokouksessa.
Lyhenteet: CPU, keskussuoritin; GPU, grafiikkasuoritin; NPU, neuroverkkosuoritin; FPGA, kenttäohjelmoitava logiikkapiiri; MCU, mikrokontrolleri; RTOS, reaaliaikakäyttöjärjestelmä; OPS-SAT, Euroopan avaruusjärjestön kiertoradalla toimiva ohjelmistolaboratoriosatelliitti; PyPI, Python Package Index; MCP, Model Context Protocol; AI, tekoäly; JSON, JavaScript Object Notation.
Ajot#
| Kohde | Miten | Huomautukset |
|---|---|---|
| Linux-, macOS- ja Windows-työasemat ja -palvelimet, x86-64 ja 64-bittinen ARM | binääri kshana tai Rust-crate |
julkaisubinäärit Linux x86-64:lle, macOS:lle (Apple silicon ja Intel) ja Windows x86-64:lle; muilla kohteilla cargo install kshana rakentaa sen |
| Python 3,9 tai uudempi | wheel-paketti PyPI:ssä: kshana (--features python) |
wheel-paketit Linuxille, macOS:lle ja Windowsille, x86-64 ja 64-bittinen ARM |
| MCP-asiakkaat (tekoälyagentit) | palvelin kshana-mcp: cargo install kshana-mcp, tai konttikuva |
kuva alustoille linux/amd64 ja linux/arm64 |
| Selaimet ja JavaScript-ajoympäristöt | WebAssembly-paketti npm:ssä (--features wasm) |
sama moottori käännettynä WebAssemblyksi |
| Pieni tietokone veneessä vastaanottimen vieressä | vertailutoteutus hakemistossa deploy/reference-build/: kshana receiver-trust live ja portti, julkaisu Signal K:hon ja valinnaisesti OpenCPN:ään |
ohjeellinen, ei tyyppihyväksytty navigointilaite; projekti ei ole testannut sitä aluksella; katso MARINE-INTEGRATIONS.md |
| Signal K -palvelimet | laajennus hakemistossa integrations/signalk/ |
toimitetaan mukana ja yksikkötestattu tallennetulla synteettisellä tulosteella; ei julkaistu npm:ssä |
| OpenCPN | portti-tilan NMEA 0183 TCP:n yli monitorilta | valinnainen; katso MARINE-INTEGRATIONS.md |
| Linux-luokan hyötykuormatietokoneet | Rust-crate tai binääri, ristiinkäännettynä | OPS-SAT-luokan hyötykuormatietokoneet ja vastaavat |
| Reunasolmut, joissa on GPU, NPU tai FPGA Linux-suorittimen rinnalla | Linux-suorittimella | Kshana ei käytä mitään kiihdyttimistä; se toimii niiden rinnalla |
Ei toimi#
Paljas laitteisto -tason lento-ohjain (MCU) tai pieni RTOS ilman Rustin standardikirjastoa. Kshana on kauttaaltaan crate (std): se varaa muistia keosta, lukee tiedostoja, muotoilee JSONia ja käyttää standardikirjaston liukulukufunktioita. Rakennetta (no_std) ei ole, eikä mitään ominaisuutta, joka sellaisen tuottaisi.
Päätös: emme tarjoa lentoydintä (no_std). Sellaisen rakentaminen olisi erillinen tuote omine todentamistaakkoineen, ja se veisi Kshanan lentoohjelmistoon, jossa kelpuutus on oma hankkeensa ja jonka läpi meillä ei ole reittiä.
Mitä tehdä sen sijaan#
- Aja Kshana maassa tai hyötykuormatietokoneella ja lataa sen tulokset lennolle. Skenaariolaji
slot-timingtuottaa täsmälleen ne luvut, joita lentotietokone tarvitsee: paikannustahdin, rikkoutumishetken ja suojavälin. Niistä muodostuva taulukko vie vain muutaman tavun. - Siirrä suljettu muoto, jos vain sitä tarvitaan. Holdover-käänteisfunktio on lyhyt monotoninen juurenhaku polynomivarianssista, ja sen yhtälöt on dokumentoitu tiedostossa
SLOT-TIMING.md. Sen toteuttaminen uudelleen lentokoodissa on suoraviivaista; Kshanasta johdettu koodi pysyy Kshanan lisenssin alaisena.
Myös soveltamisalan ulkopuolella#
Kovan reaaliajan takuut (Kshana varaa muistia eikä esitä väitettä pahimman tapauksen suoritusajasta); minkään lentokelpuutus; sekä synkronointiprotokolla, säädin tai reitityskokonaisuus. Kshana tuottaa ajoitustodisteet, joita vasten nämä järjestelmät suunnitellaan. Se ei ole yksikään niistä.