Kako izvedeti več o jedru Linuxa na svojem računalniku



Preizkusite Naš Instrument Za Odpravo Težav

Učenje dela z GNU / Linux na splošno vključuje učenje dela z namiznim okoljem. Tematska tehnologija tem namiznim okoljem omogoča posnemanje vmesnikov naprav iOS, Microsoft Windows in OS X. To pomaga minimizirati to tako rekoč. Mnogi ljudje gredo dlje in se učijo administriranja ukazne vrstice Unix s pomočjo lupin Bash ali tcsh. Če pa boste seznanjeni z notranjimi deli jedra Linuxa, boste lažje razumeli, kako različni deli opcode medsebojno delujejo.



Nekateri bi trdili, da bi bilo najbolje narediti še nekaj korakov in se poleg tega naučiti, kako prevajalniki pretvorijo kodo C v strojne inštruktorje za mikroprocesor. Zagovorniki kode skupščine bi nato trdili, da je najbolje, da se ASM naučite resnično dojeti programiranje na platformah x86 in x86_64. Ne glede na te položaje lahko osnovni ukazi za Linux nudijo veliko informacij o tem, kako jedro vidi vaš računalnik. Učenje skozi paradigmo pogleda, vendar se ne dotikajte, je odličen način za obvladovanje samega jedra. Čeprav je bil za primere na tej strani uporabljen korenski račun, je zelo priporočljivo, da si imenike, povezane z jedrom, ogledate samo prek uporabniškega računa.



1. način: Imenik / proc

Imenik / proc je v enem od primarnih regij korenskega imenika na najvišji ravni v kateri koli datotečni strukturi Unix. Vsebuje tako imenovani datotečni sistem proc, bolj znan kot procfs, ki vsebuje informacije o načinu dostopa različnih virov do pomnilnika jedra. V času zagona sistema se preslika v / proc. Ker ta struktura proxy datotek služi kot vmesnik za notranjo podatkovno strukturo znotraj jedra Linuxa, je še enkrat najbolje, da to raziščete prek uporabniškega računa. Večino datotek tako ali tako klasificira po strukturi vidne sistemske datoteke kot samo za branje, vendar je najbolje, da ste na varnem.



Kot rečeno, je vsaka od njih besedilna datoteka, zato si jih lahko ogledate, če želite. Z ukazom cd vnesite imenik / proc in nato izdajte ls, da si ogledate, kaj je tam. Za ogled uporabite datoteko cat, manj ali več s katero koli datoteko. Datoteka cpuinfo je dober začetek, saj prikazuje, kako jedro gleda na vaš mikroprocesor. V datoteki stat poglejte, kako se izvajajo procesi.

2016-11-25_020006

Če vtipkate mačje naprave, si boste lahko ogledali, katere stvari so pritrjene na vaš stroj.



2016-11-25_020109

Mimogrede, vedno lahko izdate ukaz man proc za podroben opis odnosa datoteke / proc do jedra. Prikazana stran prihaja iz Priročnika za programerja Linux.

2016-11-25_020156

2. način: Imenik / sys

Naslednja postaja ob ogledu jedra je / sys, to je še en imenik, preslikan v pretvarjano datotečno strukturo. To sledi enakemu splošnemu konceptu Unixa kot / proc, vendar namesto tega aktivno izvaža informacije o povezanih pogonih naprav in številnih podsistemih jedra. Če ste že kdaj delali s sistemom, ki temelji na BSD, boste morda bolj seznanjeni s sysctl, ki zagotavlja te funkcije. Naprave vodila PCI, USB in S / 390 so preslikane v imenik / sys.

Uporabite cd / sys, da se pomaknete do imenika in nato izdate ukaz ls ali dir. Morda imate imenike z naslovom blok, razred, naprave, fs, jedro in morda drugi. Te lahko raziščete za nadaljnje ploščate datoteke, ki vsebujejo informacije o sistemu, vendar še enkrat to storite iz uporabniškega računa in si oglejte, vendar se ne dotikajte miselnosti o sebi.

3. način: Imenik / dev

Z ukazom cd / dev se pomaknite v imenik / dev, ki je morda tista navidezna struktura jedra, ki ste jo že najbolj poznali. Ime pomeni naprave in vsebuje predstavitev datotek naprav, ki so priključene na vaš sistem. Ukaz ls v tem imeniku bo vrnil veliko datotek tudi v najpreprostejši strežniški distribuciji.

2016-11-25_020242

Nekaj ​​teh je zelo posebnih. Datoteka / dev / null je nična naprava, ki ne naredi ničesar. Če vtipkate cat / dev / null, potem od tega ne boste dobili ničesar. Imenuje se bit vedro, izhod pa se lahko preusmeri vanj, da zaslon ostane čist. Datoteka z imenom / dev / zero vsebuje samo nič podatkov, ki jih lahko zapišemo na disk, da jih izničimo. Naključni in naključni datoteki vsebujeta naključne neželene podatke za ustvarjanje varnostnih zgoščenk.

