C ++ paLinux, musoro wacho unomutsiridzwa mushure memakore matanhatu

Linux C++

Iko kushandiswa kweC ++ muLinux kwakakurudzirwa zvakare

Zvinoita sekudaro kuiswa kweRust semutauro wechipiri kuronga muLinux Kernel yakamiririra imwe yekuchinja kwakakosha iyo Linux yanga iine uye isingataure muchikamu chezvimiro uye mashandiro, asi yakaratidza yakakosha poindi yekutanga munzira iyo Linus Torvalds nechikwata chebudiriro vakatora nhanho yakakosha yekuvandudza Linux kuti ive nani.

Izvi zvinogona kucherechedzwa, kubvira munguva pfupi yapfuura, pane Linux kernel mailing list hurukuro yamutsiridzwa iyo yakavambwa makore matanhatu apfuura, ichiita zvekuseka Kubvumbi 1, 2018.

Uye yakadzoserwa patafura zvakare. nyaya ye "kugoneka kwekutora yemazuva ano C ++ kodhi muLinux kernel", kuenda mhiri kwechinyakare kushandiswa kwemutauro weC uine zvimedu zvekuunganidza uye kusimudzirwa kweRust mutauro.

Chikumbiro chekutanga chakatangwa muna 2018, nainjiniya yeRed Hat sejee yemhemberero yebenzi yaApril inozivikanwa, umo vazhinji vanotora mukana wekugadzira pranks munharaunda uye panguva iyoyo zvaive zvakadaro, sezvo yainzi yakaburitsa seti ye45 zvigamba zvaisanganisira kushandiswa kwematemplate, nhaka yekirasi uye. kuwandisa kweC ++ mabasa.

Sekuona kwangu, C++ 14 ndiyo "diki" vhezheni ine zvine musoro metaprogramming rutsigiro uye ine yakawanda isina mhando kubva kune dzakapfuura shanduro (C ++ 11 yaive nezvakawanda, asi C ++ 14 inozadza zvimwe zvakakosha zvisipo). Zvisinei, mumaonero angu, C ++ 20 ndiyo inonyanya kuchinja mutambo; Kunyangwe mavhezheni apfuura aigona kuita akawanda SFINAE hacks, ivo vakapawo zvisingabatsiri mameseji ekukanganisa.

Isu tinoita yakawanda metaprogramming muLinux kernel, inoshandiswa uchishandisa kazhinji anotyisa macro tricks. Izvi zvakare hazvigoneke kugadzirisa. Ngatitorei muenzaniso weuaccess.h mhando hacks, dzimwe dzandakagadzira nekunyora. MuC ++, makanda akasiyana uye zvirevo zvekesi zvinogona kupatsanurwa kuita akapatsanurwa template zviitiko, uye nehungwaru hudiki, zvinhu zvakaita semushandisi nzvimbo inonongedzera kupesana nekernel userspace pointers zvinogona zvakare kusimbiswa zvakasimba, pamwe chete neakatotarwa mashandisirwo enzvimbo, zvichienzaniswa neasina, tisingataure nezve kubata kuri nyore kwenyaya ye32-bit mushandisi wenzvimbo mhando mune 64-bit kernel uye kushandiswa kwe endian kutendeuka.

Zvino, anenge mushure memakore matanhatu eizvi, Hans Peter Anvin, kiyi Intel kernel kuvandudza uye mugadziri wemapurojekiti akadai sesyslinux, klibc uye LANANA, akatanga kuenderera mberi nekurukurirano yacho. Sekureva kwaAnvin, kubvira 1999, mitauro yeC neC ++ yakaona kufambira mberi kwakakura mukukura kwayo, uye mutauro weC ++ waratidza kuve wakakodzera kupfuura C yekuvandudza kernel system.

Anvin inotaura kuti maficha aimboda mamwe ekuwedzera kubva kuGCC, ikozvino inogona kuitwa nyore nyore mune yakajairwa C ++, uye muzviitiko zvakawanda, kushandisa C ++ kuchavandudza zvivakwa pasina kuda kushandura zvachose kodhi.

Pamusoro pazvo, Inokurudzirwa kushandisa kanenge C ++ 14 yakatarwa, iyo inosanganisira metaprogramming zvishandiso, uye kushandiswa kweiyo C ++ 20 tsanangudzo inokurudzirwa, iyo inotanga kutsigirwa kwemafungiro anogona kuderedza kuitika kwekukanganisa.

Zvinopokana kuti C ++ inonyanya kufarirwa pane Rust, sezvo iyo yekupedzisira ichisiyana zvakanyanya mu syntax kubva mumutauro weC, haina kujairika kune vazvino kernel vanogadzira uye haibvumire zvishoma nezvishoma kodhi kodhi. Panyaya yemutauro weC ++, zvinokwanisika kushandura zvikamu zvemutauro weC mutauro zvishoma nezvishoma, zvakafanana neC code inogona kuumbwa seC ++.

Nepo iyo Linux kernel iri kunyanya C kodhi ine zvikamu zvakasiyana-siyana zvakanyorwa mugungano uye kukura basa rakatenderedza Rust rutsigiro muLinux kernel, hazvisati zvanyatsojeka kana paine huremu hwakakwana kuti izvi zvive chokwadi, pamukana wekuona Linux kernel C kodhi. ichashandurwa kuita C++ mune ramangwana.

pakupedzisira kana uri kufarira kuziva zvakawanda nezvazvo, unogona kutarisa ruzivo mu inotevera chinongedzo.


Siya yako yekutaura

Your kero e havazobvumirwi ichibudiswa. Raida minda anozivikanwa ne *

*

*

  1. Inotarisira data: AB Internet Networks 2008 SL
  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