Süsteemikõne on peamine värav programmide ja Linuxi operatsioonisüsteemi tuuma vahel. Ehkki teil on kindlasti vaja kogu C-programmeerimiskarjääri jooksul süsteemikõnet teha, hoolimata sellest, kas soovite erakordset tootlikkust või teatud funktsiooni stiili, piisab valdava enamuse teie jaoks Glibci hoidlast või muudest populaarsetest Linuxi distrodest leitud tavapärastest teekidest nõuded. Selles juhendis loome kontseptsiooni kirjutamissüsteemi kõne kohta C-keeles.
Süntaks:
# kaasatassize_t kirjutamine (int fd, const void * buf, size_t count);
Selles ülaltoodud süntaksis näitab esimene rida süsteemikõnede teeki. Teisel real tähistab fd failikirjeldust, mis on tõepoolest number, mis määrab protsessi avatud faili. Märksõna * buf tähistab puhvrit. See sisaldab selles olevaid andmeid. Järgmine on loendus. See on puhvrist failikirjeldisse kirjutatavate baitide arv.
Eeltingimuste installimine:
Mis tahes C-keele koodi käitamiseks peate kõigepealt installima mõned paketid Linuxi levitamisse. Kui soovite lisateavet kirjutamissüsteemi kõne kohta, peate selleks installima paketi manpages-dev. Terminali avamiseks kiirklahvide Ctrl + Alt + T abil. Pärast selle avamist kirjutage allolev käsk apt install, millele järgneb manpages-dev märksõna manpages installimiseks.
$ sudo apt install manpages-dev
Manuaalide installimine võtab aega. Oodake, kuni see lõpule jõuab.
Pärast installimist näete lisateavet süsteemi kirjutamise kõne kohta shellis oleva all oleva käsu man kaudu.
$ mees 2 kirjuta
Käsu “write” väljundkäsuleht on toodud allpool. Selle kohta saate teavet lugeda. Käsiraamatust väljumiseks vajutage q.
Nüüd on aeg installida Linuxi süsteemi pakett “Gcc”, et see töötaks C-keeles. Selleks avage kest ja kirjutage allpool käsk apt install, millele järgneb märksõna “gcc”.
$ sudo apt install gcc
Vahepeal võib installimise ajal paluda teil selle installimist kinnitada, vajutades jätkamiseks nuppu "y" ja selle peatamiseks nuppu "n". Puudutage klahvi "y" ja vajutage sisestusklahvi.
See installitakse teie süsteemi mõne minuti jooksul ja väljundi viimased read kuvatakse allolevas hetktõmmis.
Näited:
Olgem mõned näited süsteemikõne kirjutamise kohta meie Linuxi jaotuses. Seepärast avage käsurea kest ja looge selles uus C-fail laiendiga "c". Selle kiireks loomiseks ja avamiseks peate kasutama allolevat nano-käsku. Oleme andnud sellele nime "uus.c ”.
$ nano uus.c
Allpool olev aken avatakse. Nüüd peate sellesse faili kirjutama manustatud koodi. Selles koodis oleme lisanud unistd.h raamatukogu kõigepealt. Seejärel oleme loonud põhifunktsiooni ja selle funktsiooni raames oleme loonud süsteemikõne. Selles süsteemikõnes on kõige esimene parameeter failide kirjeldaja. Sel juhul tähistab täisarv 1 väljundseadme ekraani ja see on fikseeritud. Nii et meie väljund kuvatakse ekraanil. Teine parameeter näitab puhvri andmeid. Sellele saate lisada mida iganes. Ja viimane parameeter näitab puhvri parameetris antud andmete loendinumbrit. Kuna oleme loendinumbrina maininud 5, kuvatakse see ainult puhvri andmete esimesed 5 baiti ja ignoreeritakse allesjäänud baite. Salvestage see kood kiirklahviga Ctrl + S ja väljuge sellest failist käsuga Ctrl + X.
# kaasataKeskmine ()
Kirjutage (1, "Aqsa Yasin", 5);
Nüüd proovige terminalis selle värskelt loodud koodi failinimega kompileerimiseks allolevat käsku gcc.
$ gcc uus.c
Kontrollime seda koodi, kasutades vaikimisi a.välja käivitamise ajal loodud fail. Niisiis, proovige allpool a.käsk out kirjutuskõne väljundi kontrollimiseks. Me peame seda kasutama koos./ ”, Et valida fail praegusest kataloogist.
$ ./ a.väljaNähtavas väljundis on loendinumbri 5 tõttu kuvatud ainult sõna „Aqsa”.
Muudame natuke oma koodi. Oleme loenduse arvu muutnud 11-ks, kuna meie puhverandmetes „Aqsa Yasin“ on kokku 11 baiti. Nii et seekord kuvatakse väljundis stringiandmete „Aqsa Yasin” kogu baiti. Salvestage see fail, kasutades klahvikombinatsiooni Ctrl + S ja sulgege kiirklahviga Ctrl + X.
Koostame värskendatud koodi, kasutades värskelt installitud gcc kompilaatorit Linuxi levitamiseks. Proovige sama käsk gcc koos faili nimega "uus".c ”.
$ gcc uus.c
Nüüd kuvage sama koodi väljund, kasutades eelmist a.välja ”käsk nagu allpool. Väljund näitab puhvri täielikku stringi “Aqsa Yasin”.
$ ./ a.välja
Vaatame, kuidas kood töötab, kui võtame loendinumbri, mis on suurem kui puhverandmete baitide koguarv. Niisiis, oleme loendit kasutanud 30-na. Salvestage ja sulgege fail.
Kompileerige sama värskendatud fail käsu gcc abil, nagu allpool.
$ gcc uus.c
Nüüd käivitage fail a abil.välja käsk ja väljund näitab puhvri andmeid ning ka mõnda prügiväärtust, mis on näidatud allpool olevas hetktõmmise väljundis.$ ./ a.välja
Samuti saate kontrollida faili kirjutatud baitide koguarvu, kasutades samas failis olevat allolevat koodi.
Koostage kood gcc-käsu abil.
$ gcc uus.c
Väljund näitab baitide koguarvu, sealhulgas puhvri andmed ja rea katkemine, kasutades a.välja käsk.
$ ./ a.välja
Järeldus:
Selles õpetuses oleme välja töötanud kontseptsiooni, et kasutada süsteemis kõnet "Write". Proovige kõiki näiteid, et mõista selle artikli abil süsteemikõne ideed.