Paano Matuto Nang Higit Pa Tungkol sa Linux Kernel mula sa Iyong Sariling Makina



Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema

Ang pag-aaral na gumana sa GNU / Linux sa pangkalahatan ay nagsasaad ng pag-aaral na gumana sa isang kapaligiran sa desktop. Pinapayagan ng teknolohiya ng tema ang mga kapaligiran sa desktop na gayahin ang mga interface ng mga iOS, Microsoft Windows at OS X device. Nakakatulong ito upang mai-minimize ito tulad ng dati. Maraming mga tao ang lumalayo at natututo ng Unix na pamamahala ng linya ng utos gamit ang mga Bash o tcsh shell. Gayunpaman, ang pagiging may kaalaman sa panloob ng Linux kernel ay maaaring makatulong sa iyo upang mas mahusay na maunawaan kung paano nakikipag-ugnay sa iba't ibang mga piraso ng opcode sa bawat isa.



Ang ilang mga tao ay magtaltalan na mas makabubuting pumunta sa maraming mga hakbang at karagdagan matutunan kung paano maililipat ng mga tagatala ang C code sa mga instruktor ng makina para sa isang microprocessor. Pagkatapos ay magtatalo ang mga tagapagtaguyod ng code ng code na pinakamahusay na malaman ang ASM upang tunay na maunawaan ang programa sa mga platform ng x86 at x86_64. Hindi alintana ang mga posisyon na ito, ang pangunahing mga utos ng Linux ay maaaring magbigay ng isang kayamanan ng impormasyon sa kung paano nakikita ng kernel ang iyong computer. Ang pag-aaral sa pamamagitan ng isang hitsura ngunit huwag hawakan ang paradaym ay isang mahusay na paraan upang makabisado ang kernel mismo. Habang ginamit ang root account para sa mga halimbawa sa pahinang ito, lubos na inirerekumenda na tingnan mo lang ang mga direktoryo na naka-link ng kernel sa pamamagitan ng isang account ng gumagamit.



Paraan 1: Ang Direktoryo ng / proc

Ang direktoryo / proc ay nakaupo sa isa sa mga pangunahing rehiyon ng tuktok na antas ng direktoryo ng ugat sa anumang istraktura ng file ng Unix. Naglalaman ito ng tinatawag na system ng file ng proc, na mas kilala bilang mga procf na naglalaman ng impormasyon tungkol sa paraan ng pag-access ng iba't ibang mga mapagkukunan sa memorya ng kernel. Na-map ito sa / proc sa oras na bota ang system. Dahil ang istraktura ng proxy file na ito ay nagsisilbing isang interface sa panloob na istraktura ng data sa loob ng Linux kernel, muli itong pinakamahusay na tuklasin lamang ito sa pamamagitan ng isang account ng gumagamit. Karamihan sa mga file ay naiuri sa pamamagitan ng nakikitang istraktura ng file ng system bilang read-only pa rin, ngunit mas mahusay na nasa ligtas na bahagi.



Sinabi na, ang bawat isa sa mga ito ay isang file ng teksto, upang maaari mo itong tingnan kung nais mo. Gamitin ang utos ng cd upang ipasok ang direktoryo / proc, at pagkatapos ay mag-isyu ng ls upang tingnan kung ano ang naroroon. Gamitin ang pusa, mas kaunti o higit pang utos sa alinman sa mga file upang tingnan ang mga ito. Ang cpuinfo file ay isang magandang lugar upang magsimula, dahil ipinapakita nito kung paano tinitingnan ng kernel ang iyong microprocessor. Tumingin sa stat file para sa isang pagtingin sa pagpapatakbo ng mga proseso.

2016-11-25_020006

Ang pagta-type ng mga aparato ng pusa ay magbibigay sa iyo ng isang pagtingin sa kung anong mga bagay ang nakakabit sa iyong machine.



2016-11-25_020109

Sa pamamagitan ng paraan, maaari mong palaging mag-isyu ng command man proc para sa isang rundown kung paano nauugnay ang istraktura ng / proc file sa kernel. Ang hinatid na pahina ay nagmula sa Manual ng Programmer ng Linux.

2016-11-25_020156

Paraan 2: Ang Direktoryo ng / sys

Ang iyong susunod na paghinto sa paglilibot sa iyong kernel ay / sys, na isa pang direktoryo na nai-map sa isang pagpapanggap na istraktura ng file. Sinusundan nito ang parehong pangkalahatang konsepto ng Unix tulad ng ginagawa ng / proc, ngunit sa halip ay aktibong ini-export ang impormasyon tungkol sa mga nauugnay na drive ng aparato at isang bilang ng mga subsystem ng kernel. Kung nakatrabaho mo na ang isang sistema na nakabatay sa BSD, maaaring mas pamilyar ka sa sysctl na nagbibigay ng mga pagpapaandar na ito. Ang mga aparato ng PCI, USB at S / 390 bus ay naka-map sa lahat ng direktoryo / sys.

