Efter ett och ett halvt Ärs utveckling har den fjÀrde beta-versionen av operativsystemet Haiku R1 publicerats. Projektet skapades ursprungligen som en reaktion pÄ nedlÀggningen av OS BeOS och utvecklades under namnet OpenBeOS, men bytte namn 2004 pÄ grund av klagomÄl angÄende anvÀndningen av varumÀrket BeOS i namnet. Flera Live-bildfiler (x86, x86-64) har förberetts för att utvÀrdera den nya versionens funktioner. KÀllkoden för större delen av Haiku OS distribueras under den fria MIT-licensen, med undantag för vissa biblioteker, mediekodekar och komponenter som lÄnas frÄn andra projekt.
Haiku OS Àr inriktad pÄ persondatorer och anvÀnder en egen kÀrna, byggd pÄ en modulÀr arkitektur, optimerad för hög responsivitet pÄ anvÀndarens handlingar och effektiv körning av flertrÄdiga applikationer. Ett objektorienterat API har tillhandahÄllits för utvecklare. Systemet baseras direkt pÄ teknologier frÄn BeOS 5 och syftar till binÀr kompatibilitet med applikationer för detta OS. Minimikravet för hÄrdvaran Àr en CPU Pentium II och 384 MB RAM (rekommenderat Àr Intel Core i3 och 2 GB RAM).
Som filsystem anvÀnds OpenBFS, som stöder utökade filattribut, journaling, 64-bitars pekare, stöd för lagring av metataggar (för varje fil kan man spara attribut i form av nyckel=vÀrde, vilket gör filsystemet liknande en databas) och speciella index för att pÄskynda uppslag. För att organisera katalogstrukturen anvÀnds "B+ tree"-trÀd. FrÄn koden i BeOS ingÄr filhanteraren Tracker och panelen Deskbar i Haiku, vars kÀllkod blev öppen efter att BeOS försvann.
Huvudsakliga nyheter:
- Arbetet pÄ skÀrmar med hög pixeltÀthet (HiDPI) har förbÀttrats. Korrekt skalning av grÀnssnittet har implementerats, vilket inte begrÀnsas till att bara Àndra teckenstorlekar. Vid första uppstart försöker Haiku nu automatiskt att identifiera om en HiDPI-skÀrm finns och vÀljer nödvÀndiga storlekar för skalning. De valda instÀllningarna kan Àndras i instÀllningarna, men för att de ska tillÀmpas krÀvs fortfarande en omstart. Skalningsparametrarna stöds av de flesta inbyggda applikationer och nÄgra portade, men inte alla.
- Möjligheten att anvÀnda ett utseende med en platt fönsterdekorator och ett platt utformning av knappar har tillhandahÄllits, istÀllet för en design som aktivt anvÀnder gradienter. Den platta designen levereras i paketet Haiku Extras och aktiveras i avsnittet för utseenderegler.

- Ett lager för att sÀkerstÀlla kompatibilitet med Xlib-biblioteket har lagts till, vilket gör det möjligt att köra X11-applikationer i Haiku utan att starta en X-server. Lagret har implementerats genom att emulera Xlib-funktioner genom att översÀtta anrop till Haikus hög-nivÄ grafiska API.
- En mellanlager har skapats för att sÀkerstÀlla kompatibilitet med Wayland, vilket gör det möjligt att köra toolkit och applikationer som anvÀnder detta protokoll, inklusive applikationer som bygger pÄ GTK-biblioteket. Mellanlagret tillhandahÄller biblioteket libwayland-client.so, baserat pÄ koden frÄn libwayland och kompatibelt pÄ API- och ABI-nivÄ, vilket gör det möjligt att köra Wayland-applikationer utan förÀndringar. Till skillnad frÄn typiska sammansatta servrar Wayland, startas inte mellanlagret som en separat serverprocess, utan laddas som en plugin till klientprocesserna. IstÀllet för sockets i servern en inbyggd meddelandecykel baserad pÄ BLooper.
- Genom mellanlager för kompatibilitet med X11 och Wayland har en fungerande port av GTK3-biblioteket kunnat förberedas. Av de applikationer som kan köras via porten kan nÀmnas GIMP, Inkscape, Epiphany (GNOME Web), Claws-mail, AbiWord och HandBrake.

- En fungerande port med Wine har lagts till, som kan anvÀndas för att köra Windows-applikationer i Haiku. Bland begrÀnsningarna noteras möjligheten att köra endast i 64-bitarsversioner av Haiku och att endast 64-bitars Windows-applikationer kan köras.

- En port av textredigeraren GNU Emacs, som fungerar i grafiskt lÀge, har lagts till. Paketen finns i HaikuDepot-repositoriet.

- I filhanteraren Tracker har stöd för att generera och visa bildminiatyrer lagts till. Miniatyrer sparas i filernas utökade attribut.

- Ett lager för kompatibilitet med FreeBSD-drivrutiner har genomförts. Drivrutiner för att stödja trÄdlösa USB-adaptrar med Realtek (RTL) och Ralink (RA) chip har portats frÄn FreeBSD. Bland begrÀnsningarna noteras att enheten mÄste kopplas in före starten (efter starten kan enheten inte identifieras).
- FrÄn OpenBSD har det trÄdlösa 802.11-stacket med stöd för 802.11ac och drivrutinerna iwm och iwx för Intel «Dual Band» och «AX» trÄdlösa adaptrar portats.
- En USB-RNDIS-drivrutin har lagts till, vilket möjliggör drift av en hotspot via USB (USB tethering) för anvÀndning som ett virtuellt nÀtverkskort.
- En ny NTFS-drivrutin, baserad pÄ biblioteket frÄn NTFS-3G-projektet, har lagts till. Den nya implementeringen Àr mer stabil, stödjer integration med lageret för filcache och ger bra prestanda.
- En översÀttare för att lÀsa och skriva bilder i AVIF-format har lagts till.
- WebblÀsarmotorn HaikuWebKit har synkroniserats med den senaste versionen av WebKit och har konverterats till ett nÀtverksbackend baserat pÄ cURL-biblioteket.
- Bootloader har fÄtt stöd för 32-bitars system med EFI och möjligheten att installera en 64-bitars Haiku-miljö frÄn en 32-bitars EFI-bootloader.
- Kompatibiliteten med POSIX-standarder har förbÀttrats. Arbetet för att ersÀtta anropen i standard C-biblioteket, som tidigare flyttades frÄn glibc, med alternativ frÄn musl fortsÀtter. Stöd för C11-trÄdar och metoder för locale_t har lagts till.
- Drivrutinen för NVMe-enheter har förbÀttrats, stöd för TRIM-operationen har lagts till för att informera enheten om frigjorda block.
- Möjligheten att bygga kÀrnan och drivrutiner med nya versioner av GCC (inklusive GCC 11) har sÀkerstÀllts, men för att bygga systemet krÀvs fortfarande GCC 2.95 pÄ grund av bundet gammal kod för kompatibilitet med BeOS.
- Ăvergripande arbete har utförts för att öka stabiliteten i hela systemet.
KĂ€lla: opennet.ru





