Linux kernel mijenja dijelove vašeg koda iz Assembler u C

programski jezik c

Svima je poznato to Asemblerski jezik je najbrži zbog nekih problema i iz tog se razloga najčešće koristi u jezgri različitih operativnih sustava, a isto se događa i u projektima u stvarnom vremenu u kojima se koristi napredna elektronika. Problem dolazi kasnije, kada taj kôd treba održavati, a nije, a samim tim U slučaju Linux jezgre, programeri su odlučili taj Assembler kôd prevesti u C.

C je najreprezentativniji programski jezik Linux (zapravo, od svih * nix platformi), razvio ga je Dennis Ritchie i Ken Thompson 1972. godine, napravljen je na Unix PDP-11 sustavu i bio je dio Unix verzije 2. S obzirom na visoke performanse i prenosivost, počeo se sve više koristiti u implementaciji operativnih sustava i stoga Linus Torvalds Koristio ga je za svoj projekt kada je davne 1990. godine tražio besplatnu i otvorenu alternativu Minixu.

Naravno, unatoč toliko snaga, Assembler ima neke prednosti u odnosu na C kao što smo spomenuli na početku, pa je ova odluka iznenadila, ali prema onome što komentira Andy Lutomirsky na poštanskim popisima kernela vaš je posao u tijeku i Linux kernel 4.1 bit će prvi koji će uključiti ovo prepisivanje izvornog koda Assembler na C. Točnije, sve što se odnosi na izlaze u korisnički način, koji se trenutno sastoji od mješavine koda iz ova dva programska jezika, ali koji je, s obzirom na njegovo nisko održavanje, sve složeniji prilikom ažuriranja.

Je li to ono kod u Asembleru Dugo se nije ažurirao, a to znači da novi programeri nisu potpuno jasni u vezi s njegovim radom, a što je još gore, ne bi ga bilo lako ažurirati. Stoga, umjesto da pokušaju neke djelomične promjene, oni su odlučili početi mijenjati sve te Assembler rutine u C, a osobno mislim da iako se može izgubiti neka brzina izvršavanja (koja može biti minimalna ako je kod C novi učinkovit) novi i jasni kod uvijek je bolji od zastarjelog i s gotovo nula mogućnosti ažuriranja jer nije dobro shvaćeno kako je provedeno.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   Miguel Mayol Tur dijo

    Na prvom mjestu je ENSAMBLADOR, na španjolskom.

    Drugo, sav jezik mora biti SASTAVLJEN (ili protumačen), pa dobrota rezultata ovisi o PRIPREMAČU (ili tumaču)

    Kako se C kompajler mnogo poboljšao, a asembler vrlo malo (jer je već bio vrlo dobar), danas je razlika kompiliranog programa napisanog na C u odnosu na isti onaj napisan u asembleru zanemariva ili uopće ne postoji (prije njega nije bio).
    Čak je i razlika između kompajliranih (C i drugi) i interpretiranih (Java i drugi) programa također u velikoj mjeri umanjena.

    Budući da je puno lakše održavati C nego asembler, vrlo je dobra odluka napraviti ove promjene u jezgri, kada se rade analize troškova i koristi, slabosti, prijetnje, snage i mogućnosti ili bilo koja druga koja djeluje.
    za donošenje odluka.

    1.    Chigüire bipolarni dijo

      Miguelu Mayolu Turu: Prije svega, svaki programer koji se pohvali da je takav govori ASSEMBLER i razumije engleski jezik. Ostali koriste Visual Basic i nazivaju se programerima. Kakva šteta. I drugo, Asembler NE SASTAVLJA. Programi koji se time bave izravno pretvaraju mnemotehniku ​​u bajtove. Programiranje u Assembleru govori stroju na istom jeziku, ali da bi to bilo malo lakše, koriste se mnemotehnika umjesto izravnog upisivanja odgovarajućih bajtova. Između skupa bajtova i uputa u Assembleru postoji individualna korespondencija. Ali to, naravno, zna samo pravi programer, jedan od onih koji kažu ASSEMBLER. Slijedom toga, nema poboljšanja "pretvarača" od asemblera do opcode-a, jer je programer zadužen za to poboljšanje. C kompajleri (i drugi jezici) prevode upute u unaprijed uspostavljene makro reprezentacije asemblera (ili strojnog koda), a poboljšanja daju kako su te pretvorbe.
      Zašto koristiti C? Jer je lakše pregledati i održati nešto što je čitljivije. Većina ljudi ne razumije izravno kodove anematora ili mnemotehniku. Jednostavno.
      Neću se ni truditi razgovarati o Javi, koja iako je davno nametnuta kao standard, sada prezire one koji razumiju kôd.
      Ali ne vjerujte mi, pitajte Google je li ovo što sam ovdje rekao lažno.
      pozdravi

      1.    eriugihc dijo

        Pozdrav Chigüire, oči mi padaju s lica misleći da ne možeš pisati na španjolskom bez korištenja izraza anglosaksonskog porijekla: kaže se «montažer».
        Naravno, u jednoj se stvari slažem s vama, bolje da ne govorim o javi, jer da biste rekli gluposti, bolje je ostavite. Imao sam prijatelja koji je bio poput vas, ali tesar (ne stručnjak za programiranje) i rekao je da je najbolja ručna pila i ostali alati, a da ne spominjem, čak je i zategnuo vijke s njom. Kakav primjer za slijediti!

  2.   Luis Gerardo Marin dijo

    Engleski jezik uvijek je u osnovi svih računskih pojmova. Tako je to čak i ako mi španjolski govornici to ne želimo. Ovome dodajte da postoje izrazi koji se ne mogu prevesti kao "bit", "byte", "unix", "linux", "DOS" i mnogi drugi. A postoje i neki koji bi se MOGLI prevesti, ali ne postoji pojam kao što su "CMOS", "CSS", "RAM", jer postoje neki inicijali koji nemaju nikakve veze s tehnologijom, a na kraju čak i ne postoje u Google. Nema smisla prevoditi kad je proizvedena poruka nečitka. Zaključak: Poželjno je da se za tehnička ili računska pitanja koriste tehnički izrazi na engleskom jeziku. Iz istog razloga: Više volim napisati da koristim "windows" da bih rekao da koristim "windows" operativnog sustava. I više volim razgovarati o CSS-u i da koristim type = »text / css nego da pokušavam reći da koristim« listove stilova s ​​tipom jednakim dijagonalnim tekstualnim listovima teksta ». Zdravlje.

  3.   Roberto Gomez dijo

    Programi napisani na montažnom jeziku uvijek se sastavljaju, a nikad se ne tumače. Međutim, nema ništa loše u tome da se umjesto španjolskog upotrebljava španjolski. Vlastita imena nikad se ne prevode, ali tehnički izrazi jesu kad nisu popularni akronimi. U svakom slučaju, svatko može govoriti kako hoće, dok mi još uvijek možemo razumjeti.