Gumamit ng cd / sys upang magtungo sa direktoryo at pagkatapos ay mag-isyu ng ls o dir command. Maaari kang magkaroon ng mga direktoryo na may karapatan na block, klase, aparato, fs, kernel at baka iba pa. Maaari mong tuklasin ang mga ito para sa karagdagang mga flat file na naglalaman ng impormasyon tungkol sa system, ngunit sa sandaling muli ay gawin ito mula sa isang account ng gumagamit at panatilihin ang isang pagtingin ngunit huwag hawakan ang kaisipan tungkol sa iyong sarili.

Paraan 3: Ang Direktoryo ng / dev

Gamitin ang utos ng cd / dev upang magtungo sa direktoryo ng / dev, na maaaring ang isang kernel na virtual na istraktura na ikaw ang pinaka pamilyar na. Ang ibig sabihin ng pangalan ay mga aparato, at naglalaman ng representasyon ng file ng mga aparato na nakakabit sa iyong system. Ang isang utos ng ls sa direktoryong ito ay magbabalik ng maraming mga file kahit sa pinakasimpleng pamamahagi ng server.

2016-11-25_020242

Ilan sa mga ito ay napaka-espesyal. Ang / dev / null file ay isang null na aparato na walang ginagawa. Kung nagta-type ka ng pusa / dev / null, wala kang makukuha rito. Tinawag itong bit bucket, at ang output ay maaaring mai-redirect dito upang mapanatiling malinis ang screen. Ang isang file na tinawag / dev / zero ay naglalaman ng walang anuman kundi zero data, na maaaring maisulat sa isang disk upang ma-zero ito. Ang mga random at urandom na file ay naglalaman ng random na data ng basura para sa paglikha ng mga security hash.

Kung na-format mo na ba ang isang disk, malamang na mayroon kang hindi bababa sa ilang karanasan sa paraan ng pagtingin sa kanila ng Linux kernel. Ang bawat disk na nakakabit sa system ay nakakakuha ng isang pangalan tulad ng sda, sdb at iba pa para sa bawat disk. Ang iba't ibang mga uri ng disk ay nakakakuha ng iba't ibang mga pangalan. Tandaan na ang direktoryo / dev ay gumagamit ng isang potensyal na pormal na kahulugan ng computer science ng disk kaysa sa paraan na karaniwang ginagamit namin ang term na iyon. Nangangahulugan ito ng isang hard drive, isang SSD, isang SD Card, isang microSDHC card, isang naka-mount na filesystem ng smartphone na nakakabit sa pamamagitan ng USB, mga USB stick at kahit na naka-mount na mga tablet ay pawang mga disk sa kernel.

Ang bawat pangalan ng disk sa Linux pagkatapos ay tumatanggap ng isang numero pagkatapos na ito ay nagpapahiwatig ng isang numero ng pagkahati. Kung mayroon kang isang SSD na may dalawang pangunahing mga pagkahati, pagkatapos ay maaaring mayroon kang / dev / sda1 at / dev / sda2 bilang wastong dami. Higit sa posibilidad kung nagpapatakbo ka ng Linux mula sa isang desktop o laptop na may pagkahati na istilo ng MBR, pagkatapos ay mayroon kang / dev / sda1 na nakatakda sa ext4 na pagkahati na aktwal na na-install ang Linux dito. Higit sa malamang / dev / sda2 ay isang pinahabang pagkahati na naglalaman ng / dev / sda5 bilang isang swap na pagkahati. Ang pamamaraan na ito ay karaniwan, ngunit hindi kinakailangan. Tandaan na dahil ang partisyon ng pagpapalit sa karaniwang halimbawa na ito ay isang lohikal na disk sa loob ng isang pinalawak na pagkahati, tumatanggap ito ng 5 sa halip na 3 bilang bilang nito.

Kung nais mong matuto nang higit pa tungkol sa paraan ng pagtingin ng kernel at pag-format ng mga pagkahati, pagkatapos ay maaari mo talagang tingnan ang isang suportadong listahan ng pagkahati sa utos ng fdisk. Habang kwarta ay hindi nagsusulat ng mga talahanayan ng pagkahati hanggang sa sabihin mo ito, pinakamahusay pa ring subukan ito sa isang bagay na wala kang pakialam sa pag-toasting. Inirerekumenda na ituro ito sa isang bagay tulad ng isang blangkong USB stick na maaari mong madaling i-reformat.

