Western Digital iri kutoshanda pamutyairi weNVMe akanyorwa muRust

RustLinux

Kubatanidzwa kweRust muLinux kwave nedanho repamusoro rekugamuchirwa nenharaunda uye vanogadzira

Munguva ye "Linux Plumbers 2022" musangano izvo zvaienderera mberi mazuva ano, Western Digital injiniya akapa mharidzo pamusoro pekugadzirwa kwemutongi kuyedza SSD NVM-Express (NVMe) yakanyorwa muRust uye kumhanya paLinux kernel level.

Kunyange zvakadaro purojekiti ichiri muchikamu chekutanga chebudiriro, bvunzo dzakaitwa dzakaratidza kuti kuita kweRust NVMe driver kunoenderana nemutyairi weNVMe akanyorwa muC mukernel.

Ndini Matthew Wilcox, ndiri mumwe wevanyori veNVMe spec, ndini ndakakurudzira kuti ndigadzire mutyairi weNVMe kuratidza kukosha kweRust. Yakabudirira kupfuura zvandaitarisira. 

Nezvemushumo wakapihwa iyezvino NVMe C mutyairi anonzi anogutsa zvizere kune vanogadzira, asi iyo NVMe subsystem ipuratifomu yakanaka yekuongorora kugona kwekusimudzira vatyairi muRust, sezvo iri nyore nyore, inoshandiswa zvakanyanya, ine hunyanzvi hwekuita zvinodiwa, ine inotaridzwa yekumisikidzwa kwekuenzanisa, uye inotsigira akasiyana interfaces ( dev, pci, dma, blk-mq, gendisk, sysfs).

Zvinoonekwa kuti iyo Rust PCI NVMe mutyairi anotopa iyo inodiwa mashandiro ekushanda, asi haisati yagadzirira kushandiswa kwakapararira, sezvo ichida zviwedzere zvakasiyana.

Zvirongwa zveramangwana zvinosanganisira kubvisa mabhuroko aripo asina kuchengeteka, tsigiro yekubvisa mudziyo uye kurodha mutyairi, tsigira sysfs interface, ita simbe yekutanga, gadzira chidzori cheblk-mq, uye edza neasynchronous programming modhi ye queue_rq.

Uyezve, tinogona kunongedzera miedzo yakaitwa neNCC Group kugadzira vatongi mumutauro weRust we iyo FreeBSD kernel. Semuenzaniso, yakapusa echo controller inodzosa data yakanyorwa kune iyo /dev/rustmodule. Muchikamu chinotevera chekuyedza, iyo NCC Boka iri kufunga nezve reworking core components muRust kuvandudza kuchengetedzwa kwetiweki uye mafaera mashandiro.

Izvozvo zvakati, kunyange zvakaratidzwa kuti zvinokwanisika kugadzira ma modules muRust, kusanganisa kusanganisa kweRust muFreeBSD kernel kunoda rimwe basa.

Semuenzaniso, anotaura kudiwa kwekugadzira seti yekubvisa zvidimbu pamusoro pe kernel subsystems uye zvimiro, zvakafanana nemapulagi akagadzirirwa neRust chirongwa cheLinux. Mune ramangwana, isu tinoronga kuita zviedzo zvakafanana neIllumos musimboti uye kuratidza zvakajairika zvinobatika muRust zvinogona kushandiswa mumadhiraivha akanyorwa naRust yeLinux, BSD, uye Illumos.

Sekureva kweMicrosoft neGoogle, inosvika makumi manomwe muzana ekusagadzikana mune zvigadzirwa zvesoftware nekuda kwekusachengeteka ndangariro.

Kushandisa mutauro weRust kunofanirwa kuderedza njodzi yekusagadzikana inokonzerwa nekusachengeteka kubata ndangariro uye ichabvisa kuitika kwezvikanganiso sekuwana nzvimbo yendangariro mushure mekunge yasunungurwa uye buffer kufashama.

Kuchengetedzwa kwendangariro kunopihwa muRust panguva yekuunganidza nekutarisa mareferensi, kuteedzera chinhu muridzi, uye chinhu hupenyu hwese (chiyero), pamwe nekuongorora iko kurongeka kwekuyeuka kwekuwana panguva yekuitwa kwekodhi.

ngura inopawo kuchengetedzwa kwehuwandu hwekufashukira, inoda kuti misiyano itange kushandiswa isati yashandiswa, inobata zvirinani zvikanganiso muraibhurari yakajairika, inosimbisa pfungwa yezvisingachinjiki uye mareferensi nekukasira, uye inopa yakasimba static kutaipa kuderedza zvikanganiso zvine musoro.

Zvakakodzera kutaura kuti zvingaite kuti basa remangwana rienderane nebasa rakaburitswa naMiguel Ojeda pavatyairi vake ve "Rust for Linux", iyo yakaunzwa senhevedzano yezvigamba.

Finalmente kana iwe uchifarira kuziva zvakawanda nezvazvo, unogona kutarisa ruzivo mu chinotevera chinongedzo.


Siya yako yekutaura

Your kero e havazobvumirwi ichibudiswa. Raida minda anozivikanwa ne *

*

*

  1. Inotarisira iyo data: Miguel Ángel Gatón
  2. Chinangwa cheiyo data: Kudzora SPAM, manejimendi manejimendi.
  3. Legitimation: Kubvuma kwako
  4. Kutaurirana kwedata
  5. Dhata yekuchengetedza: Dhatabhesi inobatwa neOccentus Networks (EU)
  6. Kodzero: Panguva ipi neipi iwe unogona kudzora, kupora uye kudzima ruzivo rwako