Če ste kdaj formatirali disk, imate verjetno vsaj nekaj izkušenj z načinom, kako jih gleda jedro Linuxa. Vsak disk, pritrjen na sistem, dobi ime, kot so sda, sdb itd., Za vsak disk. Različne vrste diskov dobijo različna imena. Imenik / dev uporablja eno potencialno formalno računalniško definicijo diska namesto načina, ki bi ga običajno uporabljali. To pomeni, da so trdi disk, SSD, SD kartica, kartica microSDHC, nameščeni datotečni sistem pametnega telefona, priključen prek USB-ja, USB-ključki in celo nameščeni tablični računalniki, vsi diski v jedru.

Vsako ime diska v Linuxu nato prejme številko, ki označuje številko particije. Če ste imeli SSD z dvema primarnima particijama, bi lahko imeli / dev / sda1 in / dev / sda2 kot veljavni nosilci. Več kot verjetno, če Linux uporabljate z namizja ali prenosnika s particijo v slogu MBR, imate / dev / sda1 nastavljeno na particijo ext4, na kateri je dejansko nameščen Linux. Več kot verjetno je / dev / sda2 razširjena particija, ki nato vsebuje / dev / sda5 kot swap particijo. Ta shema je pogosta, nikakor pa ni potrebna. Upoštevajte, da ker je swap particija v tem običajnem primeru logični disk znotraj razširjene particije, kot številka prejme 5 namesto 3.

Če želite izvedeti več o tem, kako jedro gleda in formatira particije, si lahko dejansko ogledate podprt seznam particij z ukazom fdisk. Medtem fdisk ne piše particijskih tabel, dokler tega ne naročite, še vedno je najbolje, da to poskusite z nečim, kar vam ni vseeno za nazdravljanje. Priporočljivo je, da ga usmerite na nekaj takega, kot je prazen USB ključek, ki bi ga lahko preprosto preoblikovali.

Recimo, da se vaša palica prikazuje kot / dev / sdc , potem lahko uporabite sudo fdisk / dev / sdc da se naloži. Če je v njej veljavna particija, vnesite t, da spremenite vrsto, in tip L, da naložite šestnajstiški seznam kod. Upoštevajte, da se sheme particij MBR in GUID različno pogovarjata z jedrom in imajo zato različne naloge.

2016-11-25_020331

Pogosteje boste imeli pogone nastavljene na tip 83, to je za pogone Linux, 82, torej za swap particije Linuxa, ali eno od vrst datotek FAT. FAT se v neki ali drugačni obliki sega v leto 1977 in je še vedno najprimernejši za številne vrste mobilnih naprav, pa tudi za številne izmenljive pogone. Upoštevajte, da nekatere vrste particij, na primer tip 0x0c, vsebujejo nekaj, kar se imenuje podpora LBA.

Ko programer oblikuje jedro za operacijski sistem, imajo na različne načine pogled na diske. Ena je razdelitev plošč na valje, glave in sektorje. To je bil klasičen način, kako se najdlje sklicevati na trde diske. Pristna geometrija diska za Linux še nikoli ni bila pomembna in tej shemi žal zmanjka naslovov po približno 8 binarnih gigabajtih. Drugi način je uporaba logičnega naslavljanja C / H / S, ki to stori, nato pa omogoča krmilniku diska, da preslika številke cilindrov, glav in sektorjev, kjer koli želijo. Zato bi lahko operacijski sistem teoretično trdil, da so glave na kartici SD ali USB ključu, kadar je to fizično nemogoče.

Tretja metoda je logično blokovno naslavljanje, kar pomeni LBA. Vsak fizični blok v zvezku prejme številko v tej shemi. Operacijski sistem pove krmilniku diska, naj zapiše v določen oštevilčen blok, vendar dejansko ne ve, ali je to neposredni blok na disku. To je shema, ki se danes najpogosteje uporablja in jo na veliki večini trdih diskov zagotovo uporabljajo od sredine devetdesetih let.

Linux ponuja podporo jedru za namestitev najrazličnejših vrst particij brez neposrednega vnosa, vendar je vseeno najbolje, da ne izbirate preveč nenavadno. Če bi za datotečni sistem izbrali zelo čuden tip particije, bi lahko nazdravili svojim podatkom.

4. metoda: sistemski klici iz Priročnika programerja Linux

Vgrajeni bralci strani z manjšinami, vključeni v večino distribucij Linuxa, vam lahko dejansko omogočijo zgrešitev sistemskih klicev, kar lahko neizmerno pomaga pri učenju o jedru. Zaženite brskalnik z grafičnimi man stranmi xman bodisi s povezave .desktop, če ga imate, bodisi tako, da hkrati držite super tipko in R, nato vtipkate xman in pritisnete enter. Izberite možnost »Ročna stran« in nato v spustnem meniju izberite »Odseki« in na koncu »(2) Sistemski klici«.

2016-11-25_020430

Ko možnost, ki glasi „ uvod ', Izberite to. Potem vas bo pozdravila stran iz Priročnika za programerje Linux, ki vas bo precej naučila o sistemskih klicih.

2016-11-25_020518

6 minut branja