Sabihin nating ang iyong stick ay lumalabas bilang / dev / sdc , pagkatapos ay maaari mong gamitin sudo fdisk / dev / sdc upang mai-load ito. Kung mayroon kang isang wastong pagkahati dito, pagkatapos ay i-type ang t upang baguhin ang uri at ang uri ng L upang mai-load ang isang hex code list. Tandaan na ang mga iskema ng paghati ng MBR at GUID ay nakikipag-usap sa kernel nang magkakaiba, at samakatuwid ay may iba't ibang mga takdang-aralin.

2016-11-25_020331

Mas madalas na mayroon kang mga drive na nakatakda sa pag-type ng 83, na para sa mga Linux drive, 82, na para sa mga Linux swap partition, o isa sa mga uri ng file ng FAT. Ang FAT ay nagmula sa ilang anyo o iba pa noong 1977, at ginugusto pa rin para sa maraming uri ng mga mobile device pati na rin maraming mga naaalis na drive. Tandaan na ang ilang mga uri ng pagkahati, tulad ng uri na 0x0c, ay nagtatampok ng isang bagay na tinatawag na suporta ng LBA.

Kapag ang isang programmer ay nagdidisenyo ng isang kernel para sa isang operating system, mayroon silang ilang iba't ibang paraan na maaari silang tumingin sa mga disk. Ang isa ay upang hatiin ang mga platter sa mga silindro, ulo at sektor. Ito ang klasikong paraan upang mag-refer sa mga hard drive para sa pinakamahabang oras. Ang tunay na geometry ng disk ay hindi kailanman naging mahalaga sa Linux, at ang pamamaraan na ito sa kasamaang palad ay nauubusan ng mga address pagkatapos ng humigit-kumulang na 8 binary Gigabytes. Ang pangalawang paraan ay ang paggamit ng Logical C / H / S addressing, na ginagawa ito, ngunit pagkatapos ay pinapayagan ang disk controller na i-map ang mga silindro, ulo at sektor ng mga numero saan man nila gusto. Ito ang dahilan kung bakit ang isang operating system ay maaaring maiangkin na may teoretikal na mayroong mga ulo sa isang SD card o isang USB stick kung imposible itong pisikal.

Ang pangatlong pamamaraan ay sa pamamagitan ng Logical Block Addressing, na kung saan ang ibig sabihin ng LBA. Ang bawat pisikal na bloke sa isang dami ay tumatanggap ng isang numero sa scheme na ito. Sinasabi ng operating system sa disk controller na sumulat sa isang tiyak na block na may bilang, ngunit hindi talaga alam kung iyon ang direktang bloke sa disk. Ito ang pamamaraan na pinaka ginagamit ngayon, at tiyak na ginamit ito sa karamihan ng mga hard disk mula pa noong kalagitnaan ng dekada 1990.

Nag-aalok ang Linux ng suporta sa kernel upang mai-mount ang isang iba't ibang mga uri ng pagkahati nang walang direktang pag-input, ngunit mas mabuti pa rin na huwag maging masyadong malayo kapag pipiliin ang mga ito. Maaari mong i-toast ang iyong data kung gumawa ka ng isang kakaibang uri ng pagkahati sa file na pagpipilian ng pagtutugma ng system.

Paraan 4: Mga Tawag ng System mula sa Manwal ng Programmer ng Linux

Ang mga mambabasa ng pahina ng onboard na tao na kasama ng isang karamihan ng mga pamamahagi ng Linux ay maaaring magbigay sa iyo ng isang kurso sa pag-crash sa mga tawag sa system, na makakatulong nang labis sa pag-alam tungkol sa kernel. Simulan ang browser ng xman graphic na mga pahina alinman mula sa isang .desktop na link kung mayroon kang isa, o kahalili sa pamamagitan ng pagpindot sa sobrang susi at R nang sabay-sabay pagkatapos ay pagta-type ng xman at pagtulak ipasok. Piliin ang opsyong 'Manu-manong Pahina' at pagkatapos ay piliin ang 'Mga Seksyon' at sa wakas ay '(2) Mga Tawag sa System' mula sa drop-down na menu.

2016-11-25_020430

Kapag isang pagpipilian na nagbabasa ng ' intro ”Ay lilitaw, piliin iyon. Ang isang pahina mula sa Manu-manong Programmer ng Linux na magtuturo sa iyo ng kaunti tungkol sa mga tawag sa system ay sasalubungin ka.

2016-11-25_020518

6 minuto basahin