Linuxové jadro mení časti vášho kódu z Assemblera na C.

programovací jazyk c

Všetko je známe Assemblerov jazyk je najrýchlejší z niektorých dôvodov je z tohto dôvodu najpoužívanejší v jadre rôznych operačných systémov a to isté sa deje aj v prípade projektov v reálnom čase, kde sa používa pokročilá elektronika. Problém nastane neskôr, keď bude potrebné tento kód udržiavať, a teda nie je V prípade linuxového jadra sa vývojári rozhodli preložiť tento kód Assembleru do jazyka C..

C je najreprezentatívnejší programovací jazyk Linux (zo všetkých platforiem * nix), bol vyvinutý spoločnosťou Dennis Ritchie a Ken Thompson v roku 1972, bol vyrobený na systéme Unix PDP-11 a bol súčasťou Unix verzie 2. Vzhľadom na vysoký výkon a prenosnosť sa začal čoraz viac využívať pri implementácii operačných systémov, a preto Linus Torvalds Použil ho pre svoj projekt, keď ešte v roku 1990 hľadal bezplatnú a otvorenú alternatívu k Minixu.

Samozrejme, aj napriek toľkým silným stránkam má Assembler oproti C niektoré výhody, ako sme spomínali na začiatku, takže toto rozhodnutie prekvapilo, ale podľa toho, čo komentuje Andy Lutomirsky v jadrových poštových zoznamoch je vaša práca v poriadku a Linuxové jadro 4.1 bude prvý, kto začlení tento prepisovač zdrojového kódu Assemblera na C. Konkrétne všetko, čo súvisí s východmi do používateľského režimu, ktorý v súčasnosti pozostáva zo zmesi kódu z týchto dvoch programovacích jazykov, ale ktorý je pri aktualizácii vzhľadom na svoju nízku údržbu stále komplikovanejší.

