Msakatuli wopangidwa ndi polojekiti ya SerenityOS adapambana mayeso a Acid3

Opanga makina ogwiritsira ntchito a SerenityOS adanenanso kuti msakatuli wopangidwa ndi polojekitiyi adapambana mayeso a Acid3, omwe amagwiritsidwa ntchito kuyesa asakatuli kuti athandizire miyezo yapaintaneti. Zimadziwika kuti mwa asakatuli atsopano otseguka omwe adapangidwa pambuyo pa kupangidwa kwa Acid3, SerenityOS Browser idakhala pulojekiti yoyamba yopambana mayeso.

Msakatuli wopangidwa ndi polojekiti ya SerenityOS adapambana mayeso a Acid3

Mayeso a Acid3 adapangidwa mu 2008 ndi Ian Hickson, woyambitsa mafotokozedwe a HTML5 komanso wolemba nawo mafotokozedwe a CSS. Acid3 imaphatikizanso mayeso 100 okonzedwa ngati ntchito zomwe zimabweretsa zotsatira zoyezetsa kapena zowonetsa. Mayesowa amakhudza madera osiyanasiyana monga ECMAScript, HTML 4.01, DOM Level 2, HTTP/1.1, SVG, XML, etc. Mayeserowa adasinthidwa mu 2011, koma chifukwa cha kusintha kwa machitidwe amakono a intaneti, Chrome ndi Firefox zamakono zimadutsa mayesero 97 okha mwa 100 Acid3 mayesero.

SerenityOS Browser imalembedwa mu C++ ndikugawidwa pansi pa chilolezo cha BSD. Pulojekitiyi imagwiritsa ntchito injini yake ya msakatuli LibWeb ndi womasulira JavaScript LibJS, zoyikidwa m'malaibulale akunja. Pali chithandizo chakugwiritsa ntchito code yapakatikati ya WebAssembly. Kuti muthandizire ma protocol a HTTP ndi HTTPS, malaibulale a LibHTTP ndi LibTLS akupangidwa.

Tikumbukire kuti projekiti ya Serenity ikupanga makina ogwiritsira ntchito a Unix a x86 ndi x86_64, okhala ndi kernel yake ndi mawonekedwe ojambulira, opangidwa mwanjira yamachitidwe ogwiritsira ntchito kumapeto kwa zaka za m'ma 1990. Chitukuko chikuchitika kuyambira pachiyambi, chifukwa cha chidwi ndipo sichitengera ndondomeko ya machitidwe omwe alipo. Olembawo adadzipangira okha cholinga chobweretsa SerenityOS pamlingo woyenera pa ntchito ya tsiku ndi tsiku, kusunga zokongola za machitidwe ochedwa 90s, koma kuwonjezera malingaliro othandiza kwa ogwiritsa ntchito mphamvu kuchokera ku machitidwe amakono.

SerenityOS kernel imati imathandizira zinthu monga preemptive multitasking, kugwiritsa ntchito njira zoteteza zida (SMEP, SMAP, UMIP, NX, WP, TSD), multithreading, IPv4 stack, Ext2-based file system, POSIX sign, mmap(), mafayilo omwe angathe kuchitika mumtundu wa ELF, pseudo-FS/proc, sockets Unix, pseudo-terminals, zida za mbiri.

Malo ogwiritsira ntchito amakhala ndi oyang'anira ophatikizika ndi otonthoza (WindowServer, TTYServer), chipolopolo cha mzere wolamula, laibulale yanthawi zonse ya C (LibC), zida zogwiritsiridwa ntchito bwino komanso malo ojambulira potengera mawonekedwe ake a GUI (LibGUI, LibGfx, LibGL). ) ndi ma widget. Kuyika kwazithunzithunzi kumaphatikizapo kasitomala wa imelo, malo opangira mawonekedwe owoneka bwino HackStudio, mkonzi wamawu, audio synthesizer, woyang'anira mafayilo, masewera angapo, mawonekedwe oyambitsa mapulogalamu, mkonzi wamafonti, woyang'anira mafayilo, terminal emulator, kasinthidwe, wowonera PDF, chojambula cha PixelPaint, chosewerera nyimbo, mkonzi wamasamba, chosewerera makanema.

Msakatuli wopangidwa ndi polojekiti ya SerenityOS adapambana mayeso a Acid3


Source: opennet.ru

Kuwonjezera ndemanga