Kompania Google prezantoi kompleksin programor dhe harduerik Open Se Cura, i fokusuar në lehtësimin e krijimit të çipëve të sigurt, të destinuar për zgjidhjen e problemeve që lidhen me mësimin machine dhe inteligjencën artificiale. Projekti përfshin sistemin operativ CantripOS dhe harduerin, i bazuar në platformën OpenTitan dhe bërthamën e procesorit mbi arkitekturën RISC-V. Gjatë zhvillimit, Open Se Cura dhe CantripOS u zhvilluan nën emrat Sparrow dhe KataOS, por për të shmangur përputhjen me projekte të tjera, produktet përfundimtare u rishikuan. Të dhënat e projektit, duke përfshirë tekstet burimore të shërbimeve sistemore dhe skemat RTL (Register Transfer Level), shpërndahen nën licencën Apache 2.0.
Sistemi operativ CantripOS bazohet në mikro-bërthamën seL4, mbi të cilën ekzekutohet një mjedis sistemik i shkruar në gjuhën Rust. Në sistemet RISC-V, mikro-bërthama seL4 ka një provë matematikore të besueshmërisë që dëshmon për përmbushjen e plotë të kodit me specifikimet e caktuara në një gjuhë formale. Arkitektura seL4 është e njohur për ndarjen e pjesëve për menaxhimin e burimeve të bërthamës në hapësirën e përdoruesit dhe për aplikimin e të njëjtave mjete të ndarjes së qasjes për këto burime si për burimet e përdoruesit.
Mikro-bërthama nuk ofron abstraksione të larta të gatshme për menaxhimin e skedarëve, proceseve, lidhjeve rrjetësore, etj., përkundrazi, ajo ofron vetëm mekanizma minimal për menaxhimin e qasjes në hapësirën fizike të adresimit, ndërprerjeve dhe burimeve të procesorit. Abstraksionet e larta dhe drajverët për ndërveprimin me harduerin implementohen veçmas mbi mikro-bërthamën në formën e detyrave që ekzekutohen në nivelin e përdoruesit. Qasja e këtyre detyrave në burimet që ka mikro-bërthama organizohet nëpërmjet përcaktimit të rregullave.
Të gjitha komponentët e OS-së, përveç mikrokernelit, janë shkruar fillimisht në gjuhën Rust duke përdorur teknika të sigurta programimi që minimizojnë gabimet gjatë punës me memorjen. Në Rust, ndër të tjera, janë shkruar ngarkuesi i aplikacioneve në mjedisin seL4, shërbimet sistemore, korniza për zhvillimin e aplikacioneve, API për qasje në thirjet sistemore, menaxheri i proceseve dhe mekanizmi i shpërndarjes dinamike të memorjes.
Për ndërtimin e vërtetuar përdoret mjeti CAmkES, i zhvilluar nga projekti seL4. Për zhvillimin e aplikacioneve finale që mund të ngarkohen dinamikisht nga shërbimet sistemore, propozohet përdorimi i SDK AmbiML, dhe për ekzekutimin e modeleve të mësimit të makinerive, mjeti IREE (Intermediate Representation Execution Environment). Komponentët në Rust dhe shërbimet sistemore janë zhvilluar duke përdorur kornizat Cantrip.
Fushat e aplikimit të platformës përfshijnë çipat e specializuar që kërkojnë një nivel të veçantë mbrojtjeje dhe konfirmimi të mungesës së defekteve. Për shembull, platforma mund të përdoret në produkte të mësimit të makinerive që lidhen me përpunimin e informacionit të ndjeshëm, siç janë sistemet e njohjes së njerëzve dhe përpunimi i regjistrimeve të zërit. Kombinimi i një bërthamë operativ sistem të verifikuar logjikisht me komponentët harduerikë të besueshëm (RoT, Root of Trust) garanton që në rast të një defekti në një pjesë të sistemit, ky defekt nuk do të përhapet në pjesën tjetër të sistemit, dhe veçanërisht në bërthamë dhe pjesët kritike.
Përveç Google, në zhvillimin e mjeteve dhe elementeve të infrastrukturës kanë kontribuar organizata jofitimprurëse lowRISC, e cila mbikëqyr zhvillimin e mikroprocesorit të lirë mbi bazën e arkitekturës RISC-V, si dhe kompanitë Antmicro dhe VeriSilicon. Procesori i zhvilluar nga lowRISC është përdorur si bërthamë për ndërtimin e komponentëve hardware të besueshëm (RoT, Root of Trust). Kompania Antmicro ofroi një simulator Renode për projektin, i cili lejon testimin e CantripOS dhe mikroakullores seL4 pa pajisje reale. Kompania VeriSilicon ndau përvojën e saj në krijimin e çipave dhe zhvillimin e BSP (Paketa e Mbështetjes së Bordit).
Burimi: opennet.ru
