Seata de ghoireasan POSIX agus decoder AV1 sgrìobhte ann an Rust

Chaidh foillseachadh a’ phròiseict posixutils-rs 0.2.1 fhoillseachadh, ag amas air cruinneachadh de ghoireasan loidhne-àithne a tha air an ainmeachadh ann an inbhe POSIX a leasachadh anns a’ chànan Rust agus a’ coinneachadh ris na riatanasan aige (cp, mv, awk, make, vi, find, sort, wc, xargs, sh, m4, sed, etc.). Rè leasachadh, nuair as urrainnear, bithear a’ cleachdadh na pacaidean crate a th’ ann mar-thà. Tha an còd posixutils-rs air a chuairteachadh fo chead MIT.

Tha am pròiseact ag amas gu sònraichte air a bhith a’ coileanadh gèilleadh ri riatanasan an t-sònrachadh POSIX.2024 agus chan eil e an dùil a bhith a’ toirt seachad co-chòrdalachd le goireasan GNU, agus tha na h-ùghdaran a’ faicinn comas-gnìomh mar rud mì-reusanta. Ach, tha posixutils-rs an dùil na roghainnean goireasach GNU adhartach as mòr-chòrdte a lorgar ann an sgriobtaichean a tha ann mu thràth a chuir an gnìomh.

Tha eadar-dhealachaidhean bhon phròiseact uutils, a bhios a’ leasachadh buileachadh GNU Coreutils ann an Rust, a’ toirt a-steach raon nas fharsainge de ghoireasan, a’ toirt a-steach, am measg rudan eile, cruthachadh cho-phàirtean siostam POSIX mar vi, awk, bc, m4, cron agus an compiler c99, a bharrachd air dòigh-obrach minimalistic, a tha a’ ciallachadh a bhith a’ toirt seachad dìreach an t-seata roghainnean as ìsle a tha air am mìneachadh ann an sònrachadh POSIX no a tha duilich a dhèanamh às aonais. Tha na prògraman anns an t-sreath posixutils-rs air an toirt seachad an toiseach mar chòd fèin-chumanta a ghabhas cleachdadh ann am pròiseactan eile.

An-dràsta, tha 55 goireas a chaidh a leasachadh leis a’ phròiseact a’ cumail ri POSIX agus tha iad aig ìre còmhdach deuchainn, tha 22 goireas a’ toirt seachad an comas-gnìomh riatanach (ach cha deach craoladh deuchainn a chuir an gnìomh fhathast), tha 20 aig an ìre dreach, agus chan eil obair air 44 goireas air a dhèanamh. fhathast air tòiseachadh. Am measg nan goireasan le comas-gnìomh gnìomhaichte: awk, basename, bc, cp, cut, chown, date, diff, file, find, grep, ls, snog, ps, sort, strings, tail, tr, tty, wc, uniq. Am measg nan goireasan, tha obair air nach do thòisich: crontab, c17, cflow, ctags, gettext, ed, ex, iconv, lex, locale, mailx, dèanamh, paiste, pax, sed, sh, sccs, yacc, uucp, vi .

Tha atharrachaidhean anns an fhoillseachadh ùr a’ toirt a-steach cur an gnìomh an awk, m4, ps, realpath, join, time, fuser agus goireasan gencat, a bharrachd air taic tùsail airson a bhith ag obair ann an àrainneachdan stèidhichte air leabharlann musl C agus solar an ftw. leabharlann airson rèis slighe chraobhan seòlaidh fo dhìon na stàite.

A bharrachd air an sin, is urrainn dhuinn a thoirt fa-near gun deach am pròiseact rav1d ainmeachadh, a tha a’ leasachadh decoder àrd-choileanadh airson cruth còdadh bhidio AV1, sgrìobhte ann an cànan Rust. Tha leasachadh air a dhèanamh le bhith a’ giùlain còd decoder leabharlann dav1d, a tha air a chomharrachadh le àrd-choileanadh, gu Rust. Tha am port ullaichte gu tur co-chòrdail ri API leabharlann dav1d. Tha an roghainn leabharlann a th’ ann mar-thà a phortadh an àite a bhith a’ sgrìobhadh an dreach againn fhèin air a mhìneachadh leis a’ mhiann a bhith a’ cleachdadh decoder a tha air a dhearbhadh agus air a dhearbhadh mar-thà mar bhunait gus duilgheadasan co-chòrdalachd a sheachnadh agus gus aire a thoirt do gach iom-fhillteachd a bhith ag obair le cruth AV1.

Mar a tha e an-dràsta, tha buileachadh ullaichte rav1d 6% air cùl dav1d ann an coileanadh, ach san àm ri teachd, às deidh an còd a bharrachadh, thathas an dùil co-ionannachd coileanaidh a choileanadh. Gus àrd-choileanadh a choileanadh, chaidh dòigh-obrach a chleachdadh anns am bi na gnìomhan bunaiteach airson luachan prìomhadail a dhì-chòdachadh air an cur an gnìomh ann an assembler ann an cruth blocaichean mì-shàbhailte (tha còd cruinneachaidh bho dav1d air a chleachdadh), agus gheibhear an dàta às deidh sgrùdadh le parsadh sruthan. gnìomhan sgrìobhte ann an Rust (tha eòlas san àm a dh’ fhalbh ann a bhith a’ comharrachadh so-leòntachd ann an decoders bhidio a’ sealltainn gu bheil duilgheadasan ag èirigh gu ìre mhòr ann an còd parsaidh cruth àrd-ìre, seach ann an gnìomhachd dàta ìre ìosal).

Source: fosgailtenet.ru

Cuir beachd ann