Je to to kód v Assembleri Nebol dlho neaktualizovaný, čo znamená, že noví vývojári nemajú úplne jasno v jeho fungovaní a čo je horšie, nebolo by ľahké ho aktualizovať. Namiesto toho, aby sa pokúsili o čiastočnú zmenu, rozhodli sa začať meniť všetky tieto Assemblerove rutiny na C a osobne si myslím, že aj keď môže dôjsť k strate určitej rýchlosti vykonávania (ktorá môže byť minimálna, ak je kód C new efektívny) nový a jasný kód je vždy vhodnejší ako zastaraný a s takmer nulovými možnosťami aktualizácie pretože nie je dobre pochopené, ako sa realizovalo.


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Za údaje zodpovedá: AB Internet Networks 2008 SL
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.

  1.   Miguel Mayol Tur dijo

    Na prvom mieste je to ENSAMBLADOR, v španielčine.

    Po druhé, všetok jazyk musí byť ZOSTAVENÝ (alebo tlmočený), takže kvalita výsledku závisí od ZLOŽITEĽA (alebo tlmočníka)

    Pretože kompilátor C sa veľmi zlepšil a kompilátor veľmi málo (pretože už bol veľmi dobrý), je rozdiel v kompilovanom programe napísanom v jazyku C v porovnaní s rovnakým programom napísaným v assembleri zanedbateľný alebo vôbec neexistuje (pred ním) nebol).
    Aj rozdiel medzi kompilovanými (C a ostatnými) a interpretovanými (Java a inými) programami bol tiež výrazne minimalizovaný.

    Preto, že je oveľa jednoduchšie udržiavať C ako assembler, je veľmi dobrým rozhodnutím urobiť tieto zmeny v jadre, keď robíte analýzu nákladov a prínosov, slabé stránky, hrozby, silné stránky a príležitosti alebo akékoľvek iné fungujúce.
    na rozhodovanie.

    1.    Chigüire bipolárny dijo

      Miguelovi Mayol Turovi: V prvom rade každý programátor, ktorý sa môže pochváliť tým, že je jedným, hovorí MONTÁŽOR a rozumie anglicky. Ostatní používajú Visual Basic a hovoria si programátori. Aká škoda. A po druhé, zostavovateľ sa NEKOMPILUJE. Programy, ktoré sa tým zaoberajú, konvertujú mnemotechniku ​​priamo na bajty. Programovanie v Assembleri hovorí so strojom v rovnakom jazyku, ale aby to bolo trochu jednoduchšie, namiesto priameho zápisu zodpovedajúcich bajtov sa používajú mnemotechnické pomôcky. Medzi množinou bajtov a inštrukciou v Assembleri existuje vzájomná korešpondencia. Ale to samozrejme vie iba skutočný programátor, jeden z tých, ktorí hovoria ASSEMBLER. V dôsledku toho neexistujú žiadne vylepšenia „prevodníka“ z assembleru na opcodes, pretože toto vylepšenie má na starosti programátor. Kompilátory typu C (a ďalšie jazyky) prekladajú pokyny do vopred stanovených makroprezentácií assemblera (alebo strojového kódu) a vylepšenia sú dané tým, ako sú tieto konverzie.
      Prečo používať C? Pretože je ľahšie skontrolovať a udržiavať niečo, čo je čitateľnejšie. Väčšina ľudí priamo nerozumie kódom a mnemotechnikám assemblerov. Také jednoduché.
      Nebudem sa obťažovať ani rozhovorom o Jave, ktorá síce už bola dávno zavedená ako štandard, ale dnes ju nenávidia tí, ktorí rozumejú kódu.
      Ale never mi, spýtaj sa Google, či to, čo som tu povedal, je nepravdivé.
      pozdravy

      1.    eriugihc dijo

        Ahoj Chigüire, oči mi padajú z tváre v domnení, že nie ste schopní písať v španielčine bez použitia výrazov anglosaského pôvodu: hovorí sa «assembler».
        Samozrejme, v jednej veci s vami súhlasím, radšej o jave nehovorte, pretože ak chcete povedať hlúposti, je lepšie to opustiť. Mal som kamaráta, ktorý bol ako vy, ale stolára (nie odborného programátora) a ten povedal, že najlepšia vec je ručná píla a ďalšie nástroje, nehovoriac o tom, že nimi dokonca utiahol skrutky. Aký príklad nasledovať!

  2.   Luis Gerardo Marín dijo

    Základom všetkých výpočtových výrazov je vždy anglický jazyk. Je to tak, aj keď to my španielsky hovoriaci nechceme. K tomu si pripočítajte, že existujú výrazy, ktoré nemožno preložiť ako „bit“, „bajt“, „unix“, „linux“, „DOS“ a mnoho ďalších. A sú niektoré, ktoré by SA MOHLI preložiť, ale neexistuje nič ako „CMOS“, „CSS“, „RAM“, pretože existujú niektoré iniciály, ktoré nemajú nič spoločné s technológiou a aby toho nebolo dosť, v skutočnosti ani neexistujú Google. Nemá zmysel prekladať, keď je vytvorená správa nečitateľná. Záver: Pre technické alebo výpočtové problémy je vhodnejšie používať odborné výrazy v angličtine. Z rovnakého dôvodu: radšej píšem, že používam „windows“, aby som povedal, že používam operačný systém „windows“. A radšej hovorím o CSS a o tom, že používam text type = »text / css, ako by som chcel povedať, že používam« listy štýlov s typom rovným uhlopriečkam štýlov textu ». Zdravie.

  3.   Roberto Gomez dijo

    Programy napísané v montážnom jazyku sú vždy zostavené, nikdy nie interpretované. Na použití španielčiny namiesto Spanglish však nie je nič zlé. Vlastné mená sa nikdy neprekladajú, ale technické výrazy sú, ak nejde o populárne skratky. Každý môže hovoriť, ako chce, zatiaľ čo my rozumieme.