Kompania Vivo ka hapur kodin e kernelit BlueOS, i shkruar në gjuhën Rust

Kompania Vivo, që mban thuajse 10% të tregut botëror të smartphone-ve (vendi i 5-të midis prodhuesve të smartphone-ve), prezantoi lëshimin e parë zyrtar të hapur të bërthamës së sistemit operativ BlueOS (Blue River OS). Sistemi operativ BlueOS është në zhvillim që prej vitit 2018 dhe përdoret tashmë në orët inteligjente të serisë Vivo Watch. Vivo përgatit gjithashtu përdorimin e BlueOS në syze inteligjente, robotë, termine inteligjente dhe pajisje konsumatore AI. Kodi i bërthamës është shkruar në gjuhën Rust dhe është hapur nën licencën Apache 2.0. Po ashtu, kornizat sistemore të BlueOS janë shkruar në Rust.

Sistemi operativ BlueOS fillimisht është zhvilluar me fokus në sigurimin e sigurisë dhe përdor gjuhën Rust për të parandaluar shfaqjen e dobësive që shkaktohen nga gabimet gjatë manipulimit të memories, të cilat për statistikën e Google dhe Microsoft përbëjnë 70% të të gjitha dobësive në sistemet operative. Për të siguruar punimin e sigurt me memorie, në BlueOS përdoret një kombinim nga përdorimi i treguesve inteligjentë gjatë ekzekutimit dhe kontrollit në fazën e kompjilimit, të ofruara nga gjuha Rust (ndjekja e pronësisë së objekteve, kontrolli i huazimit të variablave, llogaritja e kohës së jetës së objekteve).

Bërthama BlueOS (Bërthama Blue River) është optimizuar për konsum minimal të burimeve dhe mund të përdoret në platforma të integruara, pajisje mobile dhe sisteme të internetit të gjërave. Në konfigurimin minimal, bërthama kërkon vetëm 13 KB memorie operativë për të funksionuar. Megjithatë, bërthama mbështet arkitekturën moderne të procesorëve, duke përfshirë ARM dhe RISC-V. Mbi bërthamë është implementuar një bibliotekë standarde C, e cila mbështet ndërfaqet programore, të definuara në standardin POSIX, si dhe bibliotekën rust-std.

Bërthama ofron një planifikues detyrash, një sistem skedari, një mekanizëm menaxhimi të memories, një grackë rrjeti dhe një grup drejtuesish. Mbështeten disa algoritme të planifikimit të detyrave, duke përfshirë algoritme për shpërndarjen e barabartë të kuotave të kohës mes proceseve, si dhe algoritme për funksionimin në kohë reale bazuar në llogaritjen e prioriteteve. Disponohen disa algoritme të alokimit të memories, të optimizuara për skenarë të ndryshëm përdorimi.

Ofrohet një sistem skedari i vet, me arkitekturë klasike dhe hierarkike të bazuar në inode, si dhe sisteme skedari tmpfs, devfs, sysfs, procfs, nfs dhe fat32. Gracka TCP/IP mbështet POSIX Socket API, socketfd dhe përpunimin e të dhënave në mënyra bllokuese dhe jo bllokuese, dhe mund të përdoret në konfigurime me disa karta rrjeti. Për të reduktuar ngarkesat gjatë transmetimit të të dhënave, aplikohet një arkitekturë zero-copy, e cila përjashton mbushjen ndërmjetëse.

Për zhvillimin e drejtuesve ofrohet një shtresë për abstrahimin e aksesit në pajisje, e cila lejon krijimin e drejtuesve në gjuhën Rust, si dhe transferimin e drejtuesve në gjuhën C, të krijuar tashmë për bërthama të tjera. Dokumentacioni për bërthamën është ende i kufizuar në udhëzime për ndërtimin dhe testimin, si dhe sugjerime për implementimin e thirrjeve të veta sistemore dhe përshkrimin e tipave të dhënash bazë. Për testim ofrohet përdorimi i QEMU (mps2-an385, mps3-an547, virt-aarch64, virt-riscv64) ose plaka Raspberry Pi Pico